0
我正在处理角应用自动化,我已经写了一个通用函数,需要在我的测试中的多个地方调用以获取动态生成的表单ID。此功能总是返回我{[PromiseStatus]: “待定”}“。]错误需要浏览器url substring功能
CommonFunctions.js
var common_functions = function() {
this.getFormId = function() {
// var url = "http://localhost/test/#/submission/207/form/1976";
return browser.getCurrentUrl().then(function(url){
return url.substr(-4);
});
}
};
现在,这个功能正在pageobject文件用得到该元素定位
PageObject文件:
var general_information = function() {
this.street1 = function(field1) {
var formid = common_functions.getFormId();
var street="fieldValue.street1_".concat(formid);
element(by.model(street)).sendKeys(field1);
}
最后,当我在我的测试脚本中调用此函数时,出现错误。
测试脚本:
it("Verify that user is able to fill values in general information", function(){
general_information.street1('Street Victoria');
general_information.zipCode('1004');
});
例外出现:
Failed: invalid element state: Failed to execute 'querySelectorAll' on 'Document': '[ng-model="fieldValue.street1_Promise::1833 {[[PromiseStatus]]: "pending"}"]' is not a valid selector.
(Session info: chrome=50.0.2661.94)
(Driver info: chromedriver=2.21.371459 (36d3d07f660ff2bc1bf28a75d1cdabed0983e7c4),platform=Windows NT 6.1 SP1 x86_64)
有人可以帮我这个我在哪里做错了?
谢谢alecxe ...此作品!我意识到Promise没有得到解决,但没有做出正确的修改! – AnuragT