정적 테스트에서 "코딩 표준"을 제어하기 위해 Parasoft C/C++ 테스트를 사용하려고합니다. Parasoft 사용자 가이드의 "Makefile 프로젝트에서 bdf를 만드는 방법"만 찾았습니다.Parasoft에서 빌드 데이터 파일 (bdf)을 만드는 방법은 무엇입니까?
모든 프로젝트에 대해 어떻게 bdf를 만들 수 있습니까? makefile 프로젝트를 필수로 사용하고 있습니까?
정적 테스트에서 "코딩 표준"을 제어하기 위해 Parasoft C/C++ 테스트를 사용하려고합니다. Parasoft 사용자 가이드의 "Makefile 프로젝트에서 bdf를 만드는 방법"만 찾았습니다.Parasoft에서 빌드 데이터 파일 (bdf)을 만드는 방법은 무엇입니까?
모든 프로젝트에 대해 어떻게 bdf를 만들 수 있습니까? makefile 프로젝트를 필수로 사용하고 있습니까?
parasoft는 평판이 좋은 주제는 아닙니다. 답변은 금색의 가치가 있습니다. 나는 cpptesttrace를 찾을 수 없었다. cpptest 및 cpptestscan이 있습니다. 그들이 될 수 있을까요? parasoft의 이전 버전을 사용합니다.
정확합니다. 'cpptesttrace'는 Parasoft C++ 테스트 버전 9.4 (2012 년 중반)에 추가되었으므로 'cpptestscan'만있는 버전 9.2 이하를 사용하고있을 가능성이 큽니다.
BTW, 여기에 C++ 테스트 독립형 설치 (안 비주얼 스튜디오 플러그인) 내부 프로그램의 빠른 설명입니다
cpptestscan과 cpptesttrace 사이의 주요 차이점을 정보 파일 BDF의 모든 컴파일 명령을 캡처하고 저장하는 것입니다. 즉, cpptestscan은 단일 컴파일 만 캡처하여 한 번에 하나씩 BDF에 저장할 수 있습니다. 이것은 일반적으로 make CC 또는 CXX 변수를 덮어 쓰는 방법으로 수행되었습니다 (예 : "cpptestscan g ++ -c foo.c -o foo.o").
makefile 또는 빌드 스크립트가 명령 줄에서 컴파일러를 덮어 쓸 수있을 정도로 유연한 경우 cpptestscan이 좋습니다.
make CXX="cpptestscan g++" CC="cpptestscan gcc"
일반적으로 메이크 기반 프로젝트에서 가능합니다. 맞춤 또는 자동 생성 빌드 스크립트의 경우 모든 베팅이 해제됩니다. 종종 유일한 옵션은 사람들이 보통 걱정하는 프로젝트 빌드 스크립트를 수정하는 것이 었습니다. 그런 경우 cpptesttrace는 완전히 방해가되지 않으며 거의 모든 빌드 프로세스에서 빌드 정보를 캡처 할 수 있기 때문에 도움이됩니다. 여러 프로젝트가 있다면
,이 게시물의 원래의 질문으로 돌아 간다 : cpptestscan를 사용
도움이 되었기를 바랍니다. BTW : C++ 테스트를 업그레이드 할 수 있는지 Parasoft에 확인하십시오.
make 파일 사용은 필수는 아닙니다. Parasoft C++ 테스트에는 빌드 프로세스를 모니터링하고 컴파일러 호출을 수집하여 BDF 파일을 만드는 'cpptesttrace'이라는 도구가 있습니다.
cpptesttrace는 모든 빌드 프로세스에서 사용할 수 있으며, 만들거나, 쉘 스크립트로 만들거나 IDE에서 빌드 할 수 있습니다 (명령 줄 빌드를 사용할 수없는 경우 마지막 수단). cpptesttrace 작동 방식
:
예 1 Parasoft 지원에 문의 할 수 있습니다 :
내가 메이크 파일 예 : 줄 것이다, 그러나 그것은 SCons는, 잼, 또는 Python 스크립트가 될 수 또는 .BAT : cpptesttrace를 사용하여, 다음과 같이
make clean all
나는 빌드를 실행할 수 있습니다 : 내 전체 빌드는 다음과 같이 이루어집니다, 가정 cpptesttrace make all clean 전체 빌드를 모니터링하고 실행에서 BDF 파일을 만듭니다.
예 2 : 빌드 스크립트와 다단계 프로세스 또는 길을 따라 변화하는 폴더를 만들 경우이
, BDF의 절대 위치 cpptesttrace에게 좋은 수 있습니다. 위의 예제를 확장, 우리가 실행할 수 : BDF 경로가 절대 있는지 확인합니다
cpptesttrace --cpptesttraceOutputFile=`pwd`/cpptest.bdf make clean all
을, 소스 트리 레벨 cpptesttrace가 호출되는에 상관없이.
답장을 보내 주셔서 감사합니다. parasoft는 평판이 좋은 주제는 아닙니다. 대답은 금의 가치가 있습니다. 나는 cpptesttrace를 찾을 수 없었다. cpptest와 cpptestscan이 있습니다. 그들이 될 수 있을까요? parasoft의 이전 버전을 사용합니다. – Alperen
고마워. 이 설명들은 나를 깨우쳐 주었다. – Alperen
Parasoft를 사용하는 프로젝트가 2 개 있습니다. 귀하의 대답은 두 가지 모두에 도움이됩니다. 하나는 완벽하게 작동하지만 다른 하나에는 문제가 있습니다. 그것은 여전히 실패하고 일부 파일에서 구문 분석 오류를 제공합니다. 나는 그 파일들을 조사한 결과 공통적으로 같은 헤더가 모두 포함되어 있다는 것을 알았지 만 Parasoft IDE는 "Unresolved inclusion"오류를 제공합니다.이 프로젝트는 자체 IDE에서 올바르게 빌드됩니다. 그리고이 빌드 프로세스에 의해 생성 된 bdf 파일을 사용했습니다. 이 공통 헤더 파일이 포함 디렉토리에 있기 때문에 빌드 프로세스가 자체 IDE에서 올바르게 작동합니다. 왜 그게 효과가 없습니까? – Alperen
또한 bdf 파일에 관련된 include 디렉토리를 볼 수 있습니다. 그리고이 헤더 파일에는 간단한 정의로 구성되어 있기 때문에 C 파일이 없습니다. 그 이름이 "asd.h"라고하면, bdf 파일에 "asd.o"단어가 없습니다. – Alperen