如何在WebdriverIO中实时运行命令?

时间:2017-04-20 09:07:25

标签: node.js selenium selenium-chromedriver webdriver-io

我正在使用带有Node.js的WebdriverIO。

我想要运行一个不容易的场景,我不想每次都重新开始,因为场景以登录开始并需要时间。

所以我正在寻找的是从某一点开始一次运行1个命令的方法。

有可能吗?

2 个答案:

答案 0 :(得分:0)

我现在正在做的是设置调试器并调试脚本:

client
  .init()
  .windowHandleMaximize()
  .url('URL')
  .setValue('#email_login', 'EMAIL')
  .setValue('#password_login', 'PASSWORD')
  .submitForm('#login_form')
  .click('li=New (Empty)')
  .then(() => {
    console.log(client) //set debugger here
  })
  .end()

然而,这种方法的问题在于,如果我有异步功能,我就无法使用我的IDE(WebStorm)正确运行它。

例如,如果我运行

client.selectByAttribute('data-id', 'library-characters')
  .then(function(aa){
    console.log(aa)
  })

console.log(client)上的断点处没有任何反应时,我得到的唯一记录就是这个调用的结果是一个承诺。

答案 1 :(得分:0)

答案是browser.debug()在此解释: http://webdriver.io/api/utility/debug.html