appium-webdriveragent 12.2.2 → 13.0.0

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/CHANGELOG.md CHANGED
@@ -1,3 +1,16 @@
1
+ ## [13.0.0](https://github.com/appium/WebDriverAgent/compare/v12.2.2...v13.0.0) (2026-05-17)
2
+
3
+ ### ⚠ BREAKING CHANGES
4
+
5
+ * quitAndUninstall() removed — use quit() only. App uninstall is out of scope for this module.
6
+ * uninstall() removed — WDA must not be uninstalled from this package; callers (e.g. xcuitest-driver) should own that if needed.
7
+ * setupCaching() no longer uninstalls WDA — on bundle-id or version mismatch it logs and skips caching instead of removing apps from the device. Also, it now returns the cached url on success.
8
+ * appium-ios-device dependency removed — preinstalled WDA on real devices always launches via devicectl (no iOS < 17 Xctest fallback).
9
+
10
+ ### Features
11
+
12
+ * Drop legacy APIs ([#1137](https://github.com/appium/WebDriverAgent/issues/1137)) ([8995d24](https://github.com/appium/WebDriverAgent/commit/8995d24e16634a4624918319996839993502c7b4))
13
+
1
14
  ## [12.2.2](https://github.com/appium/WebDriverAgent/compare/v12.2.1...v12.2.2) (2026-05-08)
2
15
 
3
16
  ### Bug Fixes
@@ -15,11 +15,11 @@
15
15
  <key>CFBundlePackageType</key>
16
16
  <string>FMWK</string>
17
17
  <key>CFBundleShortVersionString</key>
18
- <string>12.2.2</string>
18
+ <string>13.0.0</string>
19
19
  <key>CFBundleSignature</key>
20
20
  <string>????</string>
21
21
  <key>CFBundleVersion</key>
22
- <string>12.2.2</string>
22
+ <string>13.0.0</string>
23
23
  <key>NSPrincipalClass</key>
24
24
  <string/>
25
25
  </dict>
@@ -1,7 +1,7 @@
1
1
  export { bundleWDASim } from './check-dependencies';
2
2
  export { NoSessionProxy } from './no-session-proxy';
3
3
  export { WebDriverAgent } from './webdriveragent';
4
- export { WDA_BASE_URL, WDA_RUNNER_BUNDLE_ID, PROJECT_FILE } from './constants';
4
+ export { WDA_BASE_URL, WDA_RUNNER_APP, WDA_RUNNER_BUNDLE_ID, PROJECT_FILE } from './constants';
5
5
  export { resetTestProcesses, BOOTSTRAP_PATH } from './utils';
6
6
  export * from './types';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAC,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAC,kBAAkB,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAE3D,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAC,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAC7F,OAAO,EAAC,kBAAkB,EAAE,cAAc,EAAC,MAAM,SAAS,CAAC;AAE3D,cAAc,SAAS,CAAC"}
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.BOOTSTRAP_PATH = exports.resetTestProcesses = exports.PROJECT_FILE = exports.WDA_RUNNER_BUNDLE_ID = exports.WDA_BASE_URL = exports.WebDriverAgent = exports.NoSessionProxy = exports.bundleWDASim = void 0;
17
+ exports.BOOTSTRAP_PATH = exports.resetTestProcesses = exports.PROJECT_FILE = exports.WDA_RUNNER_BUNDLE_ID = exports.WDA_RUNNER_APP = exports.WDA_BASE_URL = exports.WebDriverAgent = exports.NoSessionProxy = exports.bundleWDASim = void 0;
18
18
  var check_dependencies_1 = require("./check-dependencies");
19
19
  Object.defineProperty(exports, "bundleWDASim", { enumerable: true, get: function () { return check_dependencies_1.bundleWDASim; } });
20
20
  var no_session_proxy_1 = require("./no-session-proxy");
@@ -23,6 +23,7 @@ var webdriveragent_1 = require("./webdriveragent");
23
23
  Object.defineProperty(exports, "WebDriverAgent", { enumerable: true, get: function () { return webdriveragent_1.WebDriverAgent; } });
24
24
  var constants_1 = require("./constants");
25
25
  Object.defineProperty(exports, "WDA_BASE_URL", { enumerable: true, get: function () { return constants_1.WDA_BASE_URL; } });
26
+ Object.defineProperty(exports, "WDA_RUNNER_APP", { enumerable: true, get: function () { return constants_1.WDA_RUNNER_APP; } });
26
27
  Object.defineProperty(exports, "WDA_RUNNER_BUNDLE_ID", { enumerable: true, get: function () { return constants_1.WDA_RUNNER_BUNDLE_ID; } });
27
28
  Object.defineProperty(exports, "PROJECT_FILE", { enumerable: true, get: function () { return constants_1.PROJECT_FILE; } });
28
29
  var utils_1 = require("./utils");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2DAAkD;AAA1C,kHAAA,YAAY,OAAA;AACpB,uDAAkD;AAA1C,kHAAA,cAAc,OAAA;AACtB,mDAAgD;AAAxC,gHAAA,cAAc,OAAA;AACtB,yCAA6E;AAArE,yGAAA,YAAY,OAAA;AAAE,iHAAA,oBAAoB,OAAA;AAAE,yGAAA,YAAY,OAAA;AACxD,iCAA2D;AAAnD,2GAAA,kBAAkB,OAAA;AAAE,uGAAA,cAAc,OAAA;AAE1C,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2DAAkD;AAA1C,kHAAA,YAAY,OAAA;AACpB,uDAAkD;AAA1C,kHAAA,cAAc,OAAA;AACtB,mDAAgD;AAAxC,gHAAA,cAAc,OAAA;AACtB,yCAA6F;AAArF,yGAAA,YAAY,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,iHAAA,oBAAoB,OAAA;AAAE,yGAAA,YAAY,OAAA;AACxE,iCAA2D;AAAnD,2GAAA,kBAAkB,OAAA;AAAE,uGAAA,cAAc,OAAA;AAE1C,0CAAwB"}
@@ -1,4 +1,6 @@
1
1
  import { type HTTPHeaders } from '@appium/types';
2
+ import type { Simctl } from 'node-simctl';
3
+ import type { Devicectl } from 'node-devicectl';
2
4
  export interface WDASettings {
3
5
  elementResponseAttribute?: string;
4
6
  shouldUseCompactResponses?: boolean;
@@ -88,9 +90,8 @@ export interface WebDriverAgentArgs {
88
90
  }
89
91
  export interface AppleDevice {
90
92
  udid: string;
91
- simctl?: any;
92
- devicectl?: any;
93
- [key: string]: any;
93
+ simctl?: Simctl;
94
+ devicectl?: Devicectl;
94
95
  }
95
96
  /**
96
97
  * Information of the device under test
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../lib/types.ts"],"names":[],"mappings":"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"}
@@ -34,7 +34,6 @@ export declare class WebDriverAgent {
34
34
  private readonly wdaLaunchTimeout;
35
35
  private readonly usePreinstalledWDA?;
36
36
  private readonly updatedWDABundleIdSuffix;
37
- private xctestApiClient?;
38
37
  private _xcodebuild?;
39
38
  private _url?;
40
39
  /**
@@ -139,19 +138,13 @@ export declare class WebDriverAgent {
139
138
  /**
140
139
  * Reuse running WDA if it has the same bundle id with updatedWDABundleId.
141
140
  * Or reuse it if it has the default id without updatedWDABundleId.
142
- * Uninstall it if the method faces an exception for the above situation.
143
- */
144
- setupCaching(): Promise<void>;
145
- /**
146
- * Quit and uninstall running WDA.
141
+ *
142
+ * @returns The WDA URL used for caching on success, or `undefined` if caching was skipped.
147
143
  */
148
- quitAndUninstall(): Promise<void>;
149
- private parseBundleId;
150
- private fetchWDABundle;
144
+ setupCaching(): Promise<string | undefined>;
151
145
  private setupProxies;
152
146
  private toUrl;
153
147
  private setWDAPaths;
154
- private isRunning;
155
148
  /**
156
149
  * Return current running WDA's status like below
157
150
  * {
@@ -174,12 +167,6 @@ export declare class WebDriverAgent {
174
167
  * @param timeoutMs If zero or negative, returns immediately. Otherwise, waits up to timeoutMs.
175
168
  */
176
169
  private getStatus;
177
- /**
178
- * Uninstall WDAs from the test device.
179
- * Over Xcode 11, multiple WDA can be in the device since Xcode 11 generates different WDA.
180
- * Appium does not expect multiple WDAs are running on a device.
181
- */
182
- private uninstall;
183
170
  private _cleanupProjectIfFresh;
184
171
  /**
185
172
  * Launch WDA with preinstalled package with 'xcrun devicectl device process launch'.
@@ -187,9 +174,6 @@ export declare class WebDriverAgent {
187
174
  * https://github.com/appium/WebDriverAgent/releases
188
175
  * with proper sign for this case.
189
176
  *
190
- * When we implement launching XCTest service via appium-ios-device,
191
- * this implementation can be replaced with it.
192
- *
193
177
  * @param opts launching WDA with devicectl command options.
194
178
  */
195
179
  private _launchViaDevicectl;
@@ -1 +1 @@
1
- {"version":3,"file":"webdriveragent.d.ts","sourceRoot":"","sources":["../../lib/webdriveragent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webdriveragent.d.ts","sourceRoot":"","sources":["../../lib/webdriveragent.ts"],"names":[],"mappings":"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"}
@@ -14,13 +14,10 @@ const utils_1 = require("./utils");
14
14
  const xcodebuild_1 = require("./xcodebuild");
15
15
  const async_lock_1 = __importDefault(require("async-lock"));
16
16
  const teen_process_1 = require("teen_process");
17
- const check_dependencies_1 = require("./check-dependencies");
18
17
  const constants_1 = require("./constants");
19
- const appium_ios_device_1 = require("appium-ios-device");
20
18
  const strongbox_1 = require("@appium/strongbox");
21
19
  const WDA_LAUNCH_TIMEOUT = 60 * 1000;
22
20
  const WDA_AGENT_PORT = 8100;
23
- const WDA_CF_BUNDLE_NAME = 'WebDriverAgentRunner-Runner';
24
21
  const SHARED_RESOURCES_GUARD = new async_lock_1.default();
25
22
  const RECENT_MODULE_VERSION_ITEM_NAME = 'recentWdaModuleVersion';
26
23
  const URL_PROTOCOL_SEPARATOR = '://';
@@ -55,7 +52,6 @@ class WebDriverAgent {
55
52
  wdaLaunchTimeout;
56
53
  usePreinstalledWDA;
57
54
  updatedWDABundleIdSuffix;
58
- xctestApiClient;
59
55
  _xcodebuild;
60
56
  _url;
61
57
  /**
@@ -93,7 +89,6 @@ class WebDriverAgent {
93
89
  this.updatedWDABundleId = args.updatedWDABundleId;
94
90
  this.wdaLaunchTimeout = args.wdaLaunchTimeout || WDA_LAUNCH_TIMEOUT;
95
91
  this.usePreinstalledWDA = args.usePreinstalledWDA;
96
- this.xctestApiClient = null;
97
92
  this.updatedWDABundleIdSuffix = args.updatedWDABundleIdSuffix ?? constants_1.DEFAULT_TEST_BUNDLE_SUFFIX;
98
93
  this._xcodebuild = this.canSkipXcodebuild
99
94
  ? null
@@ -304,18 +299,17 @@ class WebDriverAgent {
304
299
  async quit() {
305
300
  if (this.usePreinstalledWDA) {
306
301
  this.log.info('Stopping the XCTest session');
307
- if (this.xctestApiClient) {
308
- this.xctestApiClient.stop();
309
- this.xctestApiClient = null;
310
- }
311
- else {
312
- try {
302
+ try {
303
+ if (this.device.simctl) {
313
304
  await this.device.simctl.terminateApp(this.bundleIdForXctest);
314
305
  }
315
- catch (e) {
316
- this.log.warn(e.message);
306
+ else if (this.device.devicectl) {
307
+ await this.device.devicectl.terminateApp(this.bundleIdForXctest);
317
308
  }
318
309
  }
310
+ catch (e) {
311
+ this.log.warn(e.message);
312
+ }
319
313
  }
320
314
  else if (!this.args.webDriverAgentUrl) {
321
315
  this.log.info('Shutting down sub-processes');
@@ -324,8 +318,7 @@ class WebDriverAgent {
324
318
  }
325
319
  }
326
320
  else {
327
- this.log.debug('Do not stop xcodebuild nor XCTest session ' +
328
- 'since the WDA session is managed by outside this driver.');
321
+ this.log.debug('Stopping neither xcodebuild nor XCTest session since WDA lifecycle is not managed by this driver');
329
322
  }
330
323
  if (this.jwproxy) {
331
324
  this.jwproxy.sessionId = null;
@@ -350,28 +343,29 @@ class WebDriverAgent {
350
343
  /**
351
344
  * Reuse running WDA if it has the same bundle id with updatedWDABundleId.
352
345
  * Or reuse it if it has the default id without updatedWDABundleId.
353
- * Uninstall it if the method faces an exception for the above situation.
346
+ *
347
+ * @returns The WDA URL used for caching on success, or `undefined` if caching was skipped.
354
348
  */
355
349
  async setupCaching() {
356
350
  const status = await this.getStatus(0);
357
351
  if (!status || !status.build) {
358
352
  this.log.debug('WDA is currently not running. There is nothing to cache');
359
- return;
353
+ return undefined;
360
354
  }
361
355
  const { productBundleIdentifier, upgradedAt } = status.build;
362
356
  // for real device
363
357
  if (support_1.util.hasValue(productBundleIdentifier) &&
364
358
  support_1.util.hasValue(this.updatedWDABundleId) &&
365
359
  this.updatedWDABundleId !== productBundleIdentifier) {
366
- this.log.info(`Will uninstall running WDA since it has different bundle id. The actual value is '${productBundleIdentifier}'.`);
367
- return await this.uninstall();
360
+ this.log.info(`Will not reuse running WDA since it has different bundle id. The actual value is '${productBundleIdentifier}'.`);
361
+ return undefined;
368
362
  }
369
363
  // for simulator
370
364
  if (support_1.util.hasValue(productBundleIdentifier) &&
371
365
  !support_1.util.hasValue(this.updatedWDABundleId) &&
372
366
  constants_1.WDA_RUNNER_BUNDLE_ID !== productBundleIdentifier) {
373
- this.log.info(`Will uninstall running WDA since its bundle id is not equal to the default value ${constants_1.WDA_RUNNER_BUNDLE_ID}`);
374
- return await this.uninstall();
367
+ this.log.info(`Will not reuse running WDA since its bundle id is not equal to the default value ${constants_1.WDA_RUNNER_BUNDLE_ID}`);
368
+ return undefined;
375
369
  }
376
370
  const actualUpgradeTimestamp = await (0, utils_1.getWDAUpgradeTimestamp)();
377
371
  this.log.debug(`Upgrade timestamp of the currently bundled WDA: ${actualUpgradeTimestamp}`);
@@ -379,42 +373,17 @@ class WebDriverAgent {
379
373
  if (actualUpgradeTimestamp &&
380
374
  upgradedAt &&
381
375
  `${actualUpgradeTimestamp}`.toLowerCase() !== `${upgradedAt}`.toLowerCase()) {
382
- this.log.info('Will uninstall running WDA since it has different version in comparison to the one ' +
376
+ this.log.info('Will not reuse running WDA since it has different version in comparison to the one ' +
383
377
  `which is bundled with appium-xcuitest-driver module (${actualUpgradeTimestamp} != ${upgradedAt})`);
384
- return await this.uninstall();
378
+ return undefined;
385
379
  }
380
+ const cachedUrl = this.url.href;
386
381
  const message = support_1.util.hasValue(productBundleIdentifier)
387
- ? `Will reuse previously cached WDA instance at '${this.url.href}' with '${productBundleIdentifier}'`
388
- : `Will reuse previously cached WDA instance at '${this.url.href}'`;
382
+ ? `Will reuse previously cached WDA instance at '${cachedUrl}' with '${productBundleIdentifier}'`
383
+ : `Will reuse previously cached WDA instance at '${cachedUrl}'`;
389
384
  this.log.info(`${message}. Set the wdaLocalPort capability to a value different from ${this.url.port} if this is an undesired behavior.`);
390
- this.webDriverAgentUrl = this.url.href;
391
- }
392
- /**
393
- * Quit and uninstall running WDA.
394
- */
395
- async quitAndUninstall() {
396
- await this.quit();
397
- await this.uninstall();
398
- }
399
- async parseBundleId(wdaBundlePath) {
400
- const infoPlistPath = node_path_1.default.join(wdaBundlePath, 'Info.plist');
401
- const infoPlist = (await support_1.plist.parsePlist(await support_1.fs.readFile(infoPlistPath)));
402
- if (!infoPlist.CFBundleIdentifier) {
403
- throw new Error(`Could not find bundle id in '${infoPlistPath}'`);
404
- }
405
- return infoPlist.CFBundleIdentifier;
406
- }
407
- async fetchWDABundle() {
408
- if (!this.derivedDataPath) {
409
- return await (0, check_dependencies_1.bundleWDASim)(this.xcodebuild);
410
- }
411
- const wdaBundlePaths = await support_1.fs.glob(`${this.derivedDataPath}/**/*${constants_1.WDA_RUNNER_APP}/`, {
412
- absolute: true,
413
- });
414
- if (wdaBundlePaths.length === 0) {
415
- throw new Error(`Could not find the WDA bundle in '${this.derivedDataPath}'`);
416
- }
417
- return wdaBundlePaths[0];
385
+ this.webDriverAgentUrl = cachedUrl;
386
+ return cachedUrl;
418
387
  }
419
388
  setupProxies(sessionId) {
420
389
  const proxyOpts = {
@@ -456,9 +425,6 @@ class WebDriverAgent {
456
425
  this.agentPath = agentPath || node_path_1.default.resolve(this.bootstrapPath, 'WebDriverAgent.xcodeproj');
457
426
  this.log.info(`Using WDA agent: '${this.agentPath}'`);
458
427
  }
459
- async isRunning() {
460
- return !!(await this.getStatus());
461
- }
462
428
  /**
463
429
  * Return current running WDA's status like below
464
430
  * {
@@ -523,29 +489,6 @@ class WebDriverAgent {
523
489
  }
524
490
  return status;
525
491
  }
526
- /**
527
- * Uninstall WDAs from the test device.
528
- * Over Xcode 11, multiple WDA can be in the device since Xcode 11 generates different WDA.
529
- * Appium does not expect multiple WDAs are running on a device.
530
- */
531
- async uninstall() {
532
- try {
533
- const bundleIds = await this.device.getUserInstalledBundleIdsByBundleName(WDA_CF_BUNDLE_NAME);
534
- if (bundleIds.length === 0) {
535
- this.log.debug('No WDAs on the device.');
536
- return;
537
- }
538
- this.log.debug(`Uninstalling WDAs: '${bundleIds}'`);
539
- for (const bundleId of bundleIds) {
540
- await this.device.removeApp(bundleId);
541
- }
542
- }
543
- catch (e) {
544
- this.log.debug(e);
545
- this.log.warn(`WebDriverAgent uninstall failed. Perhaps, it is already uninstalled? ` +
546
- `Original error: ${e.message}`);
547
- }
548
- }
549
492
  async _cleanupProjectIfFresh() {
550
493
  if (this.canSkipXcodebuild) {
551
494
  return;
@@ -609,14 +552,14 @@ class WebDriverAgent {
609
552
  * https://github.com/appium/WebDriverAgent/releases
610
553
  * with proper sign for this case.
611
554
  *
612
- * When we implement launching XCTest service via appium-ios-device,
613
- * this implementation can be replaced with it.
614
- *
615
555
  * @param opts launching WDA with devicectl command options.
616
556
  */
617
557
  async _launchViaDevicectl(opts = {}) {
618
558
  const { env } = opts;
619
- await this.device.devicectl.launchApp(this.bundleIdForXctest, { env, terminateExisting: true });
559
+ await this.device.devicectl.launchApp(this.bundleIdForXctest, {
560
+ env,
561
+ terminateExisting: true,
562
+ });
620
563
  }
621
564
  /**
622
565
  * Launch WDA with preinstalled package without xcodebuild.
@@ -635,18 +578,7 @@ class WebDriverAgent {
635
578
  }
636
579
  this.log.info('Launching WebDriverAgent on the device without xcodebuild');
637
580
  if (this.isRealDevice) {
638
- // Current method to launch WDA process can be done via 'xcrun devicectl',
639
- // but it has limitation about the WDA preinstalled package.
640
- // https://github.com/appium/appium/issues/19206#issuecomment-2014182674
641
- if (this.platformVersion && support_1.util.compareVersions(this.platformVersion, '>=', '17.0')) {
642
- await this._launchViaDevicectl({ env: xctestEnv });
643
- }
644
- else {
645
- this.xctestApiClient = new appium_ios_device_1.Xctest(this.device.udid, this.bundleIdForXctest, null, {
646
- env: xctestEnv,
647
- });
648
- await this.xctestApiClient.start();
649
- }
581
+ await this._launchViaDevicectl({ env: xctestEnv });
650
582
  }
651
583
  else {
652
584
  await this.device.simctl.exec('launch', {
@@ -1 +1 @@
1
- {"version":3,"file":"webdriveragent.js","sourceRoot":"","sources":["../../lib/webdriveragent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webdriveragent.js","sourceRoot":"","sources":["../../lib/webdriveragent.ts"],"names":[],"mappings":"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"}
package/lib/index.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export {bundleWDASim} from './check-dependencies';
2
2
  export {NoSessionProxy} from './no-session-proxy';
3
3
  export {WebDriverAgent} from './webdriveragent';
4
- export {WDA_BASE_URL, WDA_RUNNER_BUNDLE_ID, PROJECT_FILE} from './constants';
4
+ export {WDA_BASE_URL, WDA_RUNNER_APP, WDA_RUNNER_BUNDLE_ID, PROJECT_FILE} from './constants';
5
5
  export {resetTestProcesses, BOOTSTRAP_PATH} from './utils';
6
6
 
7
7
  export * from './types';
package/lib/types.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import {type HTTPHeaders} from '@appium/types';
2
+ import type {Simctl} from 'node-simctl';
3
+ import type {Devicectl} from 'node-devicectl';
2
4
 
3
5
  // WebDriverAgentLib/Utilities/FBSettings.h
4
6
  export interface WDASettings {
@@ -99,9 +101,8 @@ export interface WebDriverAgentArgs {
99
101
 
100
102
  export interface AppleDevice {
101
103
  udid: string;
102
- simctl?: any;
103
- devicectl?: any;
104
- [key: string]: any;
104
+ simctl?: Simctl;
105
+ devicectl?: Devicectl;
105
106
  }
106
107
 
107
108
  /**
@@ -1,7 +1,7 @@
1
1
  import {waitForCondition} from 'asyncbox';
2
2
  import path from 'node:path';
3
3
  import {JWProxy} from '@appium/base-driver';
4
- import {fs, util, plist} from '@appium/support';
4
+ import {fs, util} from '@appium/support';
5
5
  import type {AppiumLogger, StringRecord} from '@appium/types';
6
6
  import {log as defaultLogger} from './logger';
7
7
  import {NoSessionProxy} from './no-session-proxy';
@@ -14,21 +14,19 @@ import {
14
14
  import {XcodeBuild} from './xcodebuild';
15
15
  import AsyncLock from 'async-lock';
16
16
  import {exec} from 'teen_process';
17
- import {bundleWDASim} from './check-dependencies';
18
17
  import {
19
18
  WDA_RUNNER_BUNDLE_ID,
20
- WDA_RUNNER_APP,
21
19
  WDA_BASE_URL,
22
20
  WDA_UPGRADE_TIMESTAMP_PATH,
23
21
  DEFAULT_TEST_BUNDLE_SUFFIX,
24
22
  } from './constants';
25
- import {Xctest} from 'appium-ios-device';
26
23
  import {strongbox} from '@appium/strongbox';
27
24
  import type {WebDriverAgentArgs, AppleDevice} from './types';
25
+ import type {Simctl} from 'node-simctl';
26
+ import type {Devicectl} from 'node-devicectl';
28
27
 
29
28
  const WDA_LAUNCH_TIMEOUT = 60 * 1000;
30
29
  const WDA_AGENT_PORT = 8100;
31
- const WDA_CF_BUNDLE_NAME = 'WebDriverAgentRunner-Runner';
32
30
  const SHARED_RESOURCES_GUARD = new AsyncLock();
33
31
  const RECENT_MODULE_VERSION_ITEM_NAME = 'recentWdaModuleVersion';
34
32
  const URL_PROTOCOL_SEPARATOR = '://';
@@ -64,7 +62,6 @@ export class WebDriverAgent {
64
62
  private readonly wdaLaunchTimeout: number;
65
63
  private readonly usePreinstalledWDA?: boolean;
66
64
  private readonly updatedWDABundleIdSuffix: string;
67
- private xctestApiClient?: Xctest | null;
68
65
  private _xcodebuild?: XcodeBuild | null;
69
66
  private _url?: URL;
70
67
 
@@ -112,7 +109,6 @@ export class WebDriverAgent {
112
109
 
113
110
  this.wdaLaunchTimeout = args.wdaLaunchTimeout || WDA_LAUNCH_TIMEOUT;
114
111
  this.usePreinstalledWDA = args.usePreinstalledWDA;
115
- this.xctestApiClient = null;
116
112
  this.updatedWDABundleIdSuffix = args.updatedWDABundleIdSuffix ?? DEFAULT_TEST_BUNDLE_SUFFIX;
117
113
 
118
114
  this._xcodebuild = this.canSkipXcodebuild
@@ -366,15 +362,14 @@ export class WebDriverAgent {
366
362
  async quit(): Promise<void> {
367
363
  if (this.usePreinstalledWDA) {
368
364
  this.log.info('Stopping the XCTest session');
369
- if (this.xctestApiClient) {
370
- this.xctestApiClient.stop();
371
- this.xctestApiClient = null;
372
- } else {
373
- try {
365
+ try {
366
+ if (this.device.simctl) {
374
367
  await this.device.simctl.terminateApp(this.bundleIdForXctest);
375
- } catch (e: any) {
376
- this.log.warn(e.message);
368
+ } else if (this.device.devicectl) {
369
+ await this.device.devicectl.terminateApp(this.bundleIdForXctest);
377
370
  }
371
+ } catch (e: any) {
372
+ this.log.warn(e.message);
378
373
  }
379
374
  } else if (!this.args.webDriverAgentUrl) {
380
375
  this.log.info('Shutting down sub-processes');
@@ -383,8 +378,7 @@ export class WebDriverAgent {
383
378
  }
384
379
  } else {
385
380
  this.log.debug(
386
- 'Do not stop xcodebuild nor XCTest session ' +
387
- 'since the WDA session is managed by outside this driver.',
381
+ 'Stopping neither xcodebuild nor XCTest session since WDA lifecycle is not managed by this driver',
388
382
  );
389
383
  }
390
384
 
@@ -415,13 +409,14 @@ export class WebDriverAgent {
415
409
  /**
416
410
  * Reuse running WDA if it has the same bundle id with updatedWDABundleId.
417
411
  * Or reuse it if it has the default id without updatedWDABundleId.
418
- * Uninstall it if the method faces an exception for the above situation.
412
+ *
413
+ * @returns The WDA URL used for caching on success, or `undefined` if caching was skipped.
419
414
  */
420
- async setupCaching(): Promise<void> {
415
+ async setupCaching(): Promise<string | undefined> {
421
416
  const status = await this.getStatus(0);
422
417
  if (!status || !status.build) {
423
418
  this.log.debug('WDA is currently not running. There is nothing to cache');
424
- return;
419
+ return undefined;
425
420
  }
426
421
 
427
422
  const {productBundleIdentifier, upgradedAt} = status.build as any;
@@ -432,9 +427,9 @@ export class WebDriverAgent {
432
427
  this.updatedWDABundleId !== productBundleIdentifier
433
428
  ) {
434
429
  this.log.info(
435
- `Will uninstall running WDA since it has different bundle id. The actual value is '${productBundleIdentifier}'.`,
430
+ `Will not reuse running WDA since it has different bundle id. The actual value is '${productBundleIdentifier}'.`,
436
431
  );
437
- return await this.uninstall();
432
+ return undefined;
438
433
  }
439
434
  // for simulator
440
435
  if (
@@ -443,9 +438,9 @@ export class WebDriverAgent {
443
438
  WDA_RUNNER_BUNDLE_ID !== productBundleIdentifier
444
439
  ) {
445
440
  this.log.info(
446
- `Will uninstall running WDA since its bundle id is not equal to the default value ${WDA_RUNNER_BUNDLE_ID}`,
441
+ `Will not reuse running WDA since its bundle id is not equal to the default value ${WDA_RUNNER_BUNDLE_ID}`,
447
442
  );
448
- return await this.uninstall();
443
+ return undefined;
449
444
  }
450
445
 
451
446
  const actualUpgradeTimestamp = await getWDAUpgradeTimestamp();
@@ -457,51 +452,21 @@ export class WebDriverAgent {
457
452
  `${actualUpgradeTimestamp}`.toLowerCase() !== `${upgradedAt}`.toLowerCase()
458
453
  ) {
459
454
  this.log.info(
460
- 'Will uninstall running WDA since it has different version in comparison to the one ' +
455
+ 'Will not reuse running WDA since it has different version in comparison to the one ' +
461
456
  `which is bundled with appium-xcuitest-driver module (${actualUpgradeTimestamp} != ${upgradedAt})`,
462
457
  );
463
- return await this.uninstall();
458
+ return undefined;
464
459
  }
465
460
 
461
+ const cachedUrl = this.url.href;
466
462
  const message = util.hasValue(productBundleIdentifier)
467
- ? `Will reuse previously cached WDA instance at '${this.url.href}' with '${productBundleIdentifier}'`
468
- : `Will reuse previously cached WDA instance at '${this.url.href}'`;
463
+ ? `Will reuse previously cached WDA instance at '${cachedUrl}' with '${productBundleIdentifier}'`
464
+ : `Will reuse previously cached WDA instance at '${cachedUrl}'`;
469
465
  this.log.info(
470
466
  `${message}. Set the wdaLocalPort capability to a value different from ${this.url.port} if this is an undesired behavior.`,
471
467
  );
472
- this.webDriverAgentUrl = this.url.href;
473
- }
474
-
475
- /**
476
- * Quit and uninstall running WDA.
477
- */
478
- async quitAndUninstall(): Promise<void> {
479
- await this.quit();
480
- await this.uninstall();
481
- }
482
-
483
- private async parseBundleId(wdaBundlePath: string): Promise<string> {
484
- const infoPlistPath = path.join(wdaBundlePath, 'Info.plist');
485
- const infoPlist = (await plist.parsePlist(await fs.readFile(infoPlistPath))) as {
486
- CFBundleIdentifier?: string;
487
- };
488
- if (!infoPlist.CFBundleIdentifier) {
489
- throw new Error(`Could not find bundle id in '${infoPlistPath}'`);
490
- }
491
- return infoPlist.CFBundleIdentifier;
492
- }
493
-
494
- private async fetchWDABundle(): Promise<string> {
495
- if (!this.derivedDataPath) {
496
- return await bundleWDASim(this.xcodebuild);
497
- }
498
- const wdaBundlePaths = await fs.glob(`${this.derivedDataPath}/**/*${WDA_RUNNER_APP}/`, {
499
- absolute: true,
500
- });
501
- if (wdaBundlePaths.length === 0) {
502
- throw new Error(`Could not find the WDA bundle in '${this.derivedDataPath}'`);
503
- }
504
- return wdaBundlePaths[0];
468
+ this.webDriverAgentUrl = cachedUrl;
469
+ return cachedUrl;
505
470
  }
506
471
 
507
472
  private setupProxies(sessionId: string): void {
@@ -549,10 +514,6 @@ export class WebDriverAgent {
549
514
  this.log.info(`Using WDA agent: '${this.agentPath}'`);
550
515
  }
551
516
 
552
- private async isRunning(): Promise<boolean> {
553
- return !!(await this.getStatus());
554
- }
555
-
556
517
  /**
557
518
  * Return current running WDA's status like below
558
519
  * {
@@ -626,32 +587,6 @@ export class WebDriverAgent {
626
587
  return status;
627
588
  }
628
589
 
629
- /**
630
- * Uninstall WDAs from the test device.
631
- * Over Xcode 11, multiple WDA can be in the device since Xcode 11 generates different WDA.
632
- * Appium does not expect multiple WDAs are running on a device.
633
- */
634
- private async uninstall(): Promise<void> {
635
- try {
636
- const bundleIds = await this.device.getUserInstalledBundleIdsByBundleName(WDA_CF_BUNDLE_NAME);
637
- if (bundleIds.length === 0) {
638
- this.log.debug('No WDAs on the device.');
639
- return;
640
- }
641
-
642
- this.log.debug(`Uninstalling WDAs: '${bundleIds}'`);
643
- for (const bundleId of bundleIds) {
644
- await this.device.removeApp(bundleId);
645
- }
646
- } catch (e: any) {
647
- this.log.debug(e);
648
- this.log.warn(
649
- `WebDriverAgent uninstall failed. Perhaps, it is already uninstalled? ` +
650
- `Original error: ${e.message}`,
651
- );
652
- }
653
- }
654
-
655
590
  private async _cleanupProjectIfFresh(): Promise<void> {
656
591
  if (this.canSkipXcodebuild) {
657
592
  return;
@@ -725,9 +660,6 @@ export class WebDriverAgent {
725
660
  * https://github.com/appium/WebDriverAgent/releases
726
661
  * with proper sign for this case.
727
662
  *
728
- * When we implement launching XCTest service via appium-ios-device,
729
- * this implementation can be replaced with it.
730
- *
731
663
  * @param opts launching WDA with devicectl command options.
732
664
  */
733
665
  private async _launchViaDevicectl(
@@ -735,7 +667,10 @@ export class WebDriverAgent {
735
667
  ): Promise<void> {
736
668
  const {env} = opts;
737
669
 
738
- await this.device.devicectl.launchApp(this.bundleIdForXctest, {env, terminateExisting: true});
670
+ await (this.device.devicectl as Devicectl).launchApp(this.bundleIdForXctest, {
671
+ env,
672
+ terminateExisting: true,
673
+ });
739
674
  }
740
675
 
741
676
  /**
@@ -755,19 +690,9 @@ export class WebDriverAgent {
755
690
  }
756
691
  this.log.info('Launching WebDriverAgent on the device without xcodebuild');
757
692
  if (this.isRealDevice) {
758
- // Current method to launch WDA process can be done via 'xcrun devicectl',
759
- // but it has limitation about the WDA preinstalled package.
760
- // https://github.com/appium/appium/issues/19206#issuecomment-2014182674
761
- if (this.platformVersion && util.compareVersions(this.platformVersion, '>=', '17.0')) {
762
- await this._launchViaDevicectl({env: xctestEnv});
763
- } else {
764
- this.xctestApiClient = new Xctest(this.device.udid, this.bundleIdForXctest, null, {
765
- env: xctestEnv,
766
- });
767
- await this.xctestApiClient.start();
768
- }
693
+ await this._launchViaDevicectl({env: xctestEnv});
769
694
  } else {
770
- await this.device.simctl.exec('launch', {
695
+ await (this.device.simctl as Simctl).exec('launch', {
771
696
  args: ['--terminate-running-process', this.device.udid, this.bundleIdForXctest],
772
697
  env: xctestEnv,
773
698
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appium-webdriveragent",
3
- "version": "12.2.2",
3
+ "version": "13.0.0",
4
4
  "description": "Package bundling WebDriverAgent",
5
5
  "main": "./build/lib/index.js",
6
6
  "types": "./build/lib/index.d.ts",
@@ -65,6 +65,7 @@
65
65
  "chai-as-promised": "^8.0.0",
66
66
  "conventional-changelog-conventionalcommits": "^9.0.0",
67
67
  "mocha": "^11.0.1",
68
+ "node-devicectl": "^1.4.0",
68
69
  "node-simctl": "^8.0.0",
69
70
  "prettier": "^3.0.0",
70
71
  "semantic-release": "^25.0.2",
@@ -77,7 +78,6 @@
77
78
  "@appium/base-driver": "^10.3.0",
78
79
  "@appium/strongbox": "^1.0.0-rc.1",
79
80
  "@appium/support": "^7.0.0-rc.1",
80
- "appium-ios-device": "^3.0.0",
81
81
  "appium-ios-simulator": "^8.0.0",
82
82
  "async-lock": "^1.0.0",
83
83
  "asyncbox": "^6.1.0",
@@ -1,7 +0,0 @@
1
- declare module 'appium-ios-device' {
2
- export class Xctest {
3
- constructor(...args: any[]);
4
- start(): Promise<void>;
5
- stop(): void;
6
- }
7
- }