2015-01-19 1 views
0

현재 실패한 테스트는 1의 코드를 보내고 종료하고 성공한 테스트는 0의 종료 코드를 보냅니다. 캐스퍼가 특정 경우에 2의 종료 코드를 보낼 수 있습니까? 문제casperjs로 맞춤 이탈 코드를 보낼 수 있습니까?

업데이트 : 캐스퍼 (말)이 상태 코드를 설정하고 나머지 테스트를 계속 유지하는

은 가능합니까?

답변

0

비 테스트 환경에서는 casper.exit(2);을 사용하여 특정 코드로 종료 할 수 있습니다. 실행이 casper.test.begin 함수에서 수행되므로 테스트 환경에서


이 조금 어렵다.
예를 들어, 당신은 종료 코드를 설정하는 파일의 마지막 테스트 케이스를 사용할 수 있습니다

casper.test.begin("test desc 1", function(test){ 
    ... 
}); 
... 
casper.test.begin("test desc last", function(test){ 
    casper.exit(2); 
}); 

그래도 exit 이벤트 핸들러를 사용하는 것이 좋습니다 수 있습니다.

var code = 0; 
casper.on("exit", function(code){ 
    if (code > 0) { 
     phantom.exit(2); // immediately exits 
    } 
}); 
casper.test.begin("test desc 1", function(test){ 
    ... 
    if (!this.visible("something")) { 
     code = 3; 
    } 
    ... 
}); 
... 
+0

두 가지 제안은 모두 테스트되지 않았습니다. –

+0

필자는 테스트 환경 부분을 명확하게 이해하지 못했습니다./ – user2076106

+0

이러한 제안은 특정 테스트 사례에는 사용할 수 없지만 파일은 현명합니다. 내가 다른 것을 생각해 낼 수 있는지 알게 될 것이다. try-catch가 작동 할 수도 있습니다. –