문제

C ++의 경우, 좋은 단위 테스트 프레임 워크가 많이 있지만 좋은 것을 찾을 수 없었습니다. 기능 테스트. 기능 테스트를 통해 디스크에 닿는 물건은 전체 응용 프로그램을 제자리에 두어야합니다.

요점 : I/O가 작동하는지 여부와 같은 테스트에 도움이되는 프레임 워크는 무엇입니까? 손으로 롤링 된 시스템이있어 임시 폴더를 생성하고 많은 데이터 주변의 사본을 생성하므로 테스트는 항상 같은 환경에서 수행되지만 사용자 정의 프레임 워크에서 더 많은 시간을 보내기 전에 벌써 좋은가요?

도움이 되었습니까?

해결책

GUI 앱에 대해 한 번 수정 프로토콜을 사용하여 교환과 대화하는 C ++ 앱을 테스트하기 위해 이미 세 번 처음 3 번을 썼습니다.

문제는 적절한 시스템 테스트를 수행하기 위해 외부 세계를 모방해야한다는 것입니다. 응용 프로그램 이외의 "코드 외부"를 의미하지는 않습니다. 여기에는 최종 사용자, 외부 엔티티, 인터넷 등을 모방합니다.

나는 일반적으로 Perl을 사용하여 시스템 테스트 프레임 워크 및 테스트를 작성합니다. 대부분 모든 종류의 OS 시설에 액세스하는 것이 좋습니다. Regexps는 일류 시민이기 때문입니다.

몇 가지 팁 : 로그를 구문 분석하기 쉽고 자세히 지내지 만 너무 장황하지 않도록하십시오. 제정신 기본 구성이 있습니다. 응용 프로그램을 쉽게 "재설정"할 수 있도록하십시오. 각 테스트 후에 수행해야합니다.

내가 일반적으로 사용하는 접근법은 외부 세계와의 응용 프로그램의 통신을 일부 실행 파일의 stdin/stdout으로 바꾸는 일종의 "어댑터"를 갖는 것입니다. 그런 다음 그 위에 PERL 프레임 워크를 구축 한 다음 테스트 케이스는 프레임 워크를 사용합니다.

다른 팁

아래에는 내가 알고있는 몇 가지 도구와 더 큰 테스트 응용 프로그램을 나열합니다. 플랫폼 (OS 등)에 대한 자세한 정보를 제공하면 더 나은 답변을 제공 할 수 있습니다.

필요한 것의 일부를 위해 Microsoft는 다음을 제공합니다. 응용 프로그램 검증 자:

Application Verifier (Appverifier)는 Microsoft Windows XP와의 호환성을 위해 응용 프로그램을 테스트하는 데 사용되는 런타임 확인 도구입니다. 이 도구는 애플리케이션이 실행되는 동안 다양한 알려진 호환성 문제를 테스트하는 데 사용할 수 있습니다. 이 기사는 응용 프로그램 개발 및 테스트주기에 효과적인 추가로 Appverifier를 사용하는 단계를 자세히 설명합니다.

애플리케이션 검증자는 낮은 메모리 조건, 기타 낮은 리소스 및 기타 API 사용을 테스트하는 데 유용 할 수 있습니다.

퍼즐의 또 다른 부분은 Microsoft Detours 패키지로, API 호출을 자신의 코드로 바꾸는 데 사용할 수 있습니다 (예 : 설정하기 어려운 테스트의 오류 코드를 반환하는 데 유용합니다).

우회는 X86, X64 및 IA64 기계의 임의의 Win32 기능을위한 도서관입니다. 대상 함수에 대한 메모리 내 코드를 다시 작성하여 Win32 기능을 우회합니다. Detours 패키지에는 또한 임의의 DLL 및 데이터 세그먼트 (페이로드)를 Win32 바이너리에 첨부하는 유틸리티가 포함되어 있습니다.

더 크고 더 비싼 포괄적 인 패키지도 있습니다. Borland Makes 실크.
자동화 된 소프트웨어가 제작됩니다 TestComplete. 이러한 도구 중 하나를 선택하는 것은 응용 프로그램의 요구에 달려 있습니다.
IBM/Rational은 다음을 제공합니다 합리적인 기능 테스터, 많은 플랫폼에서 사용할 수 있으며 기능이 풍부합니다.

안녕하세요, 우리가 가지고있는 프레임 워크가 귀하의 상황에 도움이되는지 확실하지 않지만 합리적인 기능 테스터에 연결되어 있으며 사용자가 다양한 테스트에 첨부 할 수 있도록 다양한 데이터 세트를 만들고 스크립팅을 변경하지 않고 환경을 변경할 수 있습니다. 효율적인 방법. 관심이 있다면 살펴보십시오.http://www.testpro.com.au/test-automation-framework.html

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top