我试图为我的量角器项目做詹金斯整合。我使用量角器,茉莉花来写测试。我使用nodeJs在Visual Studio中配置项目。詹金斯整合到量角器项目
我可以手动运行所有测试。现在,我打算尝试Jenkins集成,以便我的项目可以连续运行。
请给我建议的方式或任何有用的媒体。 我的'RunConf.js'文件如下。我使用这个文件来运行这两个套件。
var Jasmine2HtmlReporter = require('protractor-jasmine2-html-reporter');
exports.config = {
framework: 'jasmine2',
seleniumAddress: 'http://localhost:4444/wd/hub',
capabilities:
{
'browserName': 'chrome',
'shardTestFiles': true,
'maxInstances': 2,
chromeOptions: {
args: ['chrome.switches', '--disable-extensions']
}
},
suites: {
loginpage: 'login.js',
addproduct: 'addproduct.js'
},
//specs: ['addproduct.js'],
jasmineNodeOpts: {
onComplete: null,
isVerbose: false,
includeStackTrace: true,
showColors: true,
defaultTimeoutInterval: 30000
},
onPrepare: function() {
browser.driver.ignoreSynchronization = true;
return new Promise(function(fulfill, reject) {
browser.getCapabilities().then(function(value) {
reportName = value.get(Math.random(8,2)) + '_' + value.get('browserName') + '_' + Math.floor(Math.random() * 1E16);
jasmine.getEnv().addReporter(
new Jasmine2HtmlReporter({
//cleanDestination: false,
savePath: 'target/',
docTitle: 'Web UI Test Report',
screenshotsFolder: 'image',
//takeScreenshots: true,
takeScreenshotsOnlyOnFailures: true,
consolidate: true,
consolidateAll: true,
// preserveDirectory: true,
//fixedScreenshotName: true,
filePrefix: reportName + ".html"
})
);
fulfill();
});
});
},
afterLaunch: function afterLaunch() {
var fs = require('fs');
var output = '';
fs.readdirSync('target/').forEach(function(file) {
if (!(fs.lstatSync('target/' + file).isDirectory()))
output = output + fs.readFileSync('target/' + file);
});
fs.writeFileSync('target/ConsolidatedReport.html', output, 'utf8');
}
}
如果您自己尝试设置,并且在此处详细发布任何*特定*问题/问题,则您更有可能得到回复。你的问题涵盖了一些可能在某些地方非常主观的主题,并且一般来说范围很大/很广泛,使得几乎不可能回答。 – Gunderson