我正在尝试为Javascript自动化测试选择一个工具。
到目前为止,我使用Java语言中的Selenium WebDriver和TestNG来构建我的测试,但是我被要求搜索JavaScript解决方案来编写测试。
当然,我首先想到的是迁移到WebDriverJs --它应该类似于我的Java测试。
但是,我还发现了另一个框架:WebdriverIO。我找不到任何可以用WebdriverIO做的事情,而用WebDriverJs是不可能的。
请帮助我了解其中的不同之处,这样我才能选择适合我的框架。
发布于 2015-08-03 17:11:57
"WebdriverJS“是selenium-webdriver的另一个名称,它是Selenium团队对JSONWire (WebDriver Wire) Protocol的官方Node.JS实现。
"WebdriverIO"是Christian Bromann (SO profile)对JSON Wire Protocol的独立实现,他在Sauce Labs工作,Sauce Labs是一个基于云的跨浏览器测试提供商。WebdriverIO使用简洁的语法将其较低级别的请求封装为有用的命令:
client
.url('http://google.com')
.setValue('#q','webdriver')
.click('#btnG')
使用selenium-webdriver进行同样的测试要复杂得多:
driver.get('http://www.google.com');
driver.findElement(webdriver.By.id('q')).sendKeys('webdriver');
driver.findElement(webdriver.By.id('btnG')).click();
发布于 2014-12-26 18:25:15
WebdriverJS
实际上是WebdriverIO
与测试运行器一起打包成节点包格式的东西。对于WebdriverIO来说,并没有什么不能用WebdriverJS完成的事情。您可以将WebdriverJS与Jasmine或Mocha一起使用。
当然,WebdriverJS和WebdriverIO中的包装器有不同的标签,但这不会改变它们实现Webdriver有线协议的方式。
如果你想测试基于AngularJS的应用程序,在Protractor中有一个更简化的WebDriver线路协议实现(它也是作为节点包分发的)。
https://stackoverflow.com/questions/27174083
复制相似问题