나는 각도기와 자바 스크립트에 익숙하지 않으며 문자열을 속성 값과 비교할 때 문제가 있습니다. 콘솔의 메시지는 다음과 같습니다. 함수가 30000 밀리 초 후에 시간 초과되었습니다. Protractor API에서 조건을 예상 할 때 함수를 만들 필요가 없다고 말합니다. 함수를 만들고 요소를 인쇄 할 때 올바른 값을 얻었지만 예상과 비교하려고하면 'TypeError : getAttribute is not thenable'이 나타납니다. 누구나 팁이 있습니까?
클래스 요소 :
'use strict';
var protractor = require('protractor');
var element = protractor.element;
var by = protractor.by;
function Elements() {
return {
getDate: function() {
return element(by.id('visit-date'));
}
};
}
module.exports = Elements;
클래스 어설 션 :
'use strict';
var Elements = require('./elements');
var protractor = require('protractor');
var browser = protractor.browser;
function Assertions() {
var elements = new Elements();
return {
assertDate: function() {
var dateElement = elements.getDate();
return expect(dateElement.getAttribute('value')).to.eventually.contain('2015-08-26');
},
assertUpdatedTexts: function() {
return this.assertDate();
}
};
}
module.exports = Assertions;
감사합니다 !
문제에 대해 우리는 주장 날짜 함수 변경을 수정했습니다.
assertDate: function(datetime) {
var dateElement = elements.getDate();
var dateValue = dateElement.getAttribute('value');
return expect(dateValue).to.eventually.contain(datetime.format('YYYY-MM-DD'));
},
문자열이 아닌 적절한 날짜와 같은 날짜 매개 변수를 전달합니다.
var VISIT_DATETIME = moment({y: 2016, M: 7, d: 21, h: 12, m: 20});
var VISIT_DURATION = moment.duration({hours: 3, minutes: 20});
어쨌든 도움을 주셔서 감사합니다!
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다