appium / appium/java-client

io.appium.java_client.NoSuchContextException: An unknown server-side error occurred while processing the command. Original error: An unknown server-side error occurred while processing the command. Original error: Could not proxy command to the remote server. Original error: timeout of 240000ms exceeded

Open
#2,075 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
1.3k
Forks
752
Avg merge
6d 21h
Merged PRs (30d)
8

Description

Description

Now able to switch to WebView.

Environment

  • Java client build version or git revision if you use some snapshot: 2.34.1
  • Appium server version or git revision if you use some snapshot: 2.2.2
  • Desktop OS/version used to run Appium if necessary: Windows 10
  • Node.js version (unless using Appium.app|exe) or Appium CLI or Appium.app|exe: v18.18.0
  • Mobile platform/version under test: Android 13
  • Real device or emulator/simulator: Real Device : Moto Edge 30

Code To Reproduce Issue

protected void switchToWebViewContext() {
	String strWebContextName = ((AndroidDriver)getAppiumDriver()).getContextHandles().stream().filter(ctx -> ctx.contains("WEBVIEW_")).findAny().orElse(null);
	System.out.println("strWebContextName " + strWebContextName);
	if (Objects.nonNull(strWebContextName)) {
		((AndroidDriver) getAppiumDriver()).context(strWebContextName);
		System.out.println("Switched to Web view ");
	}
}

here I am able to get webview context name strWebContextName WEBVIEW_com.xxxxx.xxxxxxx

Exception Stacktraces

io.appium.java_client.NoSuchContextException: An unknown server-side error occurred while processing the command. Original error: An unknown server-side error occurred while processing the command. Original error: Could not proxy command to the remote server. Original error: timeout of 240000ms exceeded
Build info: version: '4.15.0', revision: '1d14b5521b'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '15.0.2'
Driver info: io.appium.java_client.android.AndroidDriver
Command: [bddfd85a-6e5e-46c2-842e-1b8371fc128a, switchToContext {name=WEBVIEW_com.xxxx.xxxxuat}]
Capabilities {appium:app: D:\MobiWebAutoFramework\mob..., appium:appActivity: com.xxxx.xxxx.activity..., appium:appPackage: com.xxxx.xxxxuat, appium:autoGrantPermissions: true, appium:autoLaunch: false, appium:automationName: UIAutomator2, appium:chromedriverExecutable: D:\chromedriver-win32\chrom..., appium:chromedriverPort: 10002, appium:clearDeviceLogsOnStart: true, appium:clearSystemFiles: true, appium:databaseEnabled: false, appium:desired: {app: D:\MobiWebAutoFramework\mob..., appActivity: com.xxxx.xxxx.activity..., appPackage: com.xxxx.xxxxuat, autoGrantPermissions: true, autoLaunch: false, automationName: UIAutomator2, chromedriverExecutable: D:\chromedriver-win32\chrom..., chromedriverPort: 10002, clearDeviceLogsOnStart: true, clearSystemFiles: true, ensureWebviewsHavePages: true, fullReset: false, ignoreHiddenApiPolicyError: true, mjpegServerPort: 62920, nativeWebScreenshot: true, newCommandTimeout: 240, noReset: true, platformName: ANDROID, platformVersion: 13, shouldTerminateApp: true, showChromedriverLog: true, systemPort: 10001, udid: ZD222CJSXB, webviewDevtoolsPort: 10901}, appium:deviceApiLevel: 33, appium:deviceManufacturer: motorola, appium:deviceModel: motorola edge 30, appium:deviceName: ZD222CJSXB, appium:deviceScreenDensity: 400, appium:deviceScreenSize: 1080x2400, appium:deviceUDID: ZD222CJSXB, appium:ensureWebviewsHavePages: true, appium:fullReset: false, appium:ignoreHiddenApiPolicyError: true, appium:javascriptEnabled: true, appium:locationContextEnabled: false, appium:mjpegServerPort: 62920, appium:nativeWebScreenshot: true, appium:networkConnectionEnabled: true, appium:newCommandTimeout: 240, appium:noReset: true, appium:pixelRatio: 2.5, appium:platformVersion: 13, appium:shouldTerminateApp: true, appium:showChromedriverLog: true, appium:statBarHeight: 105, appium:systemPort: 10001, appium:takesScreenshot: true, appium:udid: ZD222CJSXB, appium:viewportRect: {height: 2130, left: 0, top: 105, width: 1080}, appium:warnings: {}, appium:webStorageEnabled: false, appium:webviewDevtoolsPort: 10901, platformName: ANDROID}
Session ID: bddfd85a-6e5e-46c2-842e-1b8371fc128a

Link To Appium Logs

https://gist.github.com/dipakkumar1225/e83e2a3c0b2c63a10db070fb489141ff#file-webcontext

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the switchToWebViewContext method and the linked Appium log, then review the reported Java client 2.34.1, Appium 2.2.2, Android 13, and UIAutomator2 environment. Reproduce the context switch if possible and determine whether the Java client has an actionable failure; done means documenting a confirmed client issue with a focused test or identifying the upstream component responsible.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
mobile, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.