WebdriverIO与Selenium Webdriver(Java方法)

use*_*569 7 java node.js selenium-webdriver webdriver-io

有关WebdriverIO与Selenium的反馈意见吗?我处于两难境地,想要消除这种困惑.

我花了几天时间学习WebdriverIO并做了一些实践,但得出的结论还不够成熟.调试确实是一个挑战.

And*_*gan 12

WebdriverIO是(Selenium 2.0)WebDriver API的JavaScript/nodejs实现 - 其中之一(Selendroid,Protractor等)正如规范所述:

WebDriver是一个远程控制界面,可以对用户代理进行内省和控制.它提供了一种平台和语言中立的有线协议,作为进程外程序远程指示Web浏览器行为的一种方式.

如果使用Java,则将使用WebDriverJava实现.其中语言,并实现你选择,是你的,你的技能,和你的团队的技能.

虽然我非常怀疑WebdriverIO"还不够成熟".WebDriver是一个很好的规范,具有许多强大的实现,但它经常被滥用.当然,就新手来说,很大比例的"随机"失败是他们的测试代码中完全可以避免的竞争条件.

  • @ user3559569当我说我明白你的沮丧时,请相信我.我自己开始使用Java Selenium.安德鲁所指的竞争条件是Javascript使用回调和承诺.WebdriverIO是一个了不起的工具,实际上包括广泛的调试和日志工具.我首先在wdio.conf.js中设置logLevel.此外,WebdriverIO有一个调试命令,您可以使用它来暂停代码的执行并检查浏览器*http://webdriver.io/api/utility/debug.html (2认同)

小智 5

所以我们使用 Java - Selenium、Serenity、JBehave 测试框架,然后是 Javascript WebdriverIO、Mocha 和 Yodda。

我认为 Java 方法更容易理解和调试。更容易理解,因为网站测试大多是连续的,你从一个页面导航到另一个页面,点击一个按钮,然后填写一张表格。它使您免于使用 JS 替代方案遇到的任何异步问题。调试非常好,因为你有所有的类和固定的结构。

第二个项目在后端使用 NodeJS,因此集成测试框架要容易得多。测试框架成为部署/开发过程的一部分。