2012-12-10 3 views
0

우리는 XML로 사용자 정의 테스트를 선택하여 CodedUI 테스트로 변환하는 서비스를 제공합니다. 그런 다음 MSTest가 테스트 컨트롤러에 테스트를로드하는 프로세스를 시작한 다음 다양한 에이전트에 테스트를 배포합니다. 우리는 야간에 회귀 테스트를 실시하므로, 문제가 발생하면 아무도 시스템을 고칠 수 없습니다. 테스트 프로그램에서 특정 예외가 발생하면 오류 창이 열리고 시스템에서 더 이상 테스트를 실행할 수 없습니다. 후속 테스트는 에이전트에로드되고 할당 된 작업을 수행 할 수 없기 때문에 즉시 실패합니다. 여러 시스템에서 밤새 걸릴 수천 번의 테스트가 이제 실패로 끝납니다.코드에서 CodedUI 테스트 에이전트를 비활성화하는 방법은 무엇입니까?

테스트가 얼마나 빨리 반환되는지에 따라 오류가 발생했음을 감지 할 수 있지만 더 이상 테스트를 수행하지 못하도록 에이전트를 비활성화하는 방법은 알 수 없습니다.

부록 :

시험은 더 이상 테스트를 성공적 실행을 시도 할 수 없습니다 (언급 한 바와 같이, 우리는 약간의 가능성 새로운 팝업을 처리하는 작업이 없을 수 있습니다) 너무 비참하게 실패하면 우리 더 이상 테스트를 수행 할 필요가 없으므로 해당 에이전트를 비활성화하려는 경우 모두 실패합니다. 많은 에이전트가 동시에 실행되기 때문에 하나의 에이전트가 실패하고 장애가 발생하면로드가 긴 실패 문자열없이 배포 될 수 있습니다. 이러한 다른 회귀 테스트는 여전히 성공할 수있는 기회 (모든 것이 작동 함) 또는 실패 할 수 있습니다 (다른 팝업이 누락되었거나 실제 회귀 실패 인 경우).

2000 년의 실패는 1 시스템이 아무런 문제가 없다는 것을 제외하고는 아무 말도하지 않았고 이제는 밤새도록 테스트를 낭비했습니다. 2 개의 고장 (자연 발생 1 개, 이전 고장으로 인한 고장으로 인한 고장 1 개)과 1 개의 시스템 다운은 총 1 시간 또는 2 시간의 가동 시간을 연장 할 수 있음을 의미하며 하루를 시작하는 방법에 대한 유용한 데이터가 있습니다. 1 개의 테스트를 수정하고 두 개의 실패를 다시 실행하십시오 .

+0

아무도 해결하지 못하면 ... 결과 테스트가 실패하는 것이 왜 중요합니까? 실행이 –

답변

0

그런 경우에 테스트 런을 중단해야합니다. mstest를 직접 실행하고 있다면^c를 명령 행 프로세스에 삽입해야합니다. 그러나 아무도 그 문제를 해결할 사람이 없다면, 결과 테스트가 실패하는 것이 왜 중요합니까? 어떤 테스트가 오류의 원인인지 신속하게 확인하려면 코드 상자를 생성하여 코드 상자가 있는지 확인하고 Assert.infinclusive로 테스트를 완료하지 않았는지 확인하십시오. 원인 테스트는 깃발처럼 두드러 질 것입니다.

0

에이전트를 비활성화하려는 지점을 감지 할 수있는 경우 에이전트를 구성되지 않은 상태로 재설정하는 "TestAgentConfig.exe delete"를 실행하여 에이전트를 비활성화 할 수 있습니다.

관련 문제