2016-12-22 1 views
2

하나 이상의 자동화 된 테스트 스위트가있는 많은 수의 프로젝트가 있습니다. 테스트는 IAR의 C-Spy 시뮬레이터에서 실행됩니다. (IAR Embedded Workbench for Arm v6.60을 사용하고 있습니다.)IDE 외부에서 C-Spy를 실행할 때 IAR 코드 적용 범위를 생성하십시오.

IDE에서 실행 가능한 테스트 실행 파일 중 하나를 실행하면 코드 커버리지 정보를 생성하고 볼 수 있습니다. 이것은 하나의 프로젝트에 대해서는 괜찮지 만, 수동으로 각각의 프로젝트를 실행하여 모든 프로젝트에 대해이 정보를 수집하는 것은 너무 복잡합니다. 빌드를 실행하고 모든 테스트 스위트에 대한 코드 커버리지 정보를 생성 할 수 있기를 바랍니다.

나는 EWARM_DebuggingGuide.pdf에있는 것을 바탕으로, 나는 C-스파이에게 코드 커버리지 플러그인 전달하여 실행을위한 코드 커버리지를 생성 할 수 있어야한다 : 파일뿐만 아니라

--plugin C:\<IAR path>/common/plugins/CodeCoverage/CodeCoverage.dll 

을 그 코드 커버리지 정보를 덤프해야합니다

C:\<IAR path>/common/bin/CSpyBat.exe C:\<IAR path>/arm/bin/armproc.dll C:\<IAR path>/arm/bin/armsim2.dll C:\<test suite path>/Test.out --plugin C:\<IAR path>/arm/bin/armbat.dll --plugin C:\<IAR path>/common/plugins/CodeCoverage/CodeCoverage.dll --backend -B --endian=little --cpu=Cortex-M4 --fpu=VFPv4 --semihosting --code_coverage_file C:\<test suite path>/CodeCoverageReport.log 
:

--code_coverage_file C:\<test suite path>/CodeCoverageReport.log 

것은 그래서 내가 호출있어 실제 명령입니다

C-Spy가 테스트 세트를 성공적으로 시작하면 테스트 결과가 인쇄되지만 코드 적용 파일이 생성되지 않습니다. 오류 메시지가 없습니다.

무엇이 누락 되었습니까?

+0

동일한 문제가 있습니다. 누구에게 해결책이 있습니까? – Miguel13366

답변

0

또한 하드웨어 디버거 구성에서 테스트를 실행하는 동안이 아닌 시뮬레이터 구성을 사용할 때 IAR에서만 코드 적용 범위 보고서를 실행할 수 있음을 알게 된 some information을 발견했습니다.

내가 IAR의 v7.80를 사용하여 다음과 같은 명령을 사용하여 C-SPY을 사용하여 명령 줄에서 코드 커버리지 파일을 생성 할 수 있었다있어이 :

"C:\<IAR Path>\common\bin\CSpyBat.exe" --code_coverage_file coveragereport.txt 
-f .\settings\MyProject.Debug.general.xcl --backend -f .\settings\MyProject.Debug.driver.xcl 

이 명령은 "coveragereport라는 파일을 생성 .txt "를"MyProject "라는 IAR 프로젝트에서 가져옵니다.

이 작업을 수행하기 위해 CodeCoverage.dll 파일을 지정할 필요가 없었습니다. 프로젝트를 시뮬레이터 구성으로 전환하고 전달중인 옵션 수를 줄이십시오. 또한 CSpyBat.exe 바로 뒤에 --code_coverage_file 매개 변수를 넣으십시오.

희망이 도움이됩니다.

+0

원래 게시물에 명시된 바와 같이, 나는 이미 시뮬레이터를 사용하고 있습니다. 이 예제는 다른 사람들에게 도움이 될 수 있지만 위에서 언급 한 버전 (v6.60)에서는 -f 옵션을 인식하지 못하기 때문에 새로운 버전의 C-Spy와 내가 사용하고있는 버전간에 호환성이별로없는 것으로 보입니다. –

+0

@ BenHammen 혹시 IAR의 새 버전으로 업그레이드 할 수 있습니까? 전달중인 매개 변수를 자르려고 했습니까? 이관하기 위해 IAR에 연락 했습니까? 영업 팀 및 기술 지원에 대한 행운을 보았습니다. 이 문제가 해결되면 후속 조치를 취하십시오. – Lemtronix

+0

이 문제는 IAR v6.60 이외의 툴체인으로 바꾸면 분명히 피할 수 있습니다. 그러나 이것은 제가 묻고있는 질문이 아닙니다. –

관련 문제