提问人:NotInCheck 提问时间:7/5/2023 最后编辑:NotInCheck 更新时间:7/5/2023 访问量:53
Pitest 在 <targetTests> 参数上找不到我的 JUNIT 测试
Pitest is not finding my JUNIT tests on <targetTests> param
问:
我引入了 Pitest 作为我们开发计划中的一个阶段,但在其中一个项目中它不起作用并生成此信息消息:
跳过项目,因为: [INFO] - 项目没有测试,它是空的。
通过研究,我们发现可能与项目结构有关:https://github.com/hcoles/pitest/issues/361
带有 Pitest 的 POM:
<plugin>
<groupId>org.pitest</groupId>
<artifactId>pitest-maven</artifactId>
<version>1.14.2</version>
<configuration>
<outputFormats>
<outputFormat>XML</outputFormat>
<outputFormat>HTML</outputFormat>
</outputFormats>
<targetClasses>
<!-- Update with your target classes/packages for mutation testing -->
<param>br.com.company.project.operations</param>
</targetClasses>
<targetTests>
<!-- Update with your test classes/packages -->
<param>br.com.company.project.junit.tests</param>
</targetTests>
<exportLineCoverage>true</exportLineCoverage>
<!--We want each report to override the former one-->
<timestampedReports>false</timestampedReports>
</configuration>
<executions>
<execution>
<id>pitest-mutation-testing</id>
<phase>install</phase>
<goals>
<goal>mutationCoverage</goal>
</goals>
</execution>
</executions>
</plugin>
<reporting>
<plugins>
<plugin>
<groupId>org.pitest</groupId>
<artifactId>pitest-maven</artifactId>
<version>1.14.2</version>
<reportSets>
<reportSet>
<reports>
<report>report</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
<dependency>
<groupId>org.pitest</groupId>
<artifactId>pitest-junit5-plugin</artifactId>
<version>0.14</version>
</dependency>
项目结构
├───CompanyProjectSaaS_Commons
│ ├───.settings
│ ├───module
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───commons
│ │ ├───pojo
│ │ └───utils
│ └───target
│ ├───classes
│ │ ├───br
│ │ │ └───com
│ │ │ └───company
│ │ │ └───project
│ │ │ └───commons
│ │ │ ├───pojo
│ │ │ └───utils
│ │ └───test
│ │ └───java
│ ├───generated-sources
│ │ └───annotations
│ ├───generated-test-sources
│ │ └───test-annotations
│ ├───maven-archiver
│ ├───maven-status
│ │ └───maven-compiler-plugin
│ │ ├───compile
│ │ │ └───default-compile
│ │ └───testCompile
│ │ └───default-testCompile
│ ├───pit-reports
│ │ ├───202307041032
│ │ │ ├───br.com.company.project.commons.utils
│ │ │ └───br.com.company.project.commons.utils.test
│ │ ├───202307041034
│ │ │ ├───br.com.company.project.commons.utils
│ │ │ └───br.com.company.project.commons.utils.test
│ │ ├───202307041048
│ │ │ ├───br.com.company.project.commons.utils
│ │ │ └───br.com.company.project.commons.utils.test
│ │ ├───202307041103
│ │ │ ├───br.com.company.project.commons.utils
│ │ │ └───br.com.company.project.commons.utils.test
│ │ ├───202307041127
│ │ │ ├───br.com.company.project.commons.utils
│ │ │ └───br.com.company.project.commons.utils.test
│ │ ├───br.com.company.project.commons.utils
│ │ └───br.com.company.project.commons.utils.test
│ └───test-classes
│ └───test
│ └───java
├───CompanyProjectSaaS_Constants
│ ├───.settings
│ ├───module
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───constants
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───constants
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyprojectSaaS_Grpc
│ ├───.settings
│ ├───src
│ │ └───main
│ │ ├───java
│ │ │ └───br
│ │ │ └───com
│ │ │ └───company
│ │ │ └───project
│ │ │ └───grpc
│ │ └───resources
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───grpc
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyprojectSaaS_GrpcServer
│ ├───.settings
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ │ └───grpc
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ │ └───grpc
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyprojectSaaS_JUnitTests
│ ├───.settings
│ ├───conf
│ ├───simulator
│ │ └───cryptoki_simulator
│ │ ├───admin
│ │ │ └───token
│ │ ├───admin.linux
│ │ │ └───token
│ │ └───slot0
│ │ └───token
│ ├───src
│ │ └───test
│ │ └───java
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───junit
│ │ └───tests
│ │ └───utils
│ └───target
│ ├───generated-test-sources
│ │ └───test-annotations
│ ├───maven-archiver
│ ├───maven-status
│ │ └───maven-compiler-plugin
│ │ └───testCompile
│ │ └───default-testCompile
│ ├───surefire-reports
│ └───test-classes
│ ├───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ ├───commons
│ │ │ └───utils
│ │ └───junit
│ │ └───tests
│ │ └───utils
│ └───test
│ └───java
│ ├───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───junit
│ │ └───tests
│ ├───commons
│ │ └───utils
│ └───junit
│ └───tests
│ └───utils
├───CompanyprojectSaaS_Logger
│ ├───.settings
│ ├───module
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───logger
│ │ ├───pojo
│ │ ├───report
│ │ └───utils
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───logger
│ │ ├───pojo
│ │ ├───report
│ │ └───utils
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyprojectSaaS_PKCS11
│ ├───.settings
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───pkcs11
│ │ ├───devices
│ │ ├───support
│ │ ├───token
│ │ │ └───asn1
│ │ └───utils
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───pkcs11
│ │ ├───devices
│ │ ├───support
│ │ ├───token
│ │ │ └───asn1
│ │ └───utils
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyprojectSaaS_PKCS11SunWrapper
│ ├───.settings
│ ├───bin
│ │ └───sun
│ │ └───security
│ │ └───pkcs11
│ ├───module
│ ├───src
│ │ ├───jdk
│ │ │ └───internal
│ │ │ ├───misc
│ │ │ ├───ref
│ │ │ └───util
│ │ └───sun
│ │ ├───net
│ │ │ └───www
│ │ ├───nio
│ │ │ ├───ch
│ │ │ └───cs
│ │ ├───security
│ │ │ ├───action
│ │ │ ├───internal
│ │ │ │ ├───interfaces
│ │ │ │ └───spec
│ │ │ ├───jca
│ │ │ ├───pkcs
│ │ │ ├───pkcs11
│ │ │ │ └───wrapper
│ │ │ ├───provider
│ │ │ ├───rsa
│ │ │ ├───util
│ │ │ └───x509
│ │ └───util
│ │ └───calendar
│ └───target
│ ├───classes
│ │ ├───jdk
│ │ │ └───internal
│ │ │ ├───misc
│ │ │ ├───ref
│ │ │ └───util
│ │ └───sun
│ │ ├───net
│ │ │ └───www
│ │ ├───nio
│ │ │ ├───ch
│ │ │ └───cs
│ │ ├───security
│ │ │ ├───action
│ │ │ ├───internal
│ │ │ │ ├───interfaces
│ │ │ │ └───spec
│ │ │ ├───jca
│ │ │ ├───pkcs
│ │ │ ├───pkcs11
│ │ │ │ └───wrapper
│ │ │ ├───provider
│ │ │ ├───rsa
│ │ │ ├───util
│ │ │ └───x509
│ │ └───util
│ │ └───calendar
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyprojectSaaS_PKCS11Wrapper
│ ├───.settings
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───pkcs11
│ │ └───wrapper
│ │ └───sun
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───pkcs11
│ │ └───wrapper
│ │ └───sun
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyProjectSaaS_Processor
│ ├───.settings
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ │ └───processor
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ │ └───processor
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyprojectSaaS_Processors_Builder
│ ├───.settings
│ └───target
│ └───antrun
├───CompanyprojectSaaS_Processor_Example
│ ├───.settings
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ ├───operations
│ │ │ └───jwedecrypt
│ │ └───processor
│ │ └───jwedecrypt
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ ├───operations
│ │ │ └───jwedecrypt
│ │ └───processor
│ │ └───jwedecrypt
│ ├───generated-sources
│ │ └───annotations
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
[...]
## There is a lot of this Processors, the structure are always the same as above.
[...]
├───CompanyprojectSaaS_RestServer
│ ├───.settings
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ │ └───rest
│ │ ├───controller
│ │ └───services
│ └───target
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ │ └───rest
│ │ ├───controller
│ │ └───services
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
├───CompanyProjectSaaS_Server
│ ├───.settings
│ ├───config
│ ├───logs
│ │ └───history
│ ├───processors
│ ├───src
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ └───target
│ ├───antrun
│ ├───classes
│ │ └───br
│ │ └───com
│ │ └───company
│ │ └───project
│ │ └───server
│ ├───generated-sources
│ │ └───annotations
│ ├───maven-archiver
│ └───maven-status
│ └───maven-compiler-plugin
│ └───compile
│ └───default-compile
└───CompanyProjectSaaS_Server_Builder
├───.settings
├───build
│ ├───Depends
│ │ ├───docs
│ │ └───company_project
│ │ ├───config
│ │ ├───linux
│ │ ├───processors
│ │ └───windows
│ │ ├───x64
│ │ └───x86
│ ├───installer_files
│ └───installer_out
├───dist
└───target
└───antrun
我试图更改项目结构并在目标中添加 *,但它们都没有奏效。我能够为不遵循此结构的测试和源代码创建一个 pitest。
答:
1赞
henry
7/5/2023
#1
看起来好像在与代码不同的模块中进行了测试。Pitest 不支持这一点。
评论
0赞
NotInCheck
7/6/2023
是的,测试是分开的。将它们放在一起将非常耗时,并且存在问题(因为使用同时器等的配置)。您是否看到任何形式可以修复它,或者是否有计划添加此功能?
评论