I have an issue with Device view for mobile recording.
1. I start the recorder ok, apk is loaded.
2. App’s login page is displayed.
3. Pressing capture object displays current phone objects. This works on 2 screens (like login and next screen with more icons/menus to click on).
4. I Navigate to another screen (i.e. I have login - tap credit card - credit card details ). Credit card details page loads on the emulator.
5. I Press capture object - objects are captured but the Device view screen goes totally black. If I click on capture object it is highlighted in green in device view but I cannot see the object itself as it is all black.
Note: If I go back on login screen and press capture it all works file, device view is operational. But on most menus in that app I see only darkness in device view. The behavior is exactly the same with the spy tool and it is 100% consistent.
I am evaluating this solution for both mobile and web for an important project. So far I like the capabilities it provides. But I will use Katalon mostly for mobile testing for the time being and it is really important for me to be able to use record/spy effectively.
Please assist. Thanks in advance.
Appium (the tool underlying Katalon Studio tests) does not allow capturing of screens marked “secure” in an Android app. The credit card screens are most likely marked as “secure” in order to prevent screenshots of credit card numbers.
You should still be able to capture the elements using Mobile Spy’s tree navigation, you just won’t be able to see a preview.
Hope this helps,
Thanks, that explains it. Now I need to check which screens are marked secure.
I am actually using the spy tool to capture the elements as I’d like renaming them on-the-fly.
Thanks for the assistance.
I have additional issue with this I am not sure what is the cause. The above described scenario works only on Android 6.0, on android 7.0+ the moment I try to capture ‘secure’ page, the spy tool hangs. It states ‘capturing’ forever which makes it possible to capture elements only on Android 6.
Is the hanging happening with a real device or a simulator? I’ve found that sometimes Katalon Studio/Appium will fail to connect to Android devices once in awhile and I need to:
1. Quit Katalon Studio
2. Quit any emulators
3. Kill any of the “adb” (Android Debug Bridge) processes that are running
4. Start Katalon Studio again
Hope this helps,
Restarted the PC as well. The behavior is very consistent:
1. Android version 7.0+ secure page - capturing hangs.
2. Android version 7.0+ non-secure page - capturing is fine.
3. Android version 6.0 - secure page - capturing is fine, I get black screen in Device view but the elements are captured.
3. Android version 6.0 - non-secure page, capturing is fine.
This is on both real device and emulator.
The problem I have is tests with 6.0 captured elements do not work on android 7 and higher(certain element not found for some reason). However I cannot inspect elements on the respective android version due to the above issue.
Hi Alex, that’s really weird that an element captured in 6.0 wouldn’t work in 7.0. As far as I know, it should work, assuming Android didn’t change the foundational structure of how they layout screens between those versions. Could you share what the captured object looks like in your Object Repository?
Hi Alex, I came across another post where someone was having an issue with the spy/capture and they suggested:
- Navigate to Mobile settings: Project -> Settings -> Execution -> Default -> Mobile -> Android
- Add ‘appWaitActivity’ key, type of String, and value: *
Not sure if this will help, but it’s worth a shot,
About the Android6-Android7 issue, below is screenshot from 3 steps and the element for password field(it is a form with First Name, Last Name, Password and Confirm password fields). Test is fine on Android 7 but Password element is not found on Android 6. Element is located by text and class, pretty straightforward.
P.S. About your last comment - I found out UI automator have the same problem of capturing ‘secure’ pages on android 7(reported unexpected EOF). I’ll be capturing on 6.0 for now and working on android 7 to run the tests. The above issue is a bit more of concern for me as it breaks my tests