Introducing
The Slant team built an AI & it’s awesome
Find the best product instantly
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now
4.7 star rating
0
What is the best alternative to Leadfoot -> Intern?
Ad
Ad
webdriver-sync
All
3
Experiences
Pros
2
Cons
1
Top
Con
Difficult to install on Windows
Due to the dependencies for installing on Windows, the process can be tedious (Requires Python 2.7 and Visual Studio).
See More
Top
Pro
Synchronous. No promises or callbacks needed.
webdriver-sync avoids this browser.get("http://foo.html", function() { browser.title(function(err, title) { assert.ok(~title.indexOf('foo title'), 'Wrong title!'); browser.elementById('i am a link', function(err, el) { browser.clickElement(el, function() { browser.eval("window.location.href", function(err, href) { assert.ok(~href.indexOf('foo title 2')); browser.quit(); }); }); }); }); }); in favor of this - completely synchronous API! No promises or callbacks needed: driver.get("http://foo.html"); title = driver.getTitle(); link = driver.findElement(By.id('i am a link')); link.click(); assert(driver.getCurrentUrl().indexOf('foo title 2') > -1); title.should.equal('foo title'); console.log(title); driver.quit();
See More
Top
Pro
Same API as Selenium Java
If you've used the Selenium API before, you won't have to learn a new API.
See More
Hide
Get it
here
4
0
Nightwatch.js
All
6
Experiences
Pros
4
Cons
2
Top
Pro
You don't have to choose a testing framework
Nightwatch solves the Paradox of Choice among testing frameworks such as Jasmine, Cucumber or Mocha+Chai, by including its own BDD-style assertion library, based on Chai.
See More
Top
Con
No official BDD-style syntax support
See More
Top
Pro
Includes its own testing framework / assertions library
See More
Top
Con
Includes its own testing framework / assertions library
Unlike WebdriverIO, which lets you use various test frameworks and assertion libraries (e.g. Jasmine, Cucumber, Mocha + Chai), Nightwatch comes with its own BDD-style interface for performing assertions, based on Chai. Here's a simple test example: module.exports = { 'Demo test Google' : function (browser) { browser .url('http://www.google.com') .waitForElementVisible('body', 1000) .setValue('input[type=text]', 'nightwatch') .waitForElementVisible('button[name=btnG]', 1000) .click('button[name=btnG]') .pause(1000) .assert.containsText('#main', 'Night Watch') .end(); } };
See More
Top
Pro
Test organization is out of the box
Supports page object model, custom commands, custom assertions, and globals.js.
See More
Top
Pro
3rd party integration with Cucumber
Though Cucumber is not officially supported, Nightwatch can be used with Cucumber.
See More
Hide
Get it
here
31
3
WebdriverIO
All
13
Experiences
Pros
10
Cons
3
Top
Pro
Works with any testing framework or assertion library
WebdriverIO lets you use your favorite testing framework (Jasmine, Mocha, Cucumber) and assertion library (Chai for Mocha). Other projects implement their own testing and assertion APIs, for example Nightwatch, Intern. It should be mentioned though that v4.2.16 has an incompatibility with at least tap v7.1.2: stdout/stderr written during a run gets lost.
See More
Top
Con
Must run with WDIO to debug
Tasks written in this beautiful Selenium API can only be debugged using the provided WDIO task runner. You can't set breakpoints within tasks, but you can have WDIO pause the run between Selenium commands.
See More
Top
Pro
Used by Chimp.js
Chimp.js, is an emerging web application test framework that implements easy sync tests using WebdriverIO, CucumberJS and Chai. Features include: synchronous style built-in "widget framework" (an implementation of the PageObject pattern) automatically downloads dependencies (ChromeDriver, PhantomJS etc.) works with SauceLabs and BrowserStack (CrossBrowserTesting TBD) automatically takes screenshots on failures works on Windows in addition to Linux and OS X automatically produces boilerplate code for step definitions, which you can copy, paste and edit file watcher reuses the browser sessions and can run only the tests you tag, to maximize development speed
See More
Top
Con
Selenium server must be started independently
selenium-webdriverjs starts the Selenium server automatically, and actually manages to achieve a faster startup time (4 seconds vs. 5.5) than WebdriverIO.
See More
Top
Pro
Excellent API documentation
See More
Top
Con
Have no docs for latest version (4.0.5)
See More
Top
Pro
Synchronous implementation of asynchronous browser commands
So you don't need to worry about promises
See More
Top
Pro
Config file generation wizard
Run wdio config and WebdriverIO will generate a config file for testing locally vs. in the cloud, specifying the test framework (Jasmine, Cucumber, Mocha), where to find tests and store screenshots etc.
See More
Top
Pro
Allows you to do visual regression tests using WebdriverCSS
WebdriverIO has a plugin called WebdriverCSS that allows you to do cross visual platfrom/browser tests with an integration to Applitools.
See More
Top
Pro
Provides plugins for gulp, grunt and other
WebdriverIO is accessible via gulp and grunt and even has a Sublime Text plugin for autocompletion.
See More
Top
Pro
Simpler syntax than selenium-webdriverjs and WD.js
selenium-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() WebdriverIO: client .url('http://google.com') .setValue('#q','webdriver') .click('#btnG')
See More
Top
Pro
Used by Meteor's Velocity test runner
If you develop web applications with Meteor.js, you might want to use the xlovio:webdriver wrapper, because it's the Selenium binding behind the preferred testing framework (Chimp) promoted by the Velocity (Meteor's official testing framework) team for using BDD via Cucumber.
See More
Top
Pro
Selenium Server need not be started independently
Service is provided by WebdriverIO which over comes the con of starting selenium server independently. Reference: http://webdriver.io/guide/services/selenium-standalone.html
See More
Hide
See All
Experiences
Get it
here
40
9
WD.js
All
3
Experiences
Pros
1
Cons
2
Top
Pro
Cleaner and more concise code than WebdriverJS
There is no need to pass the 'driver' instance around, and not as many parentheses. Using WD.js function login(username, password) { return this .waitForElementByCss('.loginForm', asserters.isDisplayed, seconds(explicit_wait)) .elementById('emailAddress').sendKeys(username) .elementById('password').sendKeys(password) .elementById('signInButton').click() } Using WebDriverJS function login(driver, username, password) { driver.wait(until.elementIsVisible(driver.findElement({css: '.loginForm'})), seconds(explicit_wait)); driver.findElement({id: 'emailAddress'}).sendKeys(username); driver.findElement({id: 'password'}).sendKeys(password); driver.findElement({id: 'signInButton'}).click(); }
See More
Top
Con
Dropped by Intern
Intern v1 used WD.js, but they dropped it in favor of developing Leadfoot.
See More
Top
Con
Less activity than WebdriverIO
WebdriverIO issues: 34 open, 507 closed. First release May 2012 at v0.6 WD.js issues: 18 open, 216 closed. First release: April 2011
See More
Hide
Get it
here
1
3
Built By the Slant team
Find the best product instantly.
4.7 star rating
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now - it's free
{}
undefined
url next
price drop