@testring/plugin-selenium-driver 0.8.7 → 0.8.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/plugin/index.d.ts +1 -0
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +11 -2
- package/dist/plugin/index.js.map +1 -1
- package/package.json +6 -6
- package/src/plugin/index.ts +191 -83
package/dist/plugin/index.d.ts
CHANGED
|
@@ -103,6 +103,7 @@ export declare class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
103
103
|
getText(applicant: string, selector: Selector): Promise<string>;
|
|
104
104
|
elementIdSelected(applicant: string, id: string): Promise<boolean>;
|
|
105
105
|
makeScreenshot(applicant: string): Promise<string | void>;
|
|
106
|
+
makeElementScreenshot(applicant: string, selector: Selector): Promise<string | void>;
|
|
106
107
|
uploadFile(applicant: string, filePath: string): Promise<string | void>;
|
|
107
108
|
getCssProperty(applicant: string, selector: Selector, cssProperty: string): Promise<any>;
|
|
108
109
|
getSource(applicant: string): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,oBAAoB,EAAkB,MAAM,UAAU,CAAC;AAC/D,OAAO,EACH,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EAEpB,QAAQ,EAIX,MAAM,iBAAiB,CAAC;AAczB,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAC,YAAY,EAAE,iBAAiB,EAAmB,MAAM,aAAa,CAAC;AACnF,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,4CAA4C,CAAC;AAEnF,OAAO,EAAC,iBAAiB,EAAC,MAAM,gCAAgC,CAAC;AAEjE,KAAK,mBAAmB,GAAG,WAAW,CAAC,OAAO,GAAG;IAC7C,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin/index.js
CHANGED
|
@@ -181,7 +181,8 @@ class SeleniumPlugin {
|
|
|
181
181
|
return mergedConfig;
|
|
182
182
|
}
|
|
183
183
|
initIntervals() {
|
|
184
|
-
if (this.config.workerLimit !== 'local' &&
|
|
184
|
+
if (this.config.workerLimit !== 'local' &&
|
|
185
|
+
!this.config.disableClientPing) {
|
|
185
186
|
if (this.config.clientCheckInterval > 0) {
|
|
186
187
|
this.clientCheckInterval = setInterval(() => this.checkClientsTimeout(), this.config.clientCheckInterval);
|
|
187
188
|
}
|
|
@@ -203,7 +204,9 @@ class SeleniumPlugin {
|
|
|
203
204
|
// Note: SIGKILL cannot be caught or handled - it immediately terminates the process
|
|
204
205
|
}
|
|
205
206
|
forceKillSelenium() {
|
|
206
|
-
if (this.localSelenium &&
|
|
207
|
+
if (this.localSelenium &&
|
|
208
|
+
!this.localSelenium.killed &&
|
|
209
|
+
this.localSelenium.pid) {
|
|
207
210
|
this.logger.debug('Force killing Selenium process tree due to signal');
|
|
208
211
|
(0, tree_kill_1.default)(this.localSelenium.pid, 'SIGKILL', (err) => {
|
|
209
212
|
if (err) {
|
|
@@ -848,6 +851,12 @@ class SeleniumPlugin {
|
|
|
848
851
|
const client = this.getBrowserClient(applicant);
|
|
849
852
|
return client.takeScreenshot();
|
|
850
853
|
}
|
|
854
|
+
async makeElementScreenshot(applicant, selector) {
|
|
855
|
+
await this.createClient(applicant);
|
|
856
|
+
const client = this.getBrowserClient(applicant);
|
|
857
|
+
const element = await this.getElement(applicant, selector);
|
|
858
|
+
return client.takeElementScreenshot(await element.elementId);
|
|
859
|
+
}
|
|
851
860
|
async uploadFile(applicant, filePath) {
|
|
852
861
|
await this.createClient(applicant);
|
|
853
862
|
const client = this.getBrowserClient(applicant);
|
package/dist/plugin/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@testring/plugin-selenium-driver",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.9",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"typings": "./src/index.ts",
|
|
6
6
|
"repository": {
|
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
"author": "RingCentral",
|
|
14
14
|
"license": "MIT",
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@testring/child-process": "0.8.
|
|
17
|
-
"@testring/dwnld-collector-crx": "0.8.
|
|
18
|
-
"@testring/logger": "0.8.
|
|
19
|
-
"@testring/plugin-api": "0.8.
|
|
20
|
-
"@testring/types": "0.8.
|
|
16
|
+
"@testring/child-process": "0.8.9",
|
|
17
|
+
"@testring/dwnld-collector-crx": "0.8.9",
|
|
18
|
+
"@testring/logger": "0.8.9",
|
|
19
|
+
"@testring/plugin-api": "0.8.9",
|
|
20
|
+
"@testring/types": "0.8.9",
|
|
21
21
|
"@types/deepmerge": "2.2.3",
|
|
22
22
|
"@types/node": "22.8.5",
|
|
23
23
|
"@wdio/types": "9.2.2",
|
package/src/plugin/index.ts
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
Selector,
|
|
8
8
|
ShadowCssSelector,
|
|
9
9
|
isXpathSelector,
|
|
10
|
-
isShadowCssSelector
|
|
10
|
+
isShadowCssSelector,
|
|
11
11
|
} from '@testring/types';
|
|
12
12
|
|
|
13
13
|
import {ChildProcess} from 'child_process';
|
|
@@ -78,17 +78,17 @@ function getSeleniumJarPath(version: SeleniumVersion): string {
|
|
|
78
78
|
if (version === 'v4') {
|
|
79
79
|
// For Selenium v4, we expect the JAR to be in a specific location
|
|
80
80
|
const seleniumV4Path = path.join(__dirname, '..', 'selenium-server-v4', 'selenium-server-4.34.0.jar');
|
|
81
|
-
|
|
81
|
+
|
|
82
82
|
if (!fs.existsSync(seleniumV4Path)) {
|
|
83
83
|
throw new Error(
|
|
84
84
|
`Selenium v4 JAR not found at expected path: ${seleniumV4Path}. ` +
|
|
85
|
-
'Please ensure selenium-server-4.34.0.jar is available in the package directory.'
|
|
85
|
+
'Please ensure selenium-server-4.34.0.jar is available in the package directory.',
|
|
86
86
|
);
|
|
87
87
|
}
|
|
88
|
-
|
|
88
|
+
|
|
89
89
|
return seleniumV4Path;
|
|
90
90
|
}
|
|
91
|
-
|
|
91
|
+
|
|
92
92
|
// For v3 and other versions, use the original logic
|
|
93
93
|
const seleniumServer = require('selenium-server');
|
|
94
94
|
return seleniumServer.path;
|
|
@@ -100,7 +100,7 @@ function setupProcessListeners(
|
|
|
100
100
|
resolve: () => void,
|
|
101
101
|
reject: (error: Error) => void,
|
|
102
102
|
version: SeleniumVersion,
|
|
103
|
-
logger: {
|
|
103
|
+
logger: {verbose: (message: string) => void},
|
|
104
104
|
) {
|
|
105
105
|
if (!seleniumProcess.stderr && !seleniumProcess.stdout) {
|
|
106
106
|
reject(new Error('There is no STDERR or STDOUT on selenium worker'));
|
|
@@ -120,9 +120,14 @@ function setupProcessListeners(
|
|
|
120
120
|
v3: 'SeleniumServer.boot',
|
|
121
121
|
};
|
|
122
122
|
|
|
123
|
-
const checkForReadyMessage = (
|
|
124
|
-
|
|
125
|
-
|
|
123
|
+
const checkForReadyMessage = (
|
|
124
|
+
message: string,
|
|
125
|
+
stream: 'stdout' | 'stderr',
|
|
126
|
+
) => {
|
|
127
|
+
logger.verbose(
|
|
128
|
+
`[Selenium ${version}] [${stream.toUpperCase()}] ${message.trim()}`,
|
|
129
|
+
);
|
|
130
|
+
|
|
126
131
|
if (message.includes(readyMessages[version])) {
|
|
127
132
|
isReady = true;
|
|
128
133
|
clearTimeout(timeout);
|
|
@@ -135,20 +140,24 @@ function setupProcessListeners(
|
|
|
135
140
|
seleniumProcess.stdout?.on('data', (data) => {
|
|
136
141
|
checkForReadyMessage(data.toString(), 'stdout');
|
|
137
142
|
});
|
|
138
|
-
|
|
143
|
+
|
|
139
144
|
// Also listen to stderr for error messages
|
|
140
145
|
seleniumProcess.stderr?.on('data', (data) => {
|
|
141
|
-
logger.verbose(
|
|
146
|
+
logger.verbose(
|
|
147
|
+
`[Selenium ${version}] [STDERR] ${data.toString().trim()}`,
|
|
148
|
+
);
|
|
142
149
|
});
|
|
143
150
|
} else {
|
|
144
151
|
// For v3, ready message appears in stderr
|
|
145
152
|
seleniumProcess.stderr?.on('data', (data) => {
|
|
146
153
|
checkForReadyMessage(data.toString(), 'stderr');
|
|
147
154
|
});
|
|
148
|
-
|
|
155
|
+
|
|
149
156
|
// Also listen to stdout for other messages
|
|
150
157
|
seleniumProcess.stdout?.on('data', (data) => {
|
|
151
|
-
logger.verbose(
|
|
158
|
+
logger.verbose(
|
|
159
|
+
`[Selenium ${version}] [STDOUT] ${data.toString().trim()}`,
|
|
160
|
+
);
|
|
152
161
|
});
|
|
153
162
|
}
|
|
154
163
|
|
|
@@ -160,7 +169,11 @@ function setupProcessListeners(
|
|
|
160
169
|
seleniumProcess.on('exit', (code) => {
|
|
161
170
|
if (!isReady) {
|
|
162
171
|
clearTimeout(timeout);
|
|
163
|
-
reject(
|
|
172
|
+
reject(
|
|
173
|
+
new Error(
|
|
174
|
+
`Selenium process exited with code ${code} before becoming ready`,
|
|
175
|
+
),
|
|
176
|
+
);
|
|
164
177
|
}
|
|
165
178
|
});
|
|
166
179
|
}
|
|
@@ -174,7 +187,8 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
174
187
|
|
|
175
188
|
private browserClients: Map<string, browserClientItem> = new Map();
|
|
176
189
|
|
|
177
|
-
private customBrowserClientsConfigs: Map<string, WebdriverIOConfig> =
|
|
190
|
+
private customBrowserClientsConfigs: Map<string, WebdriverIOConfig> =
|
|
191
|
+
new Map();
|
|
178
192
|
|
|
179
193
|
private waitForReadyState: Promise<void> = Promise.resolve();
|
|
180
194
|
|
|
@@ -228,7 +242,10 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
228
242
|
}
|
|
229
243
|
|
|
230
244
|
private initIntervals() {
|
|
231
|
-
if (
|
|
245
|
+
if (
|
|
246
|
+
this.config.workerLimit !== 'local' &&
|
|
247
|
+
!this.config.disableClientPing
|
|
248
|
+
) {
|
|
232
249
|
if (this.config.clientCheckInterval > 0) {
|
|
233
250
|
this.clientCheckInterval = setInterval(
|
|
234
251
|
() => this.checkClientsTimeout(),
|
|
@@ -249,24 +266,36 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
249
266
|
process.on('exit', () => this.forceKillSelenium());
|
|
250
267
|
process.on('SIGINT', () => this.forceKillSelenium());
|
|
251
268
|
process.on('SIGTERM', () => this.forceKillSelenium());
|
|
252
|
-
|
|
269
|
+
|
|
253
270
|
// Debug mode specific cleanup handlers
|
|
254
271
|
process.on('SIGUSR1', () => this.forceKillSelenium()); // Debugger disconnect
|
|
255
272
|
process.on('SIGUSR2', () => this.forceKillSelenium()); // Debugger disconnect alternative
|
|
256
|
-
|
|
273
|
+
|
|
257
274
|
// Note: SIGKILL cannot be caught or handled - it immediately terminates the process
|
|
258
275
|
}
|
|
259
276
|
|
|
260
277
|
private forceKillSelenium() {
|
|
261
|
-
if (
|
|
262
|
-
this.
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
278
|
+
if (
|
|
279
|
+
this.localSelenium &&
|
|
280
|
+
!this.localSelenium.killed &&
|
|
281
|
+
this.localSelenium.pid
|
|
282
|
+
) {
|
|
283
|
+
this.logger.debug(
|
|
284
|
+
'Force killing Selenium process tree due to signal',
|
|
285
|
+
);
|
|
286
|
+
kill(
|
|
287
|
+
this.localSelenium.pid,
|
|
288
|
+
'SIGKILL',
|
|
289
|
+
(err: Error | undefined) => {
|
|
290
|
+
if (err) {
|
|
291
|
+
this.logger.error(
|
|
292
|
+
`Failed to force kill Selenium process tree: ${err.message}`,
|
|
293
|
+
);
|
|
294
|
+
} else {
|
|
295
|
+
this.logger.debug('Selenium process tree force killed');
|
|
296
|
+
}
|
|
297
|
+
},
|
|
298
|
+
);
|
|
270
299
|
}
|
|
271
300
|
}
|
|
272
301
|
|
|
@@ -294,7 +323,7 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
294
323
|
if (this.config.chromeDriverPath) {
|
|
295
324
|
return this.config.chromeDriverPath;
|
|
296
325
|
}
|
|
297
|
-
|
|
326
|
+
|
|
298
327
|
return require('chromedriver').path;
|
|
299
328
|
}
|
|
300
329
|
|
|
@@ -304,15 +333,20 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
304
333
|
return [`-Dwebdriver.chrome.driver=${chromeDriverPath}`];
|
|
305
334
|
}
|
|
306
335
|
|
|
307
|
-
private buildSeleniumArgs(
|
|
336
|
+
private buildSeleniumArgs(
|
|
337
|
+
seleniumJarPath: string,
|
|
338
|
+
version: SeleniumVersion,
|
|
339
|
+
port: number,
|
|
340
|
+
chromeDriverArgs: string[],
|
|
341
|
+
): string[] {
|
|
308
342
|
const args = [...chromeDriverArgs];
|
|
309
|
-
|
|
343
|
+
|
|
310
344
|
if (version === 'v4') {
|
|
311
345
|
args.push(
|
|
312
|
-
'-jar',
|
|
313
|
-
seleniumJarPath,
|
|
314
|
-
'standalone',
|
|
315
|
-
'--port',
|
|
346
|
+
'-jar',
|
|
347
|
+
seleniumJarPath,
|
|
348
|
+
'standalone',
|
|
349
|
+
'--port',
|
|
316
350
|
port.toString(),
|
|
317
351
|
'--host',
|
|
318
352
|
'127.0.0.1',
|
|
@@ -320,12 +354,12 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
320
354
|
} else {
|
|
321
355
|
args.push('-jar', seleniumJarPath, '-port', port.toString());
|
|
322
356
|
}
|
|
323
|
-
|
|
357
|
+
|
|
324
358
|
// Append custom selenium arguments if provided
|
|
325
359
|
if (this.config.seleniumArgs && this.config.seleniumArgs.length > 0) {
|
|
326
360
|
args.push(...this.config.seleniumArgs);
|
|
327
361
|
}
|
|
328
|
-
|
|
362
|
+
|
|
329
363
|
return args;
|
|
330
364
|
}
|
|
331
365
|
|
|
@@ -336,15 +370,30 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
336
370
|
try {
|
|
337
371
|
const seleniumJarPath = getSeleniumJarPath(version);
|
|
338
372
|
const chromeDriverArgs = this.getChromeDriverArgs();
|
|
339
|
-
const seleniumArgs = this.buildSeleniumArgs(
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
373
|
+
const seleniumArgs = this.buildSeleniumArgs(
|
|
374
|
+
seleniumJarPath,
|
|
375
|
+
version,
|
|
376
|
+
this.config.port || 4444,
|
|
377
|
+
chromeDriverArgs,
|
|
378
|
+
);
|
|
379
|
+
|
|
380
|
+
this.logger.debug(
|
|
381
|
+
`Starting Selenium with command: java ${seleniumArgs.join(
|
|
382
|
+
' ',
|
|
383
|
+
)}`,
|
|
384
|
+
);
|
|
385
|
+
|
|
343
386
|
this.localSelenium = spawnWithPipes('java', seleniumArgs);
|
|
344
387
|
|
|
345
388
|
this.waitForReadyState = new Promise((resolve, reject) => {
|
|
346
389
|
if (this.localSelenium) {
|
|
347
|
-
setupProcessListeners(
|
|
390
|
+
setupProcessListeners(
|
|
391
|
+
this.localSelenium,
|
|
392
|
+
resolve,
|
|
393
|
+
reject,
|
|
394
|
+
version,
|
|
395
|
+
this.logger,
|
|
396
|
+
);
|
|
348
397
|
} else {
|
|
349
398
|
reject(new Error('Failed to spawn Selenium process'));
|
|
350
399
|
}
|
|
@@ -353,9 +402,11 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
353
402
|
// Wait for the server to be ready
|
|
354
403
|
await this.waitForReadyState;
|
|
355
404
|
this.logger.debug(`Selenium server (${version}) is ready`);
|
|
356
|
-
|
|
357
405
|
} catch (err) {
|
|
358
|
-
this.logger.error(
|
|
406
|
+
this.logger.error(
|
|
407
|
+
`Local selenium server init failed (version: ${version})`,
|
|
408
|
+
err,
|
|
409
|
+
);
|
|
359
410
|
throw err; // Re-throw to allow upstream error handling
|
|
360
411
|
}
|
|
361
412
|
}
|
|
@@ -422,15 +473,10 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
422
473
|
applicant: string,
|
|
423
474
|
config: WebdriverIOConfig,
|
|
424
475
|
) {
|
|
425
|
-
this.customBrowserClientsConfigs.set(
|
|
426
|
-
applicant,
|
|
427
|
-
config
|
|
428
|
-
);
|
|
476
|
+
this.customBrowserClientsConfigs.set(applicant, config);
|
|
429
477
|
}
|
|
430
478
|
|
|
431
|
-
public getCustomBrowserClientConfig(
|
|
432
|
-
applicant: string,
|
|
433
|
-
) {
|
|
479
|
+
public getCustomBrowserClientConfig(applicant: string) {
|
|
434
480
|
return this.customBrowserClientsConfigs.get(applicant);
|
|
435
481
|
}
|
|
436
482
|
|
|
@@ -441,7 +487,7 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
441
487
|
if (this.killed) {
|
|
442
488
|
throw new Error('SeleniumPlugin is being killed');
|
|
443
489
|
}
|
|
444
|
-
|
|
490
|
+
|
|
445
491
|
await this.waitForReadyState;
|
|
446
492
|
const clientData = this.browserClients.get(applicant);
|
|
447
493
|
|
|
@@ -505,13 +551,16 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
505
551
|
} else if (isShadowCssSelector(selector)) {
|
|
506
552
|
return this.getElementFromShadowCss(client, selector);
|
|
507
553
|
}
|
|
508
|
-
|
|
554
|
+
|
|
509
555
|
throw new Error('Unknown selector type');
|
|
510
556
|
}
|
|
511
557
|
|
|
512
|
-
private async getElementFromShadowCss(
|
|
558
|
+
private async getElementFromShadowCss(
|
|
559
|
+
client: BrowserObjectCustom,
|
|
560
|
+
selector: ShadowCssSelector,
|
|
561
|
+
) {
|
|
513
562
|
const {css, parentSelectors} = selector;
|
|
514
|
-
|
|
563
|
+
|
|
515
564
|
// Error first: validate selector structure
|
|
516
565
|
this.validateShadowCssSelector(selector);
|
|
517
566
|
|
|
@@ -520,7 +569,11 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
520
569
|
} catch (error) {
|
|
521
570
|
// Provide more context in error messages
|
|
522
571
|
if (error instanceof Error) {
|
|
523
|
-
throw new Error(
|
|
572
|
+
throw new Error(
|
|
573
|
+
`Shadow DOM traversal failed: ${
|
|
574
|
+
error.message
|
|
575
|
+
}. Selector: ${JSON.stringify(selector)}`,
|
|
576
|
+
);
|
|
524
577
|
}
|
|
525
578
|
throw error;
|
|
526
579
|
}
|
|
@@ -528,43 +581,54 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
528
581
|
|
|
529
582
|
private validateShadowCssSelector(selector: ShadowCssSelector): void {
|
|
530
583
|
const {css, parentSelectors} = selector;
|
|
531
|
-
|
|
584
|
+
|
|
532
585
|
if (!css || typeof css !== 'string') {
|
|
533
586
|
throw new Error('Shadow CSS selector must have a valid CSS string');
|
|
534
587
|
}
|
|
535
|
-
|
|
588
|
+
|
|
536
589
|
if (!Array.isArray(parentSelectors) || parentSelectors.length === 0) {
|
|
537
|
-
throw new Error(
|
|
590
|
+
throw new Error(
|
|
591
|
+
'Shadow CSS selector must have at least one parent selector',
|
|
592
|
+
);
|
|
538
593
|
}
|
|
539
|
-
|
|
594
|
+
|
|
540
595
|
// Validate all parent selectors are non-empty strings
|
|
541
596
|
for (const [index, parentSelector] of parentSelectors.entries()) {
|
|
542
597
|
if (!parentSelector || typeof parentSelector !== 'string') {
|
|
543
|
-
throw new Error(
|
|
598
|
+
throw new Error(
|
|
599
|
+
`Parent selector at index ${index} must be a non-empty string`,
|
|
600
|
+
);
|
|
544
601
|
}
|
|
545
602
|
}
|
|
546
603
|
}
|
|
547
604
|
|
|
548
|
-
private async traverseToLastParentSelector(
|
|
605
|
+
private async traverseToLastParentSelector(
|
|
606
|
+
client: BrowserObjectCustom,
|
|
607
|
+
parentSelectors: string[],
|
|
608
|
+
) {
|
|
549
609
|
const [firstParentSelector, ...restParentSelectors] = parentSelectors;
|
|
550
|
-
|
|
610
|
+
|
|
551
611
|
// TypeScript assertion: we know firstParentSelector exists due to validation
|
|
552
612
|
if (!firstParentSelector) {
|
|
553
613
|
throw new Error('First parent selector is required');
|
|
554
614
|
}
|
|
555
|
-
|
|
615
|
+
|
|
556
616
|
// Get the first parent element
|
|
557
617
|
let currentElement = await client.$(firstParentSelector);
|
|
558
|
-
|
|
618
|
+
|
|
559
619
|
if (!currentElement) {
|
|
560
|
-
throw new Error(
|
|
620
|
+
throw new Error(
|
|
621
|
+
`Failed to find parent element with selector: ${firstParentSelector}`,
|
|
622
|
+
);
|
|
561
623
|
}
|
|
562
624
|
|
|
563
625
|
// Traverse through shadow DOM hierarchy
|
|
564
626
|
for (const parentSelector of restParentSelectors) {
|
|
565
627
|
const shadowElement = await currentElement.shadow$(parentSelector);
|
|
566
628
|
if (!shadowElement) {
|
|
567
|
-
throw new Error(
|
|
629
|
+
throw new Error(
|
|
630
|
+
`Failed to find shadow element with selector: ${parentSelector}`,
|
|
631
|
+
);
|
|
568
632
|
}
|
|
569
633
|
currentElement = shadowElement;
|
|
570
634
|
}
|
|
@@ -572,14 +636,23 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
572
636
|
return currentElement;
|
|
573
637
|
}
|
|
574
638
|
|
|
575
|
-
private async traverseShadowDom(
|
|
639
|
+
private async traverseShadowDom(
|
|
640
|
+
client: BrowserObjectCustom,
|
|
641
|
+
css: string,
|
|
642
|
+
parentSelectors: string[],
|
|
643
|
+
) {
|
|
576
644
|
// Traverse to the last parent selector
|
|
577
|
-
const lastParentElement = await this.traverseToLastParentSelector(
|
|
645
|
+
const lastParentElement = await this.traverseToLastParentSelector(
|
|
646
|
+
client,
|
|
647
|
+
parentSelectors,
|
|
648
|
+
);
|
|
578
649
|
|
|
579
650
|
// Get the final target element within the shadow DOM
|
|
580
651
|
const targetElement = await lastParentElement.shadow$(css);
|
|
581
652
|
if (!targetElement) {
|
|
582
|
-
throw new Error(
|
|
653
|
+
throw new Error(
|
|
654
|
+
`Failed to find target element with CSS selector: ${css}`,
|
|
655
|
+
);
|
|
583
656
|
}
|
|
584
657
|
|
|
585
658
|
return targetElement;
|
|
@@ -612,7 +685,7 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
612
685
|
} else {
|
|
613
686
|
await this.logger.stepWarning(
|
|
614
687
|
`Stopping sessions for applicant warning ${applicant}. ` +
|
|
615
|
-
|
|
688
|
+
`Session ids are not equal, started with - ${startingSessionID}, ended with - ${sessionID}`,
|
|
616
689
|
async () => {
|
|
617
690
|
try {
|
|
618
691
|
if (startingSessionID) {
|
|
@@ -678,13 +751,19 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
678
751
|
return new Promise<void>((resolve) => {
|
|
679
752
|
kill(pid, 'SIGTERM', (err: Error | undefined) => {
|
|
680
753
|
if (err) {
|
|
681
|
-
this.logger.warn(
|
|
754
|
+
this.logger.warn(
|
|
755
|
+
`Failed to kill process tree with SIGTERM: ${err.message}`,
|
|
756
|
+
);
|
|
682
757
|
// Fallback to SIGKILL if SIGTERM fails
|
|
683
758
|
kill(pid, 'SIGKILL', (killErr: Error | undefined) => {
|
|
684
759
|
if (killErr) {
|
|
685
|
-
this.logger.error(
|
|
760
|
+
this.logger.error(
|
|
761
|
+
`Failed to kill process tree with SIGKILL: ${killErr.message}`,
|
|
762
|
+
);
|
|
686
763
|
} else {
|
|
687
|
-
this.logger.debug(
|
|
764
|
+
this.logger.debug(
|
|
765
|
+
'Process tree killed with SIGKILL',
|
|
766
|
+
);
|
|
688
767
|
}
|
|
689
768
|
resolve();
|
|
690
769
|
});
|
|
@@ -698,7 +777,7 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
698
777
|
|
|
699
778
|
public async kill() {
|
|
700
779
|
this.logger.debug('Kill command is called');
|
|
701
|
-
|
|
780
|
+
|
|
702
781
|
// Set killed flag to prevent new operations
|
|
703
782
|
this.killed = true;
|
|
704
783
|
|
|
@@ -716,10 +795,12 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
716
795
|
this.logger.debug('Selenium process already killed');
|
|
717
796
|
return;
|
|
718
797
|
}
|
|
719
|
-
|
|
798
|
+
|
|
720
799
|
const pid = this.localSelenium.pid;
|
|
721
800
|
if (!pid) {
|
|
722
|
-
this.logger.warn(
|
|
801
|
+
this.logger.warn(
|
|
802
|
+
'Selenium process has no PID, cannot kill process tree',
|
|
803
|
+
);
|
|
723
804
|
return;
|
|
724
805
|
}
|
|
725
806
|
|
|
@@ -875,7 +956,10 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
875
956
|
const client = this.getBrowserClient(applicant);
|
|
876
957
|
|
|
877
958
|
if (isXpathSelector(selector)) {
|
|
878
|
-
const elements = (await client.findElements(
|
|
959
|
+
const elements = (await client.findElements(
|
|
960
|
+
'xpath',
|
|
961
|
+
selector.xpath,
|
|
962
|
+
)) as unknown;
|
|
879
963
|
return (elements as Array<Record<string, string>>).map((o) => {
|
|
880
964
|
const keys = Object.keys(o);
|
|
881
965
|
const firstKey = keys[0];
|
|
@@ -885,13 +969,16 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
885
969
|
return {ELEMENT: o[firstKey]};
|
|
886
970
|
});
|
|
887
971
|
} else if (isShadowCssSelector(selector)) {
|
|
888
|
-
const lastParentElement = await this.traverseToLastParentSelector(
|
|
972
|
+
const lastParentElement = await this.traverseToLastParentSelector(
|
|
973
|
+
client,
|
|
974
|
+
selector.parentSelectors,
|
|
975
|
+
);
|
|
889
976
|
const elements = lastParentElement.shadow$$(selector.css);
|
|
890
977
|
return elements.map((element) => {
|
|
891
978
|
return {ELEMENT: element.elementId};
|
|
892
979
|
});
|
|
893
980
|
}
|
|
894
|
-
|
|
981
|
+
|
|
895
982
|
throw new Error('Unknown selector type');
|
|
896
983
|
}
|
|
897
984
|
|
|
@@ -918,12 +1005,20 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
918
1005
|
return element.setValue(value);
|
|
919
1006
|
}
|
|
920
1007
|
|
|
921
|
-
public async selectByIndex(
|
|
1008
|
+
public async selectByIndex(
|
|
1009
|
+
applicant: string,
|
|
1010
|
+
selector: Selector,
|
|
1011
|
+
value: any,
|
|
1012
|
+
) {
|
|
922
1013
|
const element = await this.getElement(applicant, selector);
|
|
923
1014
|
return element.selectByIndex(value);
|
|
924
1015
|
}
|
|
925
1016
|
|
|
926
|
-
public async selectByValue(
|
|
1017
|
+
public async selectByValue(
|
|
1018
|
+
applicant: string,
|
|
1019
|
+
selector: Selector,
|
|
1020
|
+
value: any,
|
|
1021
|
+
) {
|
|
927
1022
|
const element = await this.getElement(applicant, selector);
|
|
928
1023
|
return element.selectByAttribute('value', value);
|
|
929
1024
|
}
|
|
@@ -1026,7 +1121,10 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
1026
1121
|
destinationSelector: Selector,
|
|
1027
1122
|
) {
|
|
1028
1123
|
const sourceElement = await this.getElement(applicant, sourceSelector);
|
|
1029
|
-
const destinationElement = await this.getElement(
|
|
1124
|
+
const destinationElement = await this.getElement(
|
|
1125
|
+
applicant,
|
|
1126
|
+
destinationSelector,
|
|
1127
|
+
);
|
|
1030
1128
|
return sourceElement.dragAndDrop(destinationElement);
|
|
1031
1129
|
}
|
|
1032
1130
|
|
|
@@ -1149,6 +1247,14 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
1149
1247
|
return client.takeScreenshot();
|
|
1150
1248
|
}
|
|
1151
1249
|
|
|
1250
|
+
public async makeElementScreenshot(applicant: string, selector: Selector): Promise<string | void> {
|
|
1251
|
+
await this.createClient(applicant);
|
|
1252
|
+
const client = this.getBrowserClient(applicant);
|
|
1253
|
+
const element = await this.getElement(applicant, selector);
|
|
1254
|
+
|
|
1255
|
+
return client.takeElementScreenshot(await element.elementId);
|
|
1256
|
+
}
|
|
1257
|
+
|
|
1152
1258
|
public async uploadFile(
|
|
1153
1259
|
applicant: string,
|
|
1154
1260
|
filePath: string,
|
|
@@ -1360,7 +1466,9 @@ export class SeleniumPlugin implements IBrowserProxyPlugin {
|
|
|
1360
1466
|
return client.setTimeZone(timeZone);
|
|
1361
1467
|
}
|
|
1362
1468
|
|
|
1363
|
-
public async getWindowSize(
|
|
1469
|
+
public async getWindowSize(
|
|
1470
|
+
applicant: string,
|
|
1471
|
+
): Promise<{width: number; height: number}> {
|
|
1364
1472
|
await this.createClient(applicant);
|
|
1365
1473
|
const client = this.getBrowserClient(applicant);
|
|
1366
1474
|
return client.getWindowSize();
|