0
어설 션을 제외하고 아래 코드는 모두 올바르게 작동합니다. 테스트가 실행되면 Jasmine은 0 개의 어설 션을보고합니다. 어떻게 내 약속을 지킬 수 있고 인정받을 수 있습니까?약속 안의 Jasmine-node 어설 션은 표시되지 않습니다.
it("should open save NTP server modal", function (done) {
var addModal = driver.findElement(By.className('modal-dialog'));
driver.wait(until.stalenessOf(addModal), 5000).then(function() {
return driver.wait(until.elementIsEnabled(driver.findElement(By.id('saveButton'))), 5000).then(function (element){
return element.click();
});
});
driver.findElement(By.className("modal-body")).then(function (element) {
return expect(element.isDisplayed()).toBeTruthy();
});
done();
});
나는 (내 좋은 예 테스트)이 특정한 경우에 그냥 요소를 잡을 수 있다는 것을 알고 다음은 약속의 외부 기대 :
var element = driver.findElement(By.className("modal-body"));
expect(element.isDisplayed()).toBeTruthy();
불행히도 나는 다른 경우가 어디 약속 밖에서 예외를 수행 할 방법을 결정할 수 없습니다.
또한 약속하는 여러 객체가 해결 될 때까지 대기하는 주장이있는 경우 async.js와 같은 라이브러리를 사용하여 "done"콜백을 제대로 호출하는 것이 좋습니다. – appu
이것은 문제 감사했습니다! 나는 mocha/chai를 다시 사용하여 더 좋을지 알아 보겠습니다. – dittmanc