Junit测试字符串方法的总和

时间:2015-10-17 22:42:05

标签: java unit-testing junit

任何人都可以在java中为这个函数给我两个失败测试用例 具有指定的输入和预期结果?

public int sumOfString(String numbers){    
  if(numbers == null) throw new IllegalArgumentException(); 
  String[] parts = numbers.split(",");
  int sum = 0; 
  for (String string : parts)
  {
    sum += Integer.parseInt(string); 
  } 
  return sum; 
}

这是我尝试过的事情

public void testSumOfString() {
    String numbers = "13,4,,5";
    Engine instance = new Engine();
    int expResult = 22;
    int result = instance.sumOfString(numbers);
    assertEquals(expResult, result);
}
public void testSumOfString2() {
    String numbers = "13,A,5";
    Engine instance = new Engine();
    int expResult = 13 + 65 + 5;
    int result = instance.sumOfString(numbers);
    assertEquals(expResult, result);
}

1 个答案:

答案 0 :(得分:1)

您可以创建包含代码的对象,也可以将类静态用于测试目的。

  //Update your code with the following 
if(str == null || str.isEmpty()) throw new IllegalArgumentException();

您应该更新代码以确保方法接收的字符串完全由整数值组成。一个好的开始是使用以下行更新您的代码

{{1}}