我的代码有效,TestNG 有效,我得到了预期的结果,但是这个错误出现在 TestNG 结果的末尾:
Error screenshot
错误代码:
java.lang.AssertionError: Couldn't find resource: jquery.min.js
at org.testng.reporters.jq.Main.generateReport(Main.java:92)
at org.testng.TestNG.generateReports(TestNG.java:1093)
at org.testng.TestNG.run(TestNG.java:1036)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:115)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
我试图通过从我的项目中删除断言来解决这个问题,甚至导入包,但仍然出现错误......这是我的脚本代码:
package myWork;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.testng.Assert;
import org.testng.annotations.Test;
public class Demo {
@Test
public void regular() {
// TODO Auto-generated method stub
ArrayList<String> names = new ArrayList();
names.add("APrvi");
names.add("Drugi");
names.add("ATreci");
names.add("Cetvrti");
names.add("Apeti");
Long res = names.stream().filter(s->s.startsWith("A")).count();
System.out.println(res);
names.stream().filter(s->s.length()>5).forEach(s->System.out.println(s));
names.stream().filter(s->s.length()>5).limit(1).forEach(s->System.out.println(s));
}
@Test
public void StreamMap() {
Stream.of("APrvitest1", "DrugiA", "ATrecitest", "ACetr", "EtcA").
filter(s->s.endsWith("A")).
map(s->s.toUpperCase()).
forEach(s->System.out.println(s));
ArrayList<String> names = new ArrayList();
names.add("PrvaLista");
names.add("DrugaLista");
names.add("ATrecaLista");
names.add("ACetr");
names.add("ApetaLista");
List<String> names1 = Arrays.asList("AzPrvitest1", "DrugiA", "ATrecitest", "ACetr", "EtcA");
names.stream().filter(s->s.startsWith("A")).sorted().map(s->s.toUpperCase()).forEach(s->System.out.println(s));
Stream<String> newStream = Stream.concat(names.stream(), names1.stream());
//Merge two lists
//newStream.sorted().forEach(s->System.out.println(s));
boolean flag = newStream.anyMatch(s->s.equalsIgnoreCase("ApetaLista"));
Assert.assertTrue(flag);
}
@Test
public void StreamCollect() {
List<String> ls = Stream.of("APrvitest1", "DrugiA", "ATrecitest", "ACetr", "EtcA").
filter(s->s.endsWith("A")).
map(s->s.toUpperCase()).collect(Collectors.toList());
System.out.println(ls.get(0));
List<Integer> values = Arrays.asList(3, 2, 2, 7, 5, 1, 9, 7);
//print unique number from this array
//sort the array
values.stream().distinct().forEach(s->System.out.println(s));
List<Integer> li = values.stream().distinct().sorted().collect(Collectors.toList());
System.out.println("3rd number is: " + li.get(2));
}
}
这是结果的输出: [RemoteTestNG] detected TestNG version 7.4.0
DRUGIA
3
2
7
5
1
9
3rd number is: 3
DRUGIA
ETCA
ACETR
ATRECALISTA
APETALISTA
3
ATreci
Cetvrti
ATreci
PASSED: regular
PASSED: StreamCollect
PASSED: StreamMap
===============================================
Default test
Tests run: 3, Failures: 0, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 3, Passes: 3, Failures: 0, Skips: 0
===============================================
java.lang.AssertionError: Couldn't find resource: jquery.min.js
at org.testng.reporters.jq.Main.generateReport(Main.java:92)
at org.testng.TestNG.generateReports(TestNG.java:1093)
at org.testng.TestNG.run(TestNG.java:1036)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:115)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)
最佳答案
截至 TestNG 7.4.0
下面的资源加载即,
jquery.js
jquery.min.*
在我们修复时进行了精简 https://github.com/cbeust/testng/issues/2406
请检查您的 CLASSPATH 并确保您至少有 https://mvnrepository.com/artifact/org.webjars/jquery/3.5.1
该错误基本上表明您的类路径困惑,因为 TestNG 无法加载
jquery.js
通过 web jars 依赖。
关于java - Eclipse TestNG java.lang.AssertionError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66971279/