[Android] [INSTALL_FAILED_INSUFFICIENT_STORAGE: Scanning Failed.: Package could not be assigned a valid UID] in Android

I heard “INSTALL_FAILED_INSUFFICIENT_STORAGE: Scanning Failed” error message a couple of times. https://github.com/appium/appium/issues/13957 is probably the same message in the appium repository. The logcat was: The invalid error message was probably the below (from https://cs.android.com/android/platform/superproject/+/master:frameworks/base/services/core/java/com/android/server/pm/Settings.java;l=4096-4097?q=pm%2FSettings.java ) So, when Android already has probably over Process.LAST_APPLICATION_UID – Process.FIRST_APPLICATION_UID, it definitely handles the app id as -1. It causes…More

[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