인턴 테스트 결과를 파일로 출력 할 사용자 정의 기자를 작성하려고하지만로드 블록에 도달했습니다.맞춤형 리포터의 파일에 쓸 수 있습니까?
인턴의 도우 죠 로더를 통해 노드 파일 시스템 API를 확보 할 수 있었지만 writeFile 또는 writeFileSync는 아무 것도하지 않았습니다. 차이점은 writeFileSync가 프로세스를 잠그는 것입니다.
내 기자 코드의 최소 버전 : 나는 콘솔 로그에 쓰기 전화를 교체 할 경우
define(["node_modules/intern/node_modules/dojo/node!fs"], function (fs) {
var buffer = "";
return {
"/test/pass": function(test) {
buffer += test.id + " passed\n";
},
"/test/fail": function(test) {
buffer += test.id + " failed\n";
},
"/runner/end": function() {
fs.writeFileSync("result.txt", buffer, function (error) {
if (error) {
throw error;
}
console.log("File saved");
});
}
};
});
, 내가 예상 데이터를 얻을, 그래서 모든 다른 잘 작동 할 것으로 보인다.
편집 : 수정 된 코드를 작동합니다
define(["node_modules/intern/node_modules/dojo/node!fs"], function (fs) {
var buffer = "";
return {
"/test/pass": function(test) {
buffer += test.id + " passed\n";
},
"/test/fail": function(test) {
buffer += test.id + " failed\n";
},
"/runner/end": function() {
fs.writeFileSync("result.txt", buffer);
console.log("File saved");
}
};
});
노드 또는 브라우저를 사용하여 테스트를 실행하고 있습니까? –
노드를 사용하고 있습니다. 테스트는 로컬 Selenium 서버에 대해 실행되는 기능 테스트입니다. –