우리 모듈은 다중 모듈 프로젝트이며 clover2 : instrument를 사용하여 계측 된 팻말을 생성합니다. 우리는 명령 줄에서 계측 항아리를 사용하여 기능 테스트 코드 커버리지를 평가, 모든 단계는 아래에 언급 :클로버 3.1.8의 널 포인터 예외로 유닛 테스트가 실패하지만 모두 클로버로 깨끗하게 처리됩니다. 4.0.2
- MVN 클린 설치
- MVN -P 계측 clover2 : 악기
- 실행 기능 테스트
- MVN -P 계측 clover2 :
- MVN -P 계측 clover2 집계 : 클로버 사이트
모든 단위 테스트는 위스콘신 통과 클로버 버전 3.1.8이 사용되면 NPE와 함께 실패합니다. 이전 버전은 상업용 라이센스가 있고 최신 버전이 아니기 때문에 사용하고 싶습니다. 친절히 도와주세요.
I 로그를 공유 할 수 없어 내 조직 정책에 위배 될 수 있습니다. 로그에서 추가 스택을 추가 발췌
Tests run: 6, Failures: 6, Errors: 0, Skipped: 0, Time elapsed: 0 sec <<< FAILURE!
com.***.*.*.*.*.drools.*.*************UnitTest.testKnowledgeAgentInitialization() Time elapsed: 0 sec <<< FAILURE!
java.lang.NullPointerException
at com.***.*.*.*.*.drools.*.*************UnitTest.testKnowledgeAgentInitialization(*************UnitTest.java:149)
Parent POM for clover:
<profiles>
<profile>
<id>instrumentation</id>
<activation>
<property>
<name>instrumentation</name>
</property>
</activation>
<dependencies>
<dependency>
<groupId>com.atlassian.clover</groupId>
<artifactId>clover</artifactId>
<version>${version.clover}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<version>${version.clover}</version>
<configuration>
<license>${clover.license}</license>
<includesTestSourceRoots>false</includesTestSourceRoots>
</configuration>
<executions>
<execution>
<id>site</id>
<phase>pre-site</phase>
<goals>
<goal>aggregate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
We are using Surefire to run Unit tests
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.14.1</version>
<configuration>
<includes>
<include>**/*UnitTest.java</include>
</includes>
</configuration>
<executions>
<execution>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<testNGArtifactName>none:none</testNGArtifactName>
<reportsDirectory>${project.build.directory}/surefire-reports/testng</reportsDirectory>
</configuration>
</execution>
<execution>
<id>test-testng</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<junitArtifactName>none:none</junitArtifactName>
<reportsDirectory>${project.build.directory}/surefire-reports/junit</reportsDirectory>
</configuration>
</execution>
</executions>
</plugin>
를 공유하는 것은 정말 많은 정보를
실행 닷컴을주지 않지만. .air.supply.. .drools.ruleengine.ApplyQueryValueThrottleEngineUnitTest 테스트를 실행했습니다 : 4, 오류 : 4, 오류 : 0, 건너 뛰기 : 0, 경과 시간 : 0.27 초 < < < FAILURE! com. .air.supply. ..drools.ruleengine.ApplyQueryValueThrottleEngineUnitTest.testKnowledgeAgentInitialization() 경과 시간 : 0.002 초 < < < 오류! java.lang.NullPointerException at com. .air.supply.. *. drools.ruleengine.ApplyQueryValueThrottleEngineUnitTest.testKnowledgeAgentInitialization (ApplyQueryValueThrottleEngineUnitTest.java:145)
닷컴. .air.supply.. .drools.ruleengine.ApplyQueryValueThrottleEngineUnitTest.testNoM hingRule() 경과 시간 : 0.266 초 < < < 오류! java.lang.NullPointerException at com. .air.supply.. .drools.ruleengine.ApplyQueryValueThrottleEngineUnitTest.testNoM hingRule (ApplyQueryValueThrottleEngineUnitTest.java:124)
닷컴. .air.supply.. .drools.ruleengine.ApplyQueryValueThrottleEngineUnitTest.testM hingRule() 경과 시간 : 0 초 < < < 오류! java.lang.NullPointerException at com. .air.supply.. .drools.ruleengine.ApplyQueryValueThrottleEngineUnitTest.testM hingRule (ApplyQueryValueThrottleEngineUnitTest.java:135는)
클로버의 4.0 릴리스 노트에 명시된 바와 같이
우리가 아는 건 어떤 클래스의 라인 149에서 NPE 있다는 것입니다. 이 행의 내용이나 예외의 스택 추적에 대한 정보가 없습니다. 어떻게 우리가 도울 것으로 기대합니까? – yole
@yole 실패한 테스트의 로그를 확장 중입니다. clover2를 실행하는 동안 이러한 테스트가 실패합니다. – Ankit
아직 스택 추적이 없으며 코드가 여전히 도움이되지 않습니다. – yole