1
을 던지는하지오이 JS는 내가 cucumber.js의 작은 테스트를 쓰고 있어요 실패
defineSupportCode(function({Given, When, Then}){
Given(/^I have a valid github username $/, function(callback){
githubUserName = 'test';
callback();
});
When('I call username api', function(callback){
let url = githubUrl+githubUserName;
let response;
var data;
githubResponse = fetch(url)
.then(res => res.json())
.then(json => {return json});
callback();
});
Then('I get userdetails', function(){
githubResponse.then(function(data){
console.log(data.name);
expect(data.name).to.equal("abc");
});
});
});
이제 테스트를 실행하면 통과합니다. 나는 심지어 콜백을 시도했다. 그러나 예외는 예외를 던지고 있지만 여전히 전달을 유지한다.
어디에서나 처리기가 누락 되었습니까? 저는이 프로그래밍 스타일에 대한 총체적인 초심자입니다.
"가져 오기"기능이 무엇인지 모르겠지만 코드가 생각하는대로 수행한다고 가정하면 "다음 단계"에서 return githubResponse.then ...가 누락됩니다. 리턴 오이가 없으면 호출이 실행되고 완료 될 때까지 기다리지 않고 함수를 종료하므로 항상 성공합니다. – joniba