У меня проблема с доступом к коду, который я могу использовать через консоль браузера.
В моем случае это функция Tawk_Api Tawk_API.hideWidget();
Я пытался использовать браузер для выполнения и вызова, но в выводе говорилось, что Tawk.Api не определено
Пример кода
var expect = require('chai').expect;
function HideTawk (){
Tawk_API.hideWidget();
}
describe('', function() {
it('should be able to filter for commands', function () {
browser.url('https://arutech.ee/en/windows-price-request');
$('#uheosaline').click();
browser.execute(HideTawk());
var results = $$('.commands.property a').filter(function (link) {
return link.isVisible();
});
expect(results.length).to.be.equal(3);
results[1].click();
expect($('#getText').getText()).to.be.equal('GETTEXT');
});
});
Рабочая фиксированная функция:
function HideTawk (){
return new Promise(function(resolve, reject) {
Tawk_API.hideWidget();
})
}
И browser.execute(HideTawk())
это ошибка, она должна быть browser.call(HideTawk());
документы: http://webdriver.io/api/utility/call.html