I noticed that XCTest(UI) required us to input passcode to run on a real device if the device has had a passcode security preference on iOS 15. The passcode can be fingerprint or face id. (It depends on its preference) It means Appium/WDA also gets the same issue. It should not be an impact on…More
Tag Archives: appium
[Appium][Flutter] Handling WebView contexts in flutter-appium-driver
I’ve recently added WebView feature in the appium-flutter-driver Webview still work in progress? #45. The v0.0.32 should have it. debuggingEnabled is necessary t enable WebView availability in Flutter. Then, appium UIA2/XCUITest, which runs to handle the application under test as part of appium-flutter-driver, can find its WebView context. So, you can do like the below code…More
[Appium][Flutter] Flutter driver is now in appium-userland repository
I’ve created a prototype for Flutter x Appium in https://kazucocoa.wordpress.com/2019/05/27/appiumfluttercalls-flutter-driver-via-httprequests/, but https://github.com/truongsinh/appium-flutter-driver already has many users than the prototype. So I’ve decided to contribute to the flutter-driver as a primary voluntary contribution. Recently, the https://github.com/truongsinh/appium-flutter-driver moved to https://github.com/appium-userland/appium-flutter-driver so that other contributors were also able to maintain the project. The intention of the appium-userland organization…More
[Appium][Android] Chrome Custom Tab
A note about chrome custom tab when I tested in appium#13543 Demo apps in https://github.com/GoogleChrome/android-browser-helper helped me to check basic chrome custom tabs availability via Appium. Some apps may have custom chrome tabs. Then, I assume it requires setting chrome options properly. My test environment had Appium 1.21.0 or newer, so possibly older ones had…More
[Android][Compose][Appium] More accessibility-friendly
I toyed compose with Appium like the below before to investigate the availability of compose in Appium. [Android][Compose][Appium] Take a look at AndroidComposeTestRule See https://github.com/appium/appium/issues/15138 as well. In early April, I was not able to compose materials in the below image area, but today I was able to. For example, “send” button was not accessible,…More
[Appium][Android] Compose Layout
About https://github.com/appium/appium/issues/15138 I toyed compose layout with JetChat in https://github.com/android/compose-samples with Appium. Below XMLs are the result. When we add contentDescription in each element, Appium can access them. But I understand the contentDescription is for accessibility feature. We should not use it only for automation as possible. I wondered resource-id and tag. But so far,…More
[Android][Compose][Appium] Take a look at AndroidComposeTestRule
Composer has ComposeTestRule and AndroidComposeTestRule to test Composer. https://developer.android.com/jetpack/compose/testing As Appium, we’d like to inject them to interact with composer components reliably. So, I took a look at their code a bit to understand the codebase. According to https://developer.android.com/jetpack/compose/testing#espresso-interop this section, the composer rule can use with Espresso. Thus, I guessed Appium-Espresso driver also could…More
[Appium][Flutter] integration_test?
As a note for me. https://github.com/KazuCocoa/appium_dart/issues/28#issuecomment-796619747 https://github.com/KazuCocoa/proto-flutter-driver-server/issues/3 I guess the flutter_driver style will remain for a while to achieve E2E style automation, but it could be more flaky than integration tests with hermetic environment, unfortunately. I understand to keep maintain might be hard, but hopefully they also develop (full) e2e automation as well. (But could…More
[Android] Get a launcher activity name
Not a new tip, but this is helpful to get a package name and the launcher activity name.More
[Appium] waitForIdleTimeout and waitForSelectorTimeout
Appium has waitForIdleTimeout and waitForSelectorTimeout in https://github.com/appium/appium-uiautomator2-driver#settings-api which can configure via SettingsAPI. It changes these timeout configurations in the UIAutomator. It could help to make interaction speed fast. Not new, but I found a good page to explain it in Kaspresso‘s repository. Thus, I’d like to leave it here. Appium capabilities example:More