Java Evosuite无法生成带有断言的测试
我将maven插件用于此调用:Java Evosuite无法生成带有断言的测试,java,evosuite,Java,Evosuite,我将maven插件用于此调用: mvn evosuite:clean evosuite:generate -Dcuts=MyStuff evosuite:prepare evosuite:export 在这门课上: public class MyStuff { public static List<String> doStuff(List<String> names) { return names .stream() .ma
mvn evosuite:clean evosuite:generate -Dcuts=MyStuff evosuite:prepare evosuite:export
在这门课上:
public class MyStuff {
public static List<String> doStuff(List<String> names) {
return names
.stream()
.map(ProviderSpecificMethods::mapStuff)
.collect(Collectors.toList());
}
private static String mapStuff(String name) {
switch (name) {
case "FOO":
return "BAR";
case "BAR":
return "BAZ";
default:
return name;
}
}
}
公共类MyStuff{
公共静态列表doStuff(列表名称){
返回名称
.stream()
.map(ProviderSpecificMethods::mapStuff)
.collect(Collectors.toList());
}
私有静态字符串mapStuff(字符串名称){
交换机(名称){
案例“FOO”:
返回“BAR”;
案例“酒吧”:
返回“BAZ”;
违约:
返回名称;
}
}
}
这只会产生如下测试:
public void test0() throws Throwable {
// Undeclared exception!
try {
MyStuff.doStuff((List<String>) null);
fail("Expecting exception: NullPointerException");
} catch(NullPointerException e) {
//
// no message in exception (getMessage() returned null)
//
verifyException("MyStuff", e);
}
}
@Test(timeout = 4000)
public void test1() throws Throwable {
MyStuff myStuff0 = new MyStuff();
}
public void test0()抛出可丢弃的{
//未声明的异常!
试试{
MyStuff.doStuff((List)null);
失败(“预期异常:NullPointerException”);
}捕获(NullPointerException e){
//
//异常中没有消息(getMessage()返回null)
//
验证例外(“MyStuff”,e);
}
}
@测试(超时=4000)
public void test1()抛出可丢弃的{
MyStuff myStuff0=新的MyStuff();
}
我做错了什么?即使是带有bean注入等更复杂的类,也会显示出复杂的模拟设置行,但在生成任何断言之前,它们只是简单地中断。我也尝试过调整覆盖率或断言策略,但结果仍然是一样的