У меня есть фрагмент кода следующим образомПокрытие кода для блока, который имеет броски
public void setTarget(String target) throws TargetException{
if(target = null){
throw new TargetException();
}
this.target = target;
}
public void getTarget(){
return this.target;
}
Я модульного тестирования выше сниппет
@Test(expected = TargetException.class)
public void testTargetSetting() throws TargetException{
//For coverage of code in if loop
String target = null;
MyBean.setTarget(target);
//For coverage of code in else loop
target="abc";
MyBean.setTarget(target);
}
Теперь проблема с выше кода является покрытие кода для класса быть протестированным, показывает 100%, что является методом setTarget. Это происходит как в блоках if, так и else. Но охват метода тестового класса, т.е. testTargetSetting, не распространяется. Он всегда отображается красным цветом.
Я использую Эмма для покрытия кода. Любая идея, как покрытие кода как для метода класса класса, так и для метода тестового класса может быть удовлетворено.
Примечание: приведенный выше код предназначен только для иллюстрации.
Большое спасибо. В этом есть смысл –