面向对象编程的问题

时间:2011-02-01 09:14:13

标签: java testcase

喜   我是java的新手。   我必须在java中为这个方法编写测试用例,

public class ABC{
public void updateUser(String emailId, HashMap hm) {
        String updateKey = createUniqueUserKey(emailId);
        int noOfColumn = (UserColumnFamily.getColumnNames()).size();
        Set set = hm.entrySet();
        Iterator itr = set.iterator();

2 个答案:

答案 0 :(得分:1)

我假设你想使用单元测试框架?在这种情况下,我推荐JUnit - 这是一个非常简单的教程:

JUnit Tutorial

assert()方法只是检查一个值是否是您期望的值(或不是)。因此,测试用例中的大多数值只对您/您的使用有意义。

答案 1 :(得分:1)

首先,我会查找generics。这将使您能够避免所有动态类型(即您的转换为String和Map.Entry)。

其次,我建议使用JUnit等测试框架。这为您提供了Assert课程,允许您拨打电话,如

@Test
public void myTestMethod {
  // Some operation
  Assert.assertEquals("This is printed if the assertion fails", 
                      expectedValue, testedValue);
}

但是如果您不能使用JUnit,那么使用-ea标志启用Java断言并执行以下操作:

public void myTestMethod {
  // Some operation
  assert expectedValue == testedValue : "This is printed if the assertion fails";
}