chore(e2e): update to latest protractor version (#2608)

* chore(e2e): update to latest protractor version

* Updates to the latest Protractor version, which now uses Selenium V3
* The new types for Protractor v5 include the fix for the missing `chord` function (See https://github.com/DefinitelyTyped/DefinitelyTyped/commit/123690bb2e0f9dac2371084369a8ecf8976cbb34)
* Methods like `innerHtml` have been removed in Protractor v5 (https://github.com/angular/protractor/blob/master/CHANGELOG.md)

* Test later chromedriver version
This commit is contained in:
Paul Gschwendtner
2017-01-13 23:59:01 +01:00
committed by tinayuangao
parent 7727387755
commit 4ab6f30f50
5 changed files with 9 additions and 14 deletions
+1
View File
@@ -33,3 +33,4 @@
npm-debug.log
testem.log
/.chrome
yarn.lock
+1 -1
View File
@@ -102,6 +102,6 @@ describe('dialog', () => {
// TODO(crisbeto): should be moved to a common util. copied from the menu e2e setup.
function expectFocusOn(el: any): void {
expect(browser.driver.switchTo().activeElement().getInnerHtml()).toBe(el.getInnerHtml());
expect(browser.driver.switchTo().activeElement().getId()).toBe(el.getId());
}
});
+1 -2
View File
@@ -39,8 +39,7 @@ export class MenuPage {
// TODO(kara): move to common testing utility
expectFocusOn(el: any): void {
expect(browser.driver.switchTo().activeElement().getInnerHtml())
.toBe(el.getInnerHtml());
expect(browser.driver.switchTo().activeElement().getId()).toBe(el.getId());
}
expectMenuPresent(expected: boolean) {
+4 -6
View File
@@ -48,12 +48,10 @@
"@types/merge2": "0.0.28",
"@types/minimist": "^1.1.28",
"@types/node": "^6.0.34",
"@types/protractor": "^4.0.0",
"@types/run-sequence": "0.0.27",
"@types/rx": "^2.5.33",
"@types/selenium-webdriver": "2.53.36",
"axe-core": "^2.0.7",
"axe-webdriverjs": "^0.4.0",
"axe-webdriverjs": "^0.5.0",
"conventional-changelog": "^1.1.0",
"dgeni": "^0.4.2",
"dgeni-packages": "^0.16.2",
@@ -91,16 +89,16 @@
"merge2": "^1.0.2",
"minimist": "^1.2.0",
"node-sass": "^3.4.2",
"protractor": "^4.0.8",
"protractor": "^5.0.0",
"resolve-bin": "^0.4.0",
"run-sequence": "^1.2.2",
"sass": "^0.5.0",
"selenium-webdriver": "2.53.3",
"selenium-webdriver": "^3.0.1",
"strip-ansi": "^3.0.0",
"stylelint": "^7.7.0",
"symlink-or-copy": "^1.0.1",
"travis-after-modes": "0.0.7",
"ts-node": "^0.7.3",
"ts-node": "^2.0.0",
"tslint": "^3.13.0",
"typedoc": "^0.5.1",
"typescript": "~2.0.10",
+2 -5
View File
@@ -41,6 +41,8 @@ if (process.env['TRAVIS']) {
config.sauceKey = key;
config.capabilities = {
'browserName': 'chrome',
'version': 'latest',
"chromedriverVersion": "2.26",
'tunnel-identifier': process.env['TRAVIS_JOB_ID'],
'build': process.env['TRAVIS_JOB_ID'],
'name': 'Material 2 E2E Tests',
@@ -53,11 +55,6 @@ if (process.env['TRAVIS']) {
'recordVideo': false,
'recordScreenshots': false
};
// Because Protractor runs selenium instances concurrently in the CI and each instance
// will create a bloat of logs we don't want to show any info messages.
// Until protractor#1451 is solved, manually disable all info messages.
require('protractor/built/logger').Logger.prototype.info = () => {};
}