TestStand 단계 실패 시 프로그래밍 방식으로 실행 중단

업데이트 됨 Sep 24, 2021

환경

소프트웨어

  • TestStand

테스트 스텝이 실패한 후 프로그래밍 방식으로 실행을 중단하고 싶습니다. 테스트가 중요한 측정이거나 어떤 식으로 든 제조 라인의 안전한 운영과 관련된 경우에 필요합니다. 단계 실패 시 프로그래밍 방식으로 실행을 중단하려면 어떻게 해야 합니까?

시퀀스가 실패한 후 진행되는 스텝을 어떻게 변경합니까?


모든 개발 시스템에서 빠르게 구현할 수 있는 이 문제에 대한 두 가지 접근 방식이 있습니다.

옵션 1: PostStep 콜백 사용 (TestStand 1.0.3 이하):
  1. 중단 동작이 필요한 테스트의 시퀀스 파일을 열고 Edit» Sequence File Callbacks로 이동합니다.
  2. 목록에서 SequenceFilePostStep 콜백을 선택하고 Add 버튼을 눌러 파일에 콜백을 포함합니다. OK를 클릭하여 시퀀스 파일로 돌아갑니다.
참고: SequenceFilePostStep 콜백 시퀀스는 클라이언트 시퀀스의 모든 단계 후에 TestStand에서 한 번씩 실행됩니다. 프로세스 모델에서 콜백을 구현하는 경우 최상의 결과를 얻으려면 ProcessModelPostStep 콜백을 SequenceFilePostStep 콜백으로 대체하십시오. 이 콜백과 기타 콜백에 대한 자세한 내용은 TestStand 도움말을 참조하십시오.
  1. View 링 컨트롤에서 콜백 시퀀스를 선택하여 열고 step adapter ring control에서 ActiveX Automation Adapter를 선택합니다.
  2. 콜백 시퀀스에 작업 단계를 추가합니다. 새 스텝을 마우스 오른쪽 버튼으로 클릭하고 상황에 맞는 메뉴에서 Properties를 선택합니다.
  3. 스텝 속성 창에서 Preconditions를 선택합니다. Preconditions 대화 상자에서 Insert New Expression을 선택하십시오.
  4. 직접 입력하거나 Browse 버튼을 사용하여 Functions and Properties에 액세스하여 Edit/View Expression 상자에 StrComp(RunState.Caller.PreviousStep.Result.Status, "Failed")==0 식을 입력합니다. 이렇게 하면 마지막으로 실행된 테스트 스텝이 실패를 보고 할 때만 스텝이 실행됩니다. OK를 클릭하여 스텝 속성 창으로 돌아가서 Specify Module을 선택하여 자동화 호출 편집 대화 상자를 엽니 다.
  5. 입력하거나 Browse 단추를 사용하여 RunState 속성을 탐색하여 RunState.Execution을 보도록 ActiveX Reference 필드를 구성합니다.
  6. Automation Server 링 컨트롤을 사용하고 TestStand API를 선택합니다.
  7. Object Class 링 컨트롤을 사용하고 Execution 클래스를 선택합니다.
  8. Create Object 확인란을 선택 취소합니다.
  9. Call Method or Access Property 제목 아래에서 Action 링 컨트롤을 사용하여 Call Method를 선택하고 Method 링 컨트롤을 사용하여 Abort 메서드를 선택합니다. OK 버튼을 클릭하여 스텝 설정을 저장합니다. 이제 SequenceFilePostStep 콜백이 실행되고 실패가 감지될 때마다 시퀀스가 ​​중단됩니다.
옵션 2: PostStepFailure 콜백 (TestStand 2.0 이상) :
  1. 중단 동작이 필요한 테스트의 시퀀스 파일을 열고 Edit» Sequence File Callbacks로 이동합니다.
  2. 목록에서 SequenceFilePostStepFailure 콜백을 선택하고 추가 버튼을 클릭하여 파일에 콜백을 포함합니다. OK를 클릭하여 시퀀스 파일로 돌아갑니다.
참고: SequenceFilePostStepFailure 콜백 시퀀스는 테스트 시퀀스에서 스텝이 실패한 후에만 ​​TestStand에서 실행됩니다. 프로세스 모델에서 콜백을 구현하는 경우 최상의 결과를 얻으려면 ProcessModelPostStepFailure 콜백을 SequenceFilePostStepFailure 콜백으로 대체하십시오. 이 콜백과 기타 콜백에 대한 자세한 내용은 TestStand 도움말을 참조하십시오.
  1. View 링 컨트롤에서 콜백 시퀀스를 선택하여 열고 step adapter 링 컨트롤에서 ActiveX/COM Adapter를 선택합니다.
  2. 콜백 시퀀스에 작업 스텝을 추가합니다. 새 스텝을 마우스 오른쪽 버튼으로 클릭하고 상황에 맞는 메뉴에서 Properties을 선택합니다. 새 창에서 Specify Module을 선택하여 단계를 편집하십시오.
  3. 입력하거나 Browse 버튼을 사용하여 RunState 속성을 탐색하여 RunState.Execution을 보도록 ActiveX Reference 필드를 구성합니다.
  4. Automation Server 링 컨트롤을 사용하여 TestStand API를 선택합니다.
  5. Object Class 링 컨트롤을 사용하여 Execution 클래스를 선택합니다.
  6. Create Object 확인란을 선택 취소합니다.
  7. Call Method or Access Property 제목 아래에서 Action 링 컨트롤을 사용하여 Call Method를 선택하고 Method 링 컨트롤을 사용하여 Abort 기능을 선택합니다. OK 버튼을 클릭하여 스텝 설정을 저장합니다. 이제 SequenceFilePostStepFailure 콜백이 실행될 때마다 시퀀스가 ​​중단됩니다.

추가 정보

두 솔루션 모두 사용자 입력에 따라 실행 중단하는 것이 쉬운 수정입니다. 예를 들어, 사용자가 실패를 수락할지 또는 시퀀스를 중단할 지를 선택하는 ActiveX 호출 전에 메시지 팝업 단계를 포함하는 것을 고려하십시오. 이 메시지 팝업의 결과는 조치 단계의 추가 전제 조건으로 사용될 수 있습니다. 또 다른 수정은 Abort 이외의 작업을 선택하는 것입니다. 사용자 설명서에서 Abort , TerminateBreak 의 차이점을 확인하여 시퀀스에 가장 적합한 동작을 확인하십시오.