Hi, my app implements Google Wallet. I want to run Appium tests on Google Wallet stuffs. UIautomatorviewer can see the IDs of Google Wallet elements but Appium. The problem maybe because Google Wallet is in a different package (“com.google.android.gms”). Is there a way to pass multiple app packages to Appium? Or what is a solution for this?
Give example how you looking for Google Wallet elements in code.
For example,
In uiautomatorviewer, I can see details about a textview (credit card) as below:
text: MASTERCARD xxx-4444
resource id: com.google.android.gms:id/text_payment_descriptions
class: android.widget.TextView
package: com.google.android.gms
But when I try to find text_payment_descriptions in the test, it cannot find it.
how you do it in code? e.d. driver.findElements(MobileBy.Id(“com.google.android.gms:id/text_payment_descriptions”)).get(0).getText() - ?
if mentioned above failed then i suggest to look manually in code in driver.getPageSource()
Cool. It works when I use: driver.findElements(MobileBy.Id(“com.google.android.gms:id/text_payment_descriptions”)).get(0).getText();
Initially, I used driver.findElement(By.id("text_payment_descriptions)).getText();
I don’t know why it doesn’t work. Any idea? And thank you though.
Cause in appium v1.4+, appium server looking for items like application package name + id. But you trying to find element not in given to appium application. That is why it is important to provode full path of id (package name and id)