You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've come across an odd issue that I can't fully explain with this. Running automation tests via robot framework using pip modules/packages listed in Environment section below.
Recently upgraded the test machines for Fedora 39 and updated all automation tools to latest.
Afterwards we started seeing regular failures (not always but almost always) on units just after a browser webview app separate (but related) to our main webview app had been closed. Our main app launches the browser app (a separate apk), which opens its own webview, while the main app stays open/active/alive in the background. The browser was being tested using native context and the tests were attempting to switch back to the chrome webview context of the main app.
The tests were failing with a "NoSuchContextException: Message: No such context found" error. This can be see in the attached appium log at 2023-12-01 20:00:48:243. The reason that the main app's webview is not listed is given in the attached appium log as being due to the fact that it reported having zero pages.
(note the provided log is from a test run where the empty browser webview is present at the start of the tests so the failure comes sooner and the logs are shorter)
However I ran a script in parallel to the appium tests and the webview for the main app is not empty at the time of the failure nor is it ever populated as empty (following is from querying the webview info in the same way as https://github.com/appium/appium-android-driver/blob/master/lib/helpers/webview.ts#L351 and using the same adb executable as appium does).
The browser app's webview is indeed empty at this time though and it appears as though the presence of this empty browser webview is somehow affecting the interpretation of the main app's webview page info. Since querying the webview info directly using the same methodology and same adb executable as Appium clearly shows that the main app's webview is not empty, I am unsure as to where this is going wrong internally to the Android driver but that seems to be the case.
The above logs are from an Android 7 STB (with Chrome 119 webview) but we also see exactly the same issue on an Android 11 terminal device running same webview. Downgrading to 117 webview didn't help.
To further muddy the waters, I cannot reproduce this issue on another machine running Fedora 38. As far as I can ascertain, it has all the same environment as below with the obvious exception of the OS (Fedora 38 instead of 39) and python (v3.11.6 instead of v3.12.0). It never gives this issue when running the same tests against the same devices.
Environment is as follows:
os name: NAME="Fedora Linux"
os version: VERSION="39 (Workstation Edition)"
appium: 2.2.2
appium-doctor: 2.0.28
appium driver:
✔ Listing installed drivers
I've come across an odd issue that I can't fully explain with this. Running automation tests via robot framework using pip modules/packages listed in Environment section below.
Recently upgraded the test machines for Fedora 39 and updated all automation tools to latest.
Afterwards we started seeing regular failures (not always but almost always) on units just after a browser webview app separate (but related) to our main webview app had been closed. Our main app launches the browser app (a separate apk), which opens its own webview, while the main app stays open/active/alive in the background. The browser was being tested using native context and the tests were attempting to switch back to the chrome webview context of the main app.
The tests were failing with a "NoSuchContextException: Message: No such context found" error. This can be see in the attached appium log at 2023-12-01 20:00:48:243. The reason that the main app's webview is not listed is given in the attached appium log as being due to the fact that it reported having zero pages.
appium_zero_page_webview.log
(note the provided log is from a test run where the empty browser webview is present at the start of the tests so the failure comes sooner and the logs are shorter)
However I ran a script in parallel to the appium tests and the webview for the main app is not empty at the time of the failure nor is it ever populated as empty (following is from querying the webview info in the same way as https://github.com/appium/appium-android-driver/blob/master/lib/helpers/webview.ts#L351 and using the same adb executable as appium does).
The browser app's webview is indeed empty at this time though and it appears as though the presence of this empty browser webview is somehow affecting the interpretation of the main app's webview page info. Since querying the webview info directly using the same methodology and same adb executable as Appium clearly shows that the main app's webview is not empty, I am unsure as to where this is going wrong internally to the Android driver but that seems to be the case.
The above logs are from an Android 7 STB (with Chrome 119 webview) but we also see exactly the same issue on an Android 11 terminal device running same webview. Downgrading to 117 webview didn't help.
To further muddy the waters, I cannot reproduce this issue on another machine running Fedora 38. As far as I can ascertain, it has all the same environment as below with the obvious exception of the OS (Fedora 38 instead of 39) and python (v3.11.6 instead of v3.12.0). It never gives this issue when running the same tests against the same devices.
Environment is as follows:
os name: NAME="Fedora Linux"
os version: VERSION="39 (Workstation Edition)"
appium: 2.2.2
appium-doctor: 2.0.28
appium driver:
✔ Listing installed drivers
(pip modules/packages)
Appium-Python-Client 3.1.0
robotframework 6.1.1
robotframework-appiumlibrary 2.0.0
robotframework-pythonlibcore 4.3.0
robotframework-seleniumlibrary 6.2.0
robotframework-sshlibrary 3.8.0
selenium 4.15.2
wheel 0.42.0
google-chrome: Google Chrome 119.0.6045.159
/usr/bin/chromedriver: ChromeDriver 119.0.6045.105 (38c72552c5e15ba9b3117c0967a0fd105072d7c6-refs/branch-heads/6045@{#1103})
/usr/local/bin/chromedriver: ChromeDriver 119.0.6045.105 (38c72552c5e15ba9b3117c0967a0fd105072d7c6-refs/branch-heads/6045@{#1103})
~/.appium/.../chromedriver/linux/: chromedriver-linux64_v119.0.6045.105
Python version v3.12.0
android sdk:
Installed packages:=====================] 100% Fetch remote repository...
The text was updated successfully, but these errors were encountered: