protractor.conf.js
`const { SpecReporter } = require('jasmine-spec-reporter');
const Jasmine2HtmlReporter = require('protractor-jasmine2-html-reporter');
var jasmineReporters = require('jasmine-reporters');
exports.config = {
baseurl:'https://consumertst.workpartners.com/login.html',
allScriptsTimeout: 60000,
getPageTimeout: 60000 ,
ignoreUncaughtExceptions: true,
specs: [
'./e2e/**/*.e2e-spec.ts'
],
/* jvmArgs: ['-Dwebdriver.ie.driver=./IEDriverServer_Win32_3.4.0.exe'],
seleniumAddress: 'http://127.0.0.1:4444/wd/hub',
capabilities: {
'browserName': 'internet explorer',
'version': '11',
'nativeEvents': false,
'unexpectedAlertBehaviour': 'accept',
'ignoreProtectedModeSettings': true,
'disable-popup-blocking': true,
'enablePersistentHover': true
},*/
capabilities: {
'browserName': 'chrome',
'chromeOptions': {'args' : ['incognito']},
},
shardTestFiles: false,
// Maximum number of browser instances that can run in parallel for this
// set of capabilities. This is only needed if shardTestFiles is true.
// Default is 1.
maxInstances: 1,
directConnect: true,
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 2500000,
print: function () { }
},
beforeLaunch: () => {
require('ts-node').register({
project: 'e2e/tsconfig.e2e.json'});
},
onPrepare() {
jasmine.getEnv().addReporter(new SpecReporter({
spec: {
displayStacktrace: true }
}));
jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
savePath: './test/reports/',
screenshotsFolder: 'images',
takeScreenshots: true,
takeScreenshotsOnlyOnFailures: true
}));
jasmine.getEnv().addReporter(new jasmineReporters.JUnitXmlReporter({
consolidateAll: true,
savePath: 'testresults',
filePrefix: 'protractor-test-results',
modifySuiteName: function (generatedSuiteName, suite) {
return 'e2e.' + generatedSuiteName; // whichever prefix you wish to use
}
}));
browser.manage().window().maximize();
browser.manage().timeouts().implicitlyWait(20000);
}
};
`
package.json
``{
"name": "consumer-portal",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"serve": "ng lint && ng serve -o",
"serve.dev": "node set-env.js --env=dev && ng lint && ng serve -o",
"serve.test": "node set-env.js --env=test && ng lint && ng serve -o",
"serve.prod": "node set-env.js --env=prod && ng lint && ng serve -o",
"serve.local": "node set-env.js --env=local && ng lint && ng serve -o",
"serve.staging": "node set-env.js --env=staging && ng lint && ng serve -o",
"build.test-server": "node set-env.js --env=dev && ng build --stats-json",
"build.dev": "update-modules.bat && node set-env.js --env=dev && ng build --env=dev --prod=true --aot=false --stats-json",
"build.test": "node set-env.js --env=test && ng build --env=test --stats-json",
"build.staging": "node set-env.js --env=staging && ng build --env=staging --stats-json",
"build.prod": "node set-env.js --env=prod && ng build --env=prod --stats-json",
"test": "ng lint && ng test",
"ci.test": "ng lint && ng test --singleRun",
"lint": "ng lint",
"e2e": "webdriver-manager update --ignore_ssl && ng lint && ng e2e",
"bundle-report": "webpack-bundle-analyzer dist/stats.json"
},
"private": true,
"dependencies": {
"@angular/animations": "^5.2.10",
"@angular/common": "^5.2.10",
"@angular/compiler": "^5.2.10",
"@angular/core": "^5.2.10",
"@angular/forms": "^5.2.10",
"@angular/http": "^5.2.10",
"@angular/platform-browser": "^5.2.10",
"@angular/platform-browser-dynamic": "^5.2.10",
"@angular/platform-server": "^5.2.10",
"@angular/router": "^5.2.10",
"classlist.js": "^1.1.20150312",
"core-js": "^2.4.1",
"ng-circle-progress": "^0.9.9",
"ngx-logger": "^3.0.0-rc1",
"rxjs": "^5.5.10",
"web-animations-js": "^2.3.1",
"zone.js": "0.8.12"
},
"devDependencies": {
"@angular-devkit/schematics": "^0.5.7",
"@angular/cli": "^1.7.4",
"@angular/compiler-cli": "^5.2.10",
"@angular/language-service": "^5.2.10",
"@schematics/angular": "^0.5.7",
"@types/jasmine": "2.5.45",
"@types/node": "8.0.53",
"autoprefixer": "^6.5.3",
"circular-dependency-plugin": "^3.0.0",
"codelyzer": "~3.0.1",
"copy-webpack-plugin": "^4.2.3",
"css-loader": "^0.28.7",
"cssnano": "^3.10.0",
"exports-loader": "^0.6.3",
"file-loader": "^0.10.0",
"html-webpack-plugin": "^2.30.1",
"istanbul-instrumenter-loader": "^2.0.0",
"jasmine-core": "~2.6.2",
"jasmine-reporters": "^2.3.1",
"jasmine-spec-reporter": "~4.1.0",
"karma": "~1.7.0",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^1.2.1",
"karma-ie-launcher": "^1.0.0",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"karma-junit-reporter": "^1.2.0",
"less-loader": "^4.0.5",
"node-sass": "^4.7.2",
"postcss-loader": "^2.0.9",
"postcss-url": "^7.3.0",
"protractor": "^5.1.2",
"protractor-jasmine2-html-reporter": "0.0.7",
"raw-loader": "^0.5.1",
"sass-loader": "^6.0.3",
"source-map-loader": "^0.2.0",
"style-loader": "^0.13.1",
"stylus-loader": "^3.0.1",
"ts-node": "~3.3.0",
"tslint": "~5.3.2",
"typescript": "^2.8.1",
"url-loader": "^0.6.0",
"webpack": "~3.9.0",
"webpack-bundle-analyzer": "^2.11.1",
"webpack-concat-plugin": "1.4.2",
"webpack-dev-server": "~2.9.5"
}
}`
"webdriver-manager@12.0.6" "node@8.9.4" "npm@5.6.0"
