我正在运行我的selenium项目模块,它不是主项目的一部分, 我使用Jacoco maven插件和surefire插件运行selenium测试, Jacoco只给出了selenium项目的代码覆盖率(exec文件)而不是整个项目... 我如何配置我的Jacoco和Surefire以获得外部/整个项目的覆盖范围?
答案 0 :(得分:0)
我不确定我是否正确理解您的问题...但如果我理解正确,您希望在生产代码上看到Selenium测试的代码覆盖率?
这根本不可能! Selenium可以帮助您测试Web应用程序。您的代码未使用Selenium进行测试,而只是使用应用程序流程生成的网页。
答案 1 :(得分:0)
您无法测量硒测试的代码覆盖率是不正确的。 看看JaCoCo作为一种工具:https://www.eclemma.org/jacoco/ 它可以测量以下内容的代码覆盖率:单元,集成,GUI测试,并将其合并到一个汇总报告中。
答案 2 :(得分:0)
您需要在正在运行的要测试的项目中配置一个jacoco Java代理(tcpserver)和一个jacococlient(jacococli.jar)来监听结果。
示例:
java -javaagent:path/to/your/jacocoagent.jar=address=*,port=36320,destfile=jacoco-it.exec,output=tcpserver -jar target/yourApplication.jar
运行端到端集成测试。
转储结果:
java -jar path/to/your/jacococli.jar dump --address localhost --port 36320 --destfile target/jacoco-it.exec
sleep 5
java -jar path/to/your/jacococli.jar report target/jacoco-it.exec --classfiles target/classes --sourcefiles src/main/java/ --html target/jacoco-report