Skip to content

Commit 732d965

Browse files
authored
Add TS_SELENIUM_PROXY_SERVER param to run ChromeDriver with proxy server (#23060)
* Add TS_SELENIUM_PROXY_SERVER param to run ChromeDriver with proxy server Signed-off-by: Dmytro Nochevnov <dnochevn@redhat.com> * Display TS_SELENIUM_PROXY_SERVER value in the test logs Signed-off-by: Dmytro Nochevnov <dnochevn@redhat.com> --------- Signed-off-by: Dmytro Nochevnov <dnochevn@redhat.com>
1 parent 7bbdf64 commit 732d965

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

tests/e2e/constants/CHROME_DRIVER_CONSTANTS.ts

+7-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ export const CHROME_DRIVER_CONSTANTS: {
1313
TS_USE_WEB_DRIVER_FOR_TEST: boolean;
1414
TS_SELENIUM_LAUNCH_FULLSCREEN: boolean;
1515
TS_SELENIUM_REMOTE_DRIVER_URL: string;
16+
TS_SELENIUM_PROXY_SERVER: string;
1617
} = {
1718
/**
1819
* remote driver URL.
@@ -38,5 +39,10 @@ export const CHROME_DRIVER_CONSTANTS: {
3839
/**
3940
* run browser with an enabled or disabled W3C protocol (on Chrome 76 and upper, it is enabled by default), "true" by default.
4041
*/
41-
TS_SELENIUM_W3C_CHROME_OPTION: process.env.TS_SELENIUM_W3C_CHROME_OPTION !== 'false'
42+
TS_SELENIUM_W3C_CHROME_OPTION: process.env.TS_SELENIUM_W3C_CHROME_OPTION !== 'false',
43+
44+
/**
45+
* run browser with proxy settings
46+
*/
47+
TS_SELENIUM_PROXY_SERVER: process.env.TS_SELENIUM_PROXY_SERVER || '',
4248
};

tests/e2e/driver/ChromeDriver.ts

+6
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,16 @@ export class ChromeDriver implements IDriver {
3737
.addArguments('--disable-web-security')
3838
.addArguments('--allow-running-insecure-content')
3939
.addArguments('--ignore-certificate-errors');
40+
4041
// if 'true' run in 'headless' mode
4142
if (CHROME_DRIVER_CONSTANTS.TS_SELENIUM_HEADLESS) {
4243
options = options.addArguments('headless');
4344
}
45+
46+
if (CHROME_DRIVER_CONSTANTS.TS_SELENIUM_PROXY_SERVER !== '') {
47+
options = options.addArguments('--proxy-server=' + CHROME_DRIVER_CONSTANTS.TS_SELENIUM_PROXY_SERVER);
48+
}
49+
4450
return options;
4551
}
4652

tests/e2e/utils/CheReporter.ts

+2
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ class CheReporter extends mocha.reporters.Spec {
6262
TS_SELENIUM_LOG_LEVEL: ${REPORTER_CONSTANTS.TS_SELENIUM_LOG_LEVEL}
6363
TS_SELENIUM_LAUNCH_FULLSCREEN: ${CHROME_DRIVER_CONSTANTS.TS_SELENIUM_LAUNCH_FULLSCREEN}
6464
65+
${process.env.TS_SELENIUM_PROXY_SERVER ? 'TS_SELENIUM_PROXY_SERVER: ' + process.env.TS_SELENIUM_PROXY_SERVER : ''}
66+
6567
TS_COMMON_DASHBOARD_WAIT_TIMEOUT: ${TIMEOUT_CONSTANTS.TS_COMMON_DASHBOARD_WAIT_TIMEOUT}
6668
TS_SELENIUM_START_WORKSPACE_TIMEOUT: ${TIMEOUT_CONSTANTS.TS_SELENIUM_START_WORKSPACE_TIMEOUT}
6769
TS_WAIT_LOADER_PRESENCE_TIMEOUT: ${TIMEOUT_CONSTANTS.TS_WAIT_LOADER_PRESENCE_TIMEOUT}

0 commit comments

Comments
 (0)