[Appium][Compose] testTagsAsResourceId helps Appium/UIA2

I don’t know since, but testTagsAsResourceId is available as part of androidx.compose.ui.semantics package in Compose. According to the description, the value will be available as AccessibilityNodeInfo.viewIdResourceName. This is brilliant news since UIAutomator can access the element via resource id as before, via accessibility tree-based integration test such as Appium/UIA2 driver. testTag is via extras. Now,…More

[iOS] XCUIAutomation.framework in Xcode 13

Appium/WDA has referred to XCTest and XCTAutomationSupport frameworks. Recently, some header files for XCUITest has removed but they still worked. Thus, I wondered where the removed files. Then, I found XCUIAutomation.framework has existed since Xcode 13 in a private framework. For example, Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/XCUIAutomation.framework. Appium/WDA failed to build when I simply added the framework in linker,…More

[appium] try out some settings when you cannot get expected elements

In some cases, no expected elements are in views via Appium/UIA2 driver. It has some conditions, so it is worth trying out the below settings apis. enableMultiWindows ignoreUnimportantViews allowInvisibleElements These attributes allow you to find elements via Appium/UIA2 driver. They may not be able to find via uiautomator framework via Android as general way, so…More

[Appium] Debug gesture pointer in Android

This is a tip to debug gesture actions. Android OS has many debug options in its developer tools. This tip is also one of them. In inout section, you can find Show taps and Pointer location items. They allow showing helpful debug information for gestures. They will help you to figure out how gestures work.More

[Appium] make appium/WDA re-use fast with “testProductsPath” since Xcode 13.3 beta 2

https://developer.apple.com/documentation/xcode-release-notes/xcode-13_3-release-notes -testProductsPath argument for xcodebuild exists in Xcode 13.3 beta 2. It helps to split xcodebuild for testing. xcodebuild already has build-for-testing and test-without-building. This argument enhances the usage more. In Appium/WDA build already has some helpful methods to run WDA fast. appium:useXctestrunFile, appium:usePrebuiltWDA and appium:derivedDataPath. This testProductsPath helps appium:useXctestrunFile way to make it simple.…More

[Appium] Progressive Web Apps on iOS

Progressive Web Apps (PWA) works as an app on iOS while the base is Web Site. Appium allows you to automate, but it needs a few tricks. Establish a session with 1) autoLaunch: false and bundleId: ‘com.apple.mobilesafari’, or 2) without app and bundleId but with includeSafariInWebviews: true Launch the home screen with activating com.apple.springboard Click…More

[iOS] note about codesign

This article is a note about codesign in iOS. Apple products have codesign CLI to manage codesign features. Once you unzip .ipa file (iOS case), the command allows you to check the codesign data etc. Then, you could see the below data. embedded.mobileprovision in the .app is the provision profile stuff. _CodeSignature has sign information.…More

Note about “image injection”

Real environment approach HeadSpin Mocking approach SauceLabs https://www.browserstack.com/docs/app-automate/appium/advanced-features/camera-image-injection https://docs.saucelabs.com/mobile-apps/features/camera-image-injection/ Perfecto https://help.perfecto.io/perfecto-help/content/perfecto/manual-testing/instrumentation.htm I know that real environment and mocking is trade-off things. It should depend on what test cases want to check, close to actual user usages as possible (and analyze the result), or allowing to mocks by making the test grey box. Personally, when you’d…More