编写 JMX MBean JUnit 测试

JMX JUnit 测试是完整的 JUnit 测试,它可以处理 JMX MBean 部署任务,以使开发者将工作重点放在测试 MBean 属性和操作上。

您必须执行以下五个步骤来实现 MBean 单元测试:

1) 生成 MBean JUnit 测试

可以使用以下方法生成 JMX JUnit 测试:

选择 MBean 构造函数

要测试的 MBean 可以包含多个构造函数。使用 JMX MBean JUnit 测试向导或“创建 JUnit 测试...”操作生成 JUnit 测试时,系统会要求您从 MBean 构造函数列表中选择一个构造函数。
如果使用 JMX MBean 向导生成 JUnit 测试,则会使用生成的 MBean 缺省构造函数。

2) 在生成的 JUnit 测试中更新 MBean 构造

如果在构造要测试的 MBean 时需要某些参数,则可以使用 createMBean 方法提供这些参数。
转至 createMBean 方法并更新 MBean 构造函数调用。如果 MBean 构造函数为空,则不需要执行此操作。

在以下示例中,MBean 类 MYClass 应为 Object 参数。

public Object createMBean() {
    //TODO update MYClass(Object o) constructor parameters with valid values.
    return new MYClass(null);
 }

3) 将测试逻辑添加到 MBean 属性测试中

对于每个属性(如果有),都将生成测试用例。测试用例包含用于获取该属性的调用。
在获取该属性后,将生成对 fail 的调用。必须将对 fail 方法的调用替换为测试逻辑
以下代码示例用于测试 Toto 属性

/**
* Test of Toto Attribute
*/
public void testTotoAttribute() throws Exception {
    System.out.println("testTotoAttribute");
   
     // Get JMX MBean Attribute.
     Boolean val = (Boolean) getAttribute("Toto");
       
    // TODO add your test code below by replacing the default call to fail.
    fail("The test case is empty.");
}

4) 将测试逻辑添加到 MBean 操作测试中

对于每个操作(如果存在),都将生成测试用例。测试用例包含:

以下是 addAll(Integer, java.util.Collection) 操作的测试代码示例:
/**
* Test of addAll Operation
*/
public void testAddAllOperation() throws Exception {
    System.out.println("testaddAllOperation");

    // Operation signature.
    String[] signature = new String[] {
        java.lang.Integer.TYPE.getName(),
        java.util.Collection.class.getName()
    };
       
    // TODO update with your operation values.
    Object[] params = new Object[] {
        0,
        null
    };
       
    // Invoke JMX MBean Operation.
    Boolean val = (Boolean)invoke("addAll",params,signature);
       
    // TODO add your test code below by replacing the default call to fail.
    fail("The test case is empty.");
}

5) 运行 JUnit 测试

就像任何其他 JUnit 测试一样,选择 MBean 测试文件,单击鼠标右键,然后选择“运行文件”操作。


法律声明