我尝试使用以下格式验证元素,但无法执行。
SD中的chai声明:var chai = require('chai');
var chaiAsPromised = require('chai-as-promised');
var expect = chai.expect;
chai.use(chaiAsPromised);
元素定义=> searchResult:element(by.className('class_name'))
代码=> (searchResult.isPresent())。should.equal(true); &错误消息=> “无法读取属性'等于'未定义”
代码=> expect(searchResult.isPresent())。toBe.equal(true); &错误消息=> “无效的Chai属性:toBe。您的意思是”到“
代码=> expect(searchResult.isPresent())。to.equal(true); &错误消息=> “expected {Object(flow_,stack_,...)}等于true”
任何人都可以帮我找到这个元素。
答案 0 :(得分:3)
如果您使用CucumberJS + Protractor + Chai + Chai-as-promise,您应该按照以下方式写下您的期望
expect(searchResult.isPresent()).to.eventually.equal(true);
您需要添加eventually
,因为您正在使用promisses