์๋
ํ์ธ์,
Firefox๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํ ๋ ์ ์๋น์ค๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค: GeckoDriverService๊ฐ ํ์๋ฉ๋๋ค. ๋ด๊ฐ ์์ ์ฐจ๋ฆฐ ๊ฒ์ seleniumServerJar๋ฅผ ์ฌ์ฉํ์ฌ ์
๋ ๋ ์๋ฒ๋ฅผ ์ด๊ณ ๋ซ์ ๋์
๋๋ค. seleniumAddress๋ฅผ ์ฌ์ฉํ๋ฉด ๋ชจ๋ ๊ฒ์ด ์๋ฒฝํ๊ฒ ์๋ํฉ๋๋ค. seleniumServerJar์ firefox๋ฅผ ํจ๊ป ์ฌ์ฉํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น?
๋
ธ๋ ๋ฒ์ : 6.9.5
๊ฐ๋๊ธฐ: 5.2.0
์
๋ ๋: 3.6
๋๋ง๋ฑ๋ถ์ด ๋๋ผ์ด๋ฒ: 0.19
OS: ๋งฅ
@adityagautam ์๋ ํ์ธ์, ๊ฐ๋๊ธฐ ๊ตฌ์ฑ ํ์ผ์ ๊ณต์ ํ ์ ์์ต๋๊น?
@Xotabu4 ์ด ๋ฌธ์ ๋ฅผ
`let HtmlScreenshotReporter = require('๊ฐ๋๊ธฐ-jasmine2-์คํฌ๋ฆฐ์ท-๋ฆฌํฌํฐ');
require("๋ฐ๋ฒจ ๋ฑ๋ก");
exports.config = {`
framework: 'jasmine2',
rootElement: 'body',
seleniumServerJar:'./node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.6.0.jar',
geckoDriver: './node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver',
capabilities: {
browserName: 'firefox',
acceptSslCerts: true,
trustAllSSLCertificates: true,
acceptInsecureCerts:true,
ACCEPT_SSL_CERTS:true,
},
baseUrl: 'https://shared.qa.com',
suites: {
create: 'tests/*Create*Spec.js',
activate: 'tests/*Activate*Spec.js'
},
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 3600000,
isVerbose: true
},
getPageTimeout: 120000,
allScriptsTimeout: 3600000,
delayBrowserTimeInSeconds: 0,
beforeLaunch: function() {
return new Promise(function(resolve){
reporter.beforeLaunch(resolve);
});
},
afterLaunch: function(exitCode) {
return new Promise(function(resolve){
reporter.afterLaunch(resolve.bind(this, exitCode));
});
},
onPrepare: function() {
require("babel-register");
let origFn = browser.driver.controlFlow().execute;
browser.driver.controlFlow().execute = function () {
let args = arguments;
origFn.call(browser.driver.controlFlow(), function () {
return protractor.promise.delayed(this.delayBrowserTimeInSeconds * 100);
});
return origFn.apply(browser.driver.controlFlow(), args);
};
jasmine.getEnv().addReporter(reporter);
let getScreenSize = function () {
return browser.driver.executeScript(function () {
return {
width: window.screen.availWidth,
height: window.screen.availHeight
};
});
};
getScreenSize().then(function (screenSize) {
browser.driver.manage().window().setSize(screenSize.width, screenSize.height);
});
let jasmineReporters = require('jasmine-reporters');
let junitReporter = new jasmineReporters.JUnitXmlReporter({
consolidateAll: false,
savePath: 'xml_Reports',
filePrefix: '-xmloutput',
});
jasmine.getEnv().addReporter(junitReporter);
}};
`
์๋ ํ์ธ์, ์ด๊ฒ์ #4501๊ณผ ๊ฐ์ ๋ฌธ์ ์ ๋๋ค.
#4502(768fd393d1084a8da0ec6eeaa57 ์๋ฃ)์ ์ด์ ๋ํ ๊ฐ๋จํ ์๋ฃจ์ ์ด ์ด๋ฏธ ์์ง๋ง ํต์ฌ ํ์ ๋๊ตฐ๊ฐ๊ฐ PR์ ๊ฒํ ํ๊ณ ๋ณํฉํด์ผ ํฉ๋๋ค. ๊ณง, gecko ๋๋ผ์ด๋ฒ๊ฐ ์ ๊ณต๋๋ ์ ๋ ๋ ์์ ๋ช ๋ น์ ๋ํ args ๋ถ๋ถ์ด ๋๋ฝ๋์์ต๋๋ค.
lib/driverProviders/ local.ts ์์ ๋ค์์ด ๋๋ฝ๋์์ต๋๋ค.
if (this.config_.geckoDriver) {
serverConf.jvmArgs.push('-Dwebdriver.gecko.driver=' + this.config_.geckoDriver);
}
chromeDriver์ ๋ํด ๋์ผํ ์์ ์ ์ํํ ํ:
if (this.config_.chromeDriver) {
serverConf.jvmArgs.push('-Dwebdriver.chrome.driver=' + this.config_.chromeDriver);
}
๋๊ตฐ๊ฐ ์ด PR์ ๊ณง ๊ฒํ ํ๊ณ ๋ณํฉํ์ฌ ์ด ์ฑ๊ฐ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. :)
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์๋ ํ์ธ์, ์ด๊ฒ์ #4501๊ณผ ๊ฐ์ ๋ฌธ์ ์ ๋๋ค.
#4502(768fd393d1084a8da0ec6eeaa57 ์๋ฃ)์ ์ด์ ๋ํ ๊ฐ๋จํ ์๋ฃจ์ ์ด ์ด๋ฏธ ์์ง๋ง ํต์ฌ ํ์ ๋๊ตฐ๊ฐ๊ฐ PR์ ๊ฒํ ํ๊ณ ๋ณํฉํด์ผ ํฉ๋๋ค. ๊ณง, gecko ๋๋ผ์ด๋ฒ๊ฐ ์ ๊ณต๋๋ ์ ๋ ๋ ์์ ๋ช ๋ น์ ๋ํ args ๋ถ๋ถ์ด ๋๋ฝ๋์์ต๋๋ค.
lib/driverProviders/ local.ts ์์ ๋ค์์ด ๋๋ฝ๋์์ต๋๋ค.
chromeDriver์ ๋ํด ๋์ผํ ์์ ์ ์ํํ ํ:
๋๊ตฐ๊ฐ ์ด PR์ ๊ณง ๊ฒํ ํ๊ณ ๋ณํฉํ์ฌ ์ด ์ฑ๊ฐ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. :)