
[英]Writing e2e tests using the selenium-webdriver package for WebDriverJS for node
[英]what are the differences (and when to use) selenium-webdriver over webdriverjs?
我是一名使用selenium-webdriver的经验专家。 我正在探索更多关于如何测试javascript应用程序的选项,我找到了webdriverJs。 不幸的是,我不明白这两者之间有什么区别(2)。
有人可以解释什么时候使用selenium-webdriver over webdriverJs和好处?
谢谢!
他们做的基本相同。 主要区别在于您如何编写测试。 selenium-webdriver是承诺和回调的混合--WebdriverIO只适用于promises,可以单独使用或与内部testrunner一起使用。 还有一个名为wd.js的库。 以下是三种口味的例子。
硒webdriverjs:
driver.get('http://www.google.com');
driver.findElement(webdriver.By.id('q')).sendKeys('webdriver');
driver.findElement(webdriver.By.id('btnG')).click();
WD.js
browser
.get("http://www.google.com")
.elementById('q')
.sendKeys('webdriver')
.elementById('btnG')
.click()
browser
.url('http://google.com')
.setValue('#q','webdriver')
.click('#btnG')
WebdriverIOs的概念是将所有协议命令包装在方便的动作命令中,但它几乎也实现了所有协议命令,因此您可以使用标准的JSONWire协议命令执行相同的操作。
browser
.url('http://google.com')
.element('#q').then(function(res) {
return browser.elementIdValue(res.value.ELEMENT, 'webdriver');
})
.element('#btnG').then(function(res) {
return browser.elementIdClick(res.value.ELEMENT);
});
WebDriverJS和selenium-webdriver都是Webdriver API的JavaScript绑定。
唯一的区别是selenium-webdriver是由selenium团队维护的官方实现,而WebDriverJS则不是。 WebDriverJS由第三方维护。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.