mirror of
https://github.com/DeviceFarmer/stf.git
synced 2026-04-24 01:35:14 +02:00
Update protractor jasmine tests
This commit is contained in:
@@ -2,8 +2,12 @@
|
||||
var LoginPage = require('./e2e/login')
|
||||
var BrowserLogs = require('./e2e/helpers/browser-logs')
|
||||
//var FailFast = require('./e2e/helpers/fail-fast')
|
||||
var HtmlReporter = require('protractor-html-screenshot-reporter')
|
||||
var jasmineReporters = require('jasmine-reporters')
|
||||
var WaitUrl = require('./e2e/helpers/wait-url')
|
||||
var HTMLReport = require('protractor-html-reporter-2')
|
||||
|
||||
var reportsDirectory = './test-results/reports-protractor'
|
||||
var dashboardReportDirectory = reportsDirectory + '/dashboardReport'
|
||||
|
||||
module.exports.config = {
|
||||
baseUrl: process.env.STF_URL || 'http://localhost:7100/#!/',
|
||||
@@ -17,7 +21,7 @@ module.exports.config = {
|
||||
params: {
|
||||
login: {
|
||||
url: process.env.STF_LOGINURL || process.env.STF_URL ||
|
||||
'http://localhost:7120',
|
||||
'http://localhost:7100',
|
||||
username: process.env.STF_USERNAME || 'test_user',
|
||||
email: process.env.STF_EMAIL || 'test_user@login.local',
|
||||
password: process.env.STF_PASSWORD,
|
||||
@@ -34,7 +38,7 @@ module.exports.config = {
|
||||
capabilities: {
|
||||
browserName: 'chrome',
|
||||
chromeOptions: {
|
||||
args: ['--test-type'] // Prevent security warning bug in ChromeDriver
|
||||
args: ['--test-type --no-sandbox'] // Prevent security warning bug in ChromeDriver
|
||||
}
|
||||
},
|
||||
chromeOnly: true,
|
||||
@@ -45,16 +49,60 @@ module.exports.config = {
|
||||
|
||||
this.waitUrl = WaitUrl
|
||||
|
||||
jasmine.getEnv().addReporter(new HtmlReporter({
|
||||
baseDirectory: './res/test/test_out/screenshots'
|
||||
jasmine.getEnv().addReporter(new jasmineReporters.JUnitXmlReporter({
|
||||
consolidateAll: true,
|
||||
savePath: reportsDirectory + '/xml',
|
||||
filePrefix: 'xmlOutput'
|
||||
}))
|
||||
|
||||
var fs = require('fs-extra')
|
||||
if (!fs.existsSync(dashboardReportDirectory)) {
|
||||
fs.mkdirs(dashboardReportDirectory)
|
||||
}
|
||||
|
||||
jasmine.getEnv().addReporter({
|
||||
specDone: function(result) {
|
||||
if (result.status === 'failed') {
|
||||
browser.getCapabilities().then(function(caps) {
|
||||
var browserName = caps.get('browserName')
|
||||
|
||||
browser.takeScreenshot().then(function(png) {
|
||||
var stream = fs.createWriteStream(dashboardReportDirectory + '/' +
|
||||
browserName + '-' + result.fullName + '.png')
|
||||
stream.write(new Buffer(png, 'base64'))
|
||||
stream.end()
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
afterEach(function() {
|
||||
BrowserLogs({expectNoLogs: true})
|
||||
//FailFast()
|
||||
})
|
||||
},
|
||||
onComplete: function() {
|
||||
var browserName, browserVersion, platform, testConfig
|
||||
var capsPromise = browser.getCapabilities()
|
||||
|
||||
capsPromise.then(function(caps) {
|
||||
browserName = caps.get('browserName')
|
||||
browserVersion = caps.get('version')
|
||||
platform = caps.get('platform')
|
||||
|
||||
testConfig = {
|
||||
reportTitle: 'Protractor Test Execution Report',
|
||||
outputPath: dashboardReportDirectory,
|
||||
outputFilename: 'index',
|
||||
screenshotPath: './',
|
||||
testBrowser: browserName,
|
||||
browserVersion: browserVersion,
|
||||
modifiedSuiteName: false,
|
||||
screenshotsOnlyOnFailure: true,
|
||||
testPlatform: platform
|
||||
}
|
||||
new HTMLReport().from(reportsDirectory + '/xml/xmlOutput.xml', testConfig)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user