-
-
Notifications
You must be signed in to change notification settings - Fork 435
feat: install prebuilt WDA as prebuiltWDAPath capability #1672
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 11 commits
8a49532
f46434c
b9f4792
7d822b2
0e27e03
48b1798
979dbad
4a867f5
6085e76
aaf6e1b
894f1e4
735dee0
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -13,6 +13,7 @@ It lets you to start a XCUITest driver session without the `xcodebuild` command | |
- [`appium:usePreinstalledWDA`](capabilities.md#webdriveragent) | ||
- Optional | ||
- [`appium:updatedWDABundleId`](capabilities.md#webdriveragent) | ||
- [`appium:prebuiltWDAPath`](capabilities.md#webdriveragent) | ||
|
||
### Example steps with Xcode | ||
|
||
|
@@ -80,3 +81,32 @@ Some 3rd party tools such as [ios-deploy](https://github.com/ios-control/ios-dep | |
|
||
`WebDriverAgentRunner-Runner.app` package may exist in a `derivedDataPath` directory as explained in [Real Device Configuration tutorial](./real-device-config.md). | ||
The `WebDriverAgentRunner-Runner.app` can be installed without xcodebuild with the 3rd party tools. | ||
|
||
|
||
### Set `appium:prebuiltWDAPath` | ||
|
||
If `appium:prebuiltWDAPath` is provided with properly signed `WebDriverAgentRunner-Runner.app` test bundle (please check [Real Device Configuration tutorial](real-device-config.md)), XCUITest driver will install the application and launch it every session. | ||
The test bundle cannot set the versioning as `CFBundleVersion`, thus the installation occurs every session. | ||
|
||
The `.app` test bundle is generally generated as below if you built with Xcode. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. sorry, I don't understand what this sentence describes There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I tried to leave the default place for Advanced users who can build with xcodebuild it not this scope. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Usually you can find the actual WebDriverAgentRunner application bundle at the below location if you use Xcode to build it. |
||
|
||
``` | ||
~/Library/Developer/Xcode/DerivedData/WebDriverAgent-<random string>/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app | ||
``` | ||
|
||
Then, the capabilities will be: | ||
|
||
```ruby | ||
# Ruby | ||
capabilities: { | ||
"platformName": "ios", | ||
"appium:automationName": "xcuitest", | ||
"appium:udid": "<udid>", | ||
"appium:usePreinstalledWDA": true, | ||
"appium:prebuiltWDAPath": "/path/to/Library/Developer/Xcode/DerivedData/WebDriverAgent-<random string>/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app" | ||
} | ||
@core = Appium::Core.for capabilities: capabilities | ||
driver = @core.start_driver | ||
# do something | ||
driver.quit | ||
``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Test bundles cannot be versioned using CFBundleVersion as vanilla apps do. That is why it is necessary to (re)install them for every test session