答案 0 :(得分:0)
我不确定您是否真的不能达到100%(比您更棘手的情况,这几乎是不可能解决的),但是在那种情况下,您必须简单地调用main
少于3个参数:
IglooScore.main(new String[0]);
这等效于调用java -jar blabla.jar IglooScore.main
IglooScore.main(null);
当JRE启动程序时,第二个永远不会出现,但是如果以编程方式(例如从测试中)调用main
,则可能会发生这种情况。
请注意,您的情况很简单:
if (args.length != 3)
如果为红色,则意味着您必须检查条件:
args
与args.length == 3
匹配的args
(已发现)args.length == 3
not 匹配if (args == null || args.length != 3)
(未涵盖)的您可能还会遇到这种情况:
args
这意味着您必须:
null
的{{1}} args
不为空且匹配的args.length == 3
args
不为null和 not 匹配args.length == 3
在更坏的情况下,可能有助于将表达式拆分成几行以显示未覆盖的行,例如:
if (args == null ||
args.length != 3)
答案 1 :(得分:0)
仅当您使用小于或大于main()
的参数调用3
时,将情况添加到测试类中:
String [] testInput = new String[2];
testInput[0] = "invalidInput"; // don't worry this wouldn't reach the point to throw ParseException
testInput[1] = "invalidInputAgain";
new IglooScore1().main(testInput); // line of code to test