我的测试期望值有误
我遇到此错误
[08:41:37] E/launcher - expected { Object (browser_, then, ...) } to equal true [08:41:37] E/launcher - AssertionError: expected { Object (browser_, then, ...) } to equal true at role.element.getText.then (/Users/jburquez/akamai/ConsoleUI/tests/e2e/console_bdd/steps/manage_agents_steps.js:114:109) at elementArrayFinder_.then (/Users/jburquez/akamai/ConsoleUI/node_modules/protractor/built/element.js:804:32) at ManagedPromise.invokeCallback_ (/Users/jburquez/akamai/ConsoleUI/node_modules/selenium-webdriver/lib/promise.js:1376:14) at TaskQueue.execute_ (/Users/jburquez/akamai/ConsoleUI/node_modules/selenium-webdriver/lib/promise.js:3084:14) at TaskQueue.executeNext_ (/Users/jburquez/akamai/ConsoleUI/node_modules/selenium-webdriver/lib/promise.js:3067:27) at asyncRun (/Users/jburquez/akamai/ConsoleUI/node_modules/selenium-webdriver/lib/promise.js:2927:27) at /Users/jburquez/akamai/ConsoleUI/node_modules/selenium-webdriver/lib/promise.js:668:7 at process._tickCallback (internal/process/next_tick.js:68:7) [08:41:37] E/launcher - Process exited with error code 199 [08:41:37] '<anonymous>' errored after 1.42 min [08:41:37] Error in plugin "gulp-protractor" Message: protractor exited with code 199 Details: domain: [object Object] domainThrown: true
这是我在步骤上的代码
Then('Validate role {editrole} is selected', { timeout:30 * 1000 }, (editrole) => { var agentRoles = element.all(by.repeater('ctrl.roles')); agentRoles.each((role) => { return role.element(by.xpath(".//div[@class='md-whiteframe-1dp outset inset']/md-checkbox")).getText() .then((roleSelected) => { if (editrole === roleSelected) { expect(element(".//div[@class='md-whiteframe-1dp outset inset']/md-checkbox").isSelected()).to.be.equal(true); } }); }); });
我想做的是验证是否检查了一个元素,因此阅读另一项建议我看到
.isSelected()
是对此的最佳选择,但是我不确定为什么会引发此错误。
希望你能帮助我!
我的测试期望值有一个错误,我得到了这个错误[08:41:37] E /启动程序-期望{对象(浏览器,然后,...)}等于true [08:41: 37] E / launcher-AssertionError:预期的{...
似乎您正在尝试将对象与布尔值进行比较。您必须兑现承诺,否则必须使用“最终”(如果您使用“ chai”作为断言库)。下面的示例: