我正在使用webdriver-io测试输入表单,并且如果输入文本不符合指定条件,则希望在制表符时测试工具提示文本的外观。以下是尝试没有成功的原因
var webdriverio = require('webdriverio');
var browser = webdriverio.remote({desiredCapabilities:{browserName: 'phantomjs'} });
...
describe('Test tooltip text', function(){
before(function(){
//return browser.url(site);
});
before(function(){
// return browser.setValue(key, value);
});
it('should display a tooltip text', function(){
broswer.getHTML('body').then(function(form){
form.should.contain('message in tooltip')
});
});// it block ends
});// describe block ends
...
此测试将我重定向到原始表单而没有工具提示。当我尝试在Chrome浏览器中输入此输入表单中的值时,我会看到工具提示。我知道在测试中输入的值是正确的,因为我控制台记录输入并在标签输出后,我看到输入字段样式在HTML中显示为红色。我错过了什么?
答案 0 :(得分:2)
你可以阅读元素的“title”标签,它只是工具提示。
答案 1 :(得分:0)
经过几次尝试,我发现这个解决方案是使用setTimeout捕获工具提示文本。这是我的测试:
...
it('should display a tooltip text', function(){
broswer.getHTML('body').then(function(form, done){
form.should.contain('message in tooltip');
setTimeout(done, 1000);
});
});// it block ends
...
...
我希望这个解决方案对其他人有帮助!