Test Complete 7.0을 사용하여 D2009 애플리케이션 테스트
-
21-08-2019 - |
문제
우리는 Delphi 2009(최근 D2006에서 포팅된)에서 컴파일된 애플리케이션을 테스트하기 위해 Test Complete 7을 사용하려고 합니다.이론적으로는 이것은 정말 쉬울 것입니다. 디버그 정보로 앱을 컴파일한 다음 스트리퍼 유틸리티를 사용하여 디버그 정보를 별도의 *.tds 파일로 제거합니다.그러면 TC는 필요한 모든 속성과 메서드에 액세스할 수 있어야 합니다.실제로 우리는 다음을 발견했습니다.a) 많은 속성과 방법이 전혀 나타나기가 매우 어려울 수 있습니다. b) 표시가 나타나고 매개 변수/인덱스가있는 경우 표시된 매개 변수/색인 목록은 코드에서 실제 목록과 관련이 없을 수 있습니다. 그리고 Shipshape 인 것으로 보이는 속성은 완전한 쓰레기 외에는 작동하지 않습니다.
이 시나리오를 경험한 사람이 있습니까? 문제가 발생했습니까? 문제를 해결할 수 있었다면 무엇을 했습니까?
자동화된 QA가 우리를 위해 이 문제를 조사하고 있지만 우리는 큰 진전을 이루지 못하는 것 같습니다. 이 문제를 해결할 수 있는 유일한 방법은 우리가 꺼리는 애플리케이션의 소스를 그들에게 보내는 것입니다. 실용적인 이유에서 법적 이유에 이르기까지 다양한 이유로 수행해야 합니다.
그런데 작은 테스트 앱에서는 같은 문제가 발생하지 않습니다.
해결책
문제를 발견했기 때문에 내 질문에 답하고 있습니다.실행 파일에 제네릭을 추가하면 디버그 정보가 생성되는 것처럼 보이지만 테스트 완료에서는 처리할 수 없습니다.Delphi가 디버그 정보를 망쳐 놓은 것인지, 아니면 테스트 완료가 제대로 읽히지 않는 것인지 아직 확실하지 않습니다.
다른 팁
소규모 테스트 응용 프로그램에 문제가 나타나지 않으면 '바이너리 검색'을 수행 할 수 있습니다.
큰 앱의 테스트 응용 프로그램에 더 많은 단위 (및이 단위의 메소드에 대한 통화)를 추가하고 문제가 나타나는지 확인하십시오.
그렇다면 문제가 사라질 때까지 일부 장치를 제거하십시오.
아니오 인 경우 더 많은 단위를 추가하고 문제가 나타날 때까지 다시 테스트하십시오.
일부 반복 후에는 문제를 일으키는 단위/작업을 찾아야합니다.
단지 제안 :
큰 프로젝트에서 디버그 정보를 변경하거나 '무효화'할 수있는 것을 사용하고 있습니까? madexcept 아마도 (Madexcept는 디버그 정보를 exe 자체에 묶지 않으므로 다른 생성 된 디버그 정보가 잘못 될 수 있습니까?)
기본 앱과 동일한 테스트 앱에 동일한 컴파일러 설정을 사용하고 있습니까? 아마도 메인 앱에서 자연스럽게 테스트 앱에 등장하지 않는 타사 구성 요소를 사용하고 있습니까?