jasminewd2-retry
v0.0.6
Published
WebDriverJS adapter for Jasmine2.
Downloads
12
Maintainers
Readme
jasminewd
Adapter for Jasmine-to-WebDriverJS. Used by Protractor.
Important: There are two active branches of jasminewd.
- master is an adapter for Jasmine 1.3, and uses the package minijasminenode. It is published to npm as
jasminewd
. - jasminewd2 is an adapter for Jasmine 2.x, and uses the package jasmine. It is published to npm as
jasminewd2
.
Features
Automatically makes tests asynchronously wait until the WebDriverJS control flow is empty.
If a
done
function is passed to the test, waits for both the control flow and until done is called.Enhances
expect
so that it automatically unwraps promises before performing the assertion.
Installation
npm install jasminewd2
Usage
Assumes selenium-webdriver as a peer dependency.
// In your setup.
var JasmineRunner = require('jasmine');
var jrunner = new JasmineRunner();
require('jasminewd2');
global.driver = new webdriver.Builder().
usingServer('http://localhost:4444/wd/hub').
withCapabilities({browserName: 'chrome'}).
build();
jrunner.projectBaseDir = '';
jrunner.execute(['**/*_spec.js']);
// In your tests
describe('tests with webdriver', function() {
it('will wait until webdriver is done', function() {
// This will be an asynchronous test. It will finish once webdriver has
// loaded the page, found the element, and gotten its text.
driver.get('http://www.example.com');
var myElement = driver.findElement(webdriver.By.id('hello'));
// Here, expect understands that myElement.getText() is a promise,
// and resolves it before asserting.
expect(myElement.getText()).toEqual('hello world');
});
})