Appium 關於微信 H5 頁面切換 webview 的問題
Appium 進行微信小程式自動化測試,碰到切換 webview 後定位不到 H5 頁面 元素問題
以下是我做的前提準備以及一些程式碼, 請問大神 哪裡有問題?
1.開啟微信除錯功能
#1.開啟微信除錯功能
http://debugxweb.qq.com/?inspector=true
2.在電腦中安裝 chromedriver
#2.在電腦中安裝 chromedriver
幫我看看 我的 微信裡面的 webview 版本號 122.0.6261.120 和 chromedriver 的版本號 120.0.6099.109 對應的關係對不對??
我這裡安裝的是這個版本,Version:120.0.6099.109(r1217362)
【chromedriver 下載連結地址:參考文獻;https://zhuanlan.zhihu.com/p/657653897】
手機上面檢視
{
"user-agent": "Mozilla/5.0 (Linux; Android 9; V1941A Build/PKQ1.190302.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/122.0.6261.120 Mobile Safari/537.36 XWEB/1220053 MMWEBSDK/20240404 MMWEBID/2626 MicroMessenger/8.0.49.2600(0x2800313D) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64"
}
3.以下是 python 和 appium 程式碼
aps = {}
caps["platformName"] = "android"
caps["deviceName"] = "aa"
caps["appPackage"] = "com.tencent.mm"
caps["appActivity"] =".ui.LauncherUI"
caps['noReset']=True
caps['unicodeKeyboard']=True
caps['resetKeyboard']=True
options = selenium.webdriver.ChromeOptions()
options.add_experimental_option('androidProcess', 'com.tencent.mm:appbrand0')
caps['ChromeOptions.CAPABILITY'] = 'options'
caps['chromedriverExecutable']='D:\chromedriver-win64\chromedriver.exe'
self._driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)
self._driver.implicitly_wait(10)
# 嘗試強制切換到 WebView 上下文
try:
self._driver.switch_to.context('WEBVIEW_com.tencent.mm:appbrand0')
print(f"Current context: {self._driver.current_context}")
except Exception as e:
print(f"Failed to switch to WEBVIEW: {e}")
time.sleep(10) # 等待頁面載入
contexts = self._driver.contexts
print(f"Available contexts: {contexts}")
# 確認當前URL和Title
current_url = self._driver.execute_script("return window.location.href;")
current_title = self._driver.execute_script("return document.title;")
print(f"Current URL: {current_url}")
print(f"Current Title: {current_title}")
4.列印可用的 contexts 和當前的 WebView
這裡可用的 contexts 有 2 個
Available contexts: ['NATIVE_APP', 'WEBVIEW_com.tencent.mm:appbrand0']
Current context: WEBVIEW_com.tencent.mm:appbrand0
5.嘗試強制切換到 WebView 上下文後; 這裡很奇怪 為什麼 切換 WEBVIEW 後 檢視當前可用的 contexts 有 3 個
Available contexts: ['NATIVE_APP', 'WEBVIEW_com.tencent.mm', 'WEBVIEW_com.tencent.mm:appbrand0']
Current context: WEBVIEW_com.tencent.mm:appbrand0
6.確認當前 URL 和 Title
current_url = self._driver.execute_script("return window.location.href;")
current_title = self._driver.execute_script("return document.title;")
print(f"Current URL: {current_url}")
print(f"Current Title: {current_title}")
以下是列印出來的結果
Current URL: https://servicewechat.com/preload/page-frame.html ;
Current Title:
- 這裡是分析原因 https://servicewechat.com/preload/page-frame.html 是與微信小程式相關的 URL。這個連結指向的頁面是微信小程式內部的一個預載入框架。微信小程式在執行時會載入這個頁面作為基礎架構的一部分,它通常包含小程式執行環境的初始程式碼和框架。這個頁面不是使用者直接訪問的網頁,而是微信小程式平臺內部工作的一部分,用於支援小程式的渲染和功能。 微信小程式的工作原理是將各個頁面的程式碼包在執行時動態載入到這個預載入框架中,從而實現小程式的頁面切換和功能執行。因此,當你看到錯誤資訊中提到這個 URL 時,通常意味著小程式在嘗試載入或執行程式碼時遇到了問題,可能是由於資源載入失敗、版本不匹配、程式碼錯誤或者是白名單配置不正確等原因導致的。
8.以下是 appium 日誌
#
[HTTP] <-- GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/source 200 299 ms - 594
[HTTP]
[HTTP] --> GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/contexts
[HTTP] {}
[W3C (93535157)] Calling AppiumDriver.getContexts() with args: ["93535157-2cce-439e-b78c-4ca48e080be2"]
[AndroidDriver] Getting a list of available webviews
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell cat /proc/net/unix'
[AndroidDriver] Parsed 1 active devtools socket: ["@webview_devtools_remote_32198"]
[AndroidDriver] Collecting CDP data of 1 webview
[AndroidDriver] Forwarding remote port webview_devtools_remote_32198 to a local port in range 10900..11000
[AndroidDriver] You could use the 'webviewDevtoolsPort' capability to customize the starting port number
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward tcp:10900 localabstract:webview_devtools_remote_32198'
[ADB] Removing forwarded port socket connection: 10900
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward --remove tcp:10900'
[AndroidDriver] CDP data collection completed
[AndroidDriver] WEBVIEW_32198 mapped to pid 32198
[AndroidDriver] Getting process name for webview 'WEBVIEW_32198'
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell ps --help'
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell ps -A'
[AndroidDriver] Got process name: 'com.tencent.mm:appbrand0'
[AndroidDriver] Found 1 webview: ["WEBVIEW_com.tencent.mm:appbrand0"]
[AndroidDriver] Available contexts: ["NATIVE_APP","WEBVIEW_com.tencent.mm:appbrand0"]
[W3C (93535157)] Responding to client with driver.getContexts() result: ["NATIVE_APP","WEBVIEW_com.tencent.mm:appbrand0"]
[HTTP] <-- GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/contexts 200 1031 ms - 59
[HTTP]
[HTTP] --> POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/context
[HTTP] {"name":"WEBVIEW_com.tencent.mm:appbrand0"}
[W3C (93535157)] Calling AppiumDriver.setContext() with args: ["WEBVIEW_com.tencent.mm:appbrand0","93535157-2cce-439e-b78c-4ca48e080be2"]
[AndroidDriver] Getting a list of available webviews
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell cat /proc/net/unix'
[AndroidDriver] Parsed 1 active devtools socket: ["@webview_devtools_remote_32198"]
[AndroidDriver] Collecting CDP data of 1 webview
[AndroidDriver] Forwarding remote port webview_devtools_remote_32198 to a local port in range 10900..11000
[AndroidDriver] You could use the 'webviewDevtoolsPort' capability to customize the starting port number
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward tcp:10900 localabstract:webview_devtools_remote_32198'
[ADB] Removing forwarded port socket connection: 10900
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward --remove tcp:10900'
[AndroidDriver] CDP data collection completed
[AndroidDriver] WEBVIEW_32198 mapped to pid 32198
[AndroidDriver] Getting process name for webview 'WEBVIEW_32198'
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell ps -A'
[AndroidDriver] Got process name: 'com.tencent.mm:appbrand0'
[AndroidDriver] Found 1 webview: ["WEBVIEW_com.tencent.mm:appbrand0"]
[AndroidDriver] Available contexts: ["NATIVE_APP","WEBVIEW_com.tencent.mm:appbrand0"]
[AndroidDriver] Connecting to chrome-backed webview context 'WEBVIEW_com.tencent.mm:appbrand0'
[AndroidDriver] A port was not given, using random free port: 8003
[AndroidDriver] Passing web view details to the Chromedriver constructor: {
[AndroidDriver] "info": {
[AndroidDriver] "Android-Package": "com.tencent.mm",
[AndroidDriver] "Browser": "Chrome/122.0.6261.120",
[AndroidDriver] "Protocol-Version": "1.3",
[AndroidDriver] "User-Agent": "Mozilla/5.0 (Linux; Android 9; V1941A Build/PKQ1.190302.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/122.0.6261.120 Mobile Safari/537.36 XWEB/1220053 MMWEBSDK/20240404",
[AndroidDriver] "V8-Version": "12.2.281.22",
[AndroidDriver] "WebKit-Version": "537.36 (@user373203561d8d34ecaac0d)",
[AndroidDriver] "webSocketDebuggerUrl": "ws://127.0.0.1:10900/devtools/browser"
[AndroidDriver] },
[AndroidDriver] "process": {
[AndroidDriver] "name": "com.tencent.mm:appbrand0",
[AndroidDriver] "id": "32198"
[AndroidDriver] }
[AndroidDriver] }
[AndroidDriver] Precalculated Chromedriver capabilities: {
[AndroidDriver] "androidPackage": "com.tencent.mm",
[AndroidDriver] "androidUseRunningApp": true,
[AndroidDriver] "androidProcess": "com.tencent.mm:appbrand0",
[AndroidDriver] "androidDeviceSerial": "aa49af08"
[AndroidDriver] }
[AndroidDriver] Before starting chromedriver, androidPackage is 'com.tencent.mm'
[Chromedriver] Changed state to 'starting'
[Chromedriver] Set chromedriver binary as: D:\chromedriver-win64\chromedriver.exe
[Chromedriver] Killing any old chromedrivers, running: wmic process where "commandline like '%chromedriver.exe%--port=8003%'" delete
[Chromedriver] Successfully cleaned up old chromedrivers
[Chromedriver] Cleaning this device's adb forwarded port socket connections: aa49af08
[ADB] List forwarding ports
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward --list'
[ADB] Removing forwarded port socket connection: 55334
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward --remove tcp:55334'
[Chromedriver] Spawning chromedriver with: D:\chromedriver-win64\chromedriver.exe --url-base=wd/hub --port=8003 --adb-port=5037 --verbose
[Chromedriver] Chromedriver version: '122.0.6261.128'
[WD Proxy] Matched '/status' to command name 'getStatus'
[WD Proxy] Proxying [GET /status] to [GET http://127.0.0.1:8003/wd/hub/status] with no body
[WD Proxy] Got response with status 200: {"value":{"build":{"version":"122.0.6261.128 (f18a44fedeb29764b2b5336c120fdd90ef1a3f5c-refs/branch-heads/6261@{#1057})"},"message":"ChromeDriver ready for new sessions.","os":{"arch":"x86_64","name":"Windows NT","version":"10.0.19044"},"ready":true}}
[Chromedriver] Starting W3C Chromedriver session with capabilities: {
[Chromedriver] "capabilities": {
[Chromedriver] "alwaysMatch": {
[Chromedriver] "goog:chromeOptions": {
[Chromedriver] "androidPackage": "com.tencent.mm",
[Chromedriver] "androidUseRunningApp": true,
[Chromedriver] "androidProcess": "com.tencent.mm:appbrand0",
[Chromedriver] "androidDeviceSerial": "aa49af08"
[Chromedriver] },
[Chromedriver] "goog:loggingPrefs": {
[Chromedriver] "browser": "ALL"
[Chromedriver] }
[Chromedriver] }
[Chromedriver] }
[Chromedriver] }
[WD Proxy] Matched '/session' to command name 'createSession'
[WD Proxy] Proxying [POST /session] to [POST http://127.0.0.1:8003/wd/hub/session] with body: {"capabilities":{"alwaysMatch":{"goog:chromeOptions":{"androidPackage":"com.tencent.mm","androidUseRunningApp":true,"androidProcess":"com.tencent.mm:appbrand0","androidDeviceSerial":"aa49af08"},"goog:loggingPrefs":{"browser":"ALL"}}}}
[Chromedriver] Webview version: 'Chrome/122.0.6261.120'
[WD Proxy] Got response with status 200: {"value":{"capabilities":{"acceptInsecureCerts":false,"browserName":"chrome","browserVersion":"122.0.6261.120","chrome":{"chromedriverVersion":"122.0.6261.128 (f18a44fedeb29764b2b5336c120fdd90ef1a3f5c-refs/branch-heads/6261@{#1057})"},"fedcm:accounts":true,"goog:chromeOptions":{"debuggerAddress":"localhost:49741"},"pageLoadStrategy":"normal","platformName":"android","proxy":{},"setWindowRect":false,"strictFileInteractability":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"unhandledPromptBehavior":"dismiss and notify","webauthn:extension:credBlob":false,"webauthn:extension:largeBlob":false,"webauthn:extension:minPinLength":false,"webauthn:extension:prf":false,"webauthn:virtualAuthenticators":false},"sessionId":"6b32cdbd1a1b226e93eec6104c18a90d"}}
[WD Proxy] Determined the downstream protocol as 'W3C'
[Chromedriver] Changed state to 'online'
[W3C (93535157)] Responding to client with driver.setContext() result: null
[HTTP] <-- POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/context 200 3582 ms - 14
[HTTP]
[HTTP] --> GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/context
[HTTP] {}
[W3C (93535157)] Calling AppiumDriver.getCurrentContext() with args: ["93535157-2cce-439e-b78c-4ca48e080be2"]
[W3C (93535157)] Responding to client with driver.getCurrentContext() result: "WEBVIEW_com.tencent.mm:appbrand0"
[HTTP] <-- GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/context 200 1 ms - 44
[HTTP]
[HTTP] --> GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/contexts
[HTTP] {}
[W3C (93535157)] Calling AppiumDriver.getContexts() with args: ["93535157-2cce-439e-b78c-4ca48e080be2"]
[AndroidDriver] Getting a list of available webviews
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell cat /proc/net/unix'
[AndroidDriver] Parsed 2 active devtools sockets: ["@webview_devtools_remote_31937","@webview_devtools_remote_32198"]
[AndroidDriver] Collecting CDP data of 2 webviews
[AndroidDriver] Forwarding remote port webview_devtools_remote_31937 to a local port in range 10900..11000
[AndroidDriver] You could use the 'webviewDevtoolsPort' capability to customize the starting port number
[AndroidDriver] Forwarding remote port webview_devtools_remote_32198 to a local port in range 10900..11000
[AndroidDriver] You could use the 'webviewDevtoolsPort' capability to customize the starting port number
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward tcp:10900 localabstract:webview_devtools_remote_31937'
[ADB] Removing forwarded port socket connection: 10900
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward --remove tcp:10900'
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward tcp:10900 localabstract:webview_devtools_remote_32198'
[ADB] Removing forwarded port socket connection: 10900
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 forward --remove tcp:10900'
[AndroidDriver] CDP data collection completed
[AndroidDriver] WEBVIEW_31937 mapped to pid 31937
[AndroidDriver] Getting process name for webview 'WEBVIEW_31937'
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell ps -A'
[AndroidDriver] Got process name: 'com.tencent.mm'
[AndroidDriver] WEBVIEW_32198 mapped to pid 32198
[AndroidDriver] Getting process name for webview 'WEBVIEW_32198'
[ADB] Running 'C:\Users\junfei\AppData\Local\Android\Sdk\platform-tools\adb.exe -P 5037 -s aa49af08 shell ps -A'
[AndroidDriver] Got process name: 'com.tencent.mm:appbrand0'
[AndroidDriver] Found 2 webviews: ["WEBVIEW_com.tencent.mm","WEBVIEW_com.tencent.mm:appbrand0"]
[AndroidDriver] Available contexts: ["NATIVE_APP","WEBVIEW_com.tencent.mm","WEBVIEW_com.tencent.mm:appbrand0"]
[W3C (93535157)] Responding to client with driver.getContexts() result: ["NATIVE_APP","WEBVIEW_com.tencent.mm","WEBVIEW_com.tencent.mm:appbrand0"]
[HTTP] <-- GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/contexts 200 1640 ms - 84
[HTTP]
[HTTP] --> GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/context
[HTTP] {}
[W3C (93535157)] Calling AppiumDriver.getCurrentContext() with args: ["93535157-2cce-439e-b78c-4ca48e080be2"]
[W3C (93535157)] Responding to client with driver.getCurrentContext() result: "WEBVIEW_com.tencent.mm:appbrand0"
[HTTP] <-- GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/context 200 1 ms - 44
[HTTP]
[HTTP] --> GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/source
[HTTP] {}
[W3C (93535157)] Driver proxy active, passing request on via HTTP proxy
[WD Proxy] Matched '/wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/source' to command name 'getPageSource'
[WD Proxy] Proxying [GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/source] to [GET http://127.0.0.1:8003/wd/hub/session/6b32cdbd1a1b226e93eec6104c18a90d/source] with no body
[WD Proxy] Got response with status 200: {"value":"
[HTTP] <-- GET /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/source 200 116 ms - 282721
[HTTP]
[HTTP] --> POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/execute/sync
[HTTP] {"script":"return window.location.href;","args":[]}
[W3C (93535157)] Calling AppiumDriver.execute() with args: ["return window.location.href;",[],"93535157-2cce-439e-b78c-4ca48e080be2"]
[WD Proxy] Matched '/execute/sync' to command name 'execute'
[Protocol Converter] Did not know how to rewrite the original URL '/execute/sync' for W3C protocol
[WD Proxy] Proxying [POST /execute/sync] to [POST http://127.0.0.1:8003/wd/hub/session/6b32cdbd1a1b226e93eec6104c18a90d/execute/sync] with body: {"script":"return window.location.href;","args":[]}
[WD Proxy] Got response with status 200: {"value":"https://servicewechat.com/preload/page-frame.html"}
[W3C (93535157)] Responding to client with driver.execute() result: "https://servicewechat.com/preload/page-frame.html"
[HTTP] <-- POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/execute/sync 200 79 ms - 61
[HTTP]
[HTTP] --> POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/execute/sync
[HTTP] {"script":"return document.title;","args":[]}
[W3C (93535157)] Calling AppiumDriver.execute() with args: ["return document.title;",[],"93535157-2cce-439e-b78c-4ca48e080be2"]
[WD Proxy] Matched '/execute/sync' to command name 'execute'
[Protocol Converter] Did not know how to rewrite the original URL '/execute/sync' for W3C protocol
[WD Proxy] Proxying [POST /execute/sync] to [POST http://127.0.0.1:8003/wd/hub/session/6b32cdbd1a1b226e93eec6104c18a90d/execute/sync] with body: {"script":"return document.title;","args":[]}
[WD Proxy] Got response with status 200: {"value":""}
[W3C (93535157)] Responding to client with driver.execute() result: ""
[HTTP] <-- POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/execute/sync 200 52 ms - 12
[HTTP]
[HTTP] --> POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element
[HTTP] {"using":"xpath","value":"//[@id=\"app\"]/div/div[2]/button/div/span"}
[W3C (93535157)] Driver proxy active, passing request on via HTTP proxy
[WD Proxy] Matched '/wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element' to command name 'findElement'
[WD Proxy] Proxying [POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element] to [POST http://127.0.0.1:8003/wd/hub/session/6b32cdbd1a1b226e93eec6104c18a90d/element] with body: {"using":"xpath","value":"//[@id=\"app\"]/div/div[2]/button/div/span"}
[WD Proxy] Got response with status 404: {"value":{"error":"no such element","message":"no such element: Unable to locate element: {\"method\":\"xpath\",\"selector\":\"//[@id=\"app\"]/div/div[2]/button/div/span\"}\n (Session info: chrome=122.0.6261.120)","stacktrace":"\tGetHandleVerifier [0x00007FF614F6AD02+56930]\n\t(No symbol) [0x00007FF614EDF602]\n\t(No symbol) [0x00007FF614D942E5]\n\t(No symbol) [0x00007FF614DD98ED]\n\t(No symbol) [0x00007FF614DD9A2C]\n\t(No symbol) [0x00007FF614E1A967]\n\t(No symbol) [0x00007FF614DFBCDF]\n\t(No symbol) [0x00007FF614E181E2]\n\t(No symbol) [0x00007FF614DFBA43]\n\t(No symbol) [0x00007FF614DCD438]\n\t(No symbol) [0x00007FF614DCE4D1]\n\tGetHandleVerifier [0x00007FF6152E6F8D+3711213]\n\tGetHandleVerifier [0x00007FF6153404CD+4077101]\n\tGetHandleVerifier [0x00007FF61533865F+4044735]\n\tGetHandleVerifier [0x00007FF615009736+706710]\n\t(No symbol) [0x00007FF614EEB8DF]\n\t(No symbol) [0x00007FF614EE6AC4]\n\t(No symbol) [0x00007FF614EE6C1C]\n\t(No symbol) [0x00007FF614ED68D4]\n\tBaseThreadInitThunk [0x00007FF82004761...
[W3C] Matched W3C error code 'no such element' to NoSuchElementError
[HTTP] <-- POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element 404 112 ms - 1077
[HTTP]
[HTTP] --> POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element
[HTTP] {"using":"xpath","value":"//[@id=\"app\"]/div/div[2]/button/div/span"}
[W3C (93535157)] Driver proxy active, passing request on via HTTP proxy
[WD Proxy] Matched '/wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element' to command name 'findElement'
[WD Proxy] Proxying [POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element] to [POST http://127.0.0.1:8003/wd/hub/session/6b32cdbd1a1b226e93eec6104c18a90d/element] with body: {"using":"xpath","value":"//[@id=\"app\"]/div/div[2]/button/div/span"}
[WD Proxy] Got response with status 404: {"value":{"error":"no such element","message":"no such element: Unable to locate element: {\"method\":\"xpath\",\"selector\":\"//[@id=\"app\"]/div/div[2]/button/div/span\"}\n (Session info: chrome=122.0.6261.120)","stacktrace":"\tGetHandleVerifier [0x00007FF614F6AD02+56930]\n\t(No symbol) [0x00007FF614EDF602]\n\t(No symbol) [0x00007FF614D942E5]\n\t(No symbol) [0x00007FF614DD98ED]\n\t(No symbol) [0x00007FF614DD9A2C]\n\t(No symbol) [0x00007FF614E1A967]\n\t(No symbol) [0x00007FF614DFBCDF]\n\t(No symbol) [0x00007FF614E181E2]\n\t(No symbol) [0x00007FF614DFBA43]\n\t(No symbol) [0x00007FF614DCD438]\n\t(No symbol) [0x00007FF614DCE4D1]\n\tGetHandleVerifier [0x00007FF6152E6F8D+3711213]\n\tGetHandleVerifier [0x00007FF6153404CD+4077101]\n\tGetHandleVerifier [0x00007FF61533865F+4044735]\n\tGetHandleVerifier [0x00007FF615009736+706710]\n\t(No symbol) [0x00007FF614EEB8DF]\n\t(No symbol) [0x00007FF614EE6AC4]\n\t(No symbol) [0x00007FF614EE6C1C]\n\t(No symbol) [0x00007FF614ED68D4]\n\tBaseThreadInitThunk [0x00007FF82004761...
[W3C] Matched W3C error code 'no such element' to NoSuchElementError
[HTTP] <-- POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element 404 77 ms - 1077
[HTTP]
[HTTP] --> POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element
[HTTP] {"using":"xpath","value":"//[@id=\"app\"]/div/div[2]/button/div/span"}
[W3C (93535157)] Driver proxy active, passing request on via HTTP proxy
[WD Proxy] Matched '/wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element' to command name 'findElement'
[WD Proxy] Proxying [POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element] to [POST http://127.0.0.1:8003/wd/hub/session/6b32cdbd1a1b226e93eec6104c18a90d/element] with body: {"using":"xpath","value":"//[@id=\"app\"]/div/div[2]/button/div/span"}
[WD Proxy] Got response with status 404: {"value":{"error":"no such element","message":"no such element: Unable to locate element: {\"method\":\"xpath\",\"selector\":\"//*[@id=\"app\"]/div/div[2]/button/div/span\"}\n (Session info: chrome=122.0.6261.120)","stacktrace":"\tGetHandleVerifier [0x00007FF614F6AD02+56930]\n\t(No symbol) [0x00007FF614EDF602]\n\t(No symbol) [0x00007FF614D942E5]\n\t(No symbol) [0x00007FF614DD98ED]\n\t(No symbol) [0x00007FF614DD9A2C]\n\t(No symbol) [0x00007FF614E1A967]\n\t(No symbol) [0x00007FF614DFBCDF]\n\t(No symbol) [0x00007FF614E181E2]\n\t(No symbol) [0x00007FF614DFBA43]\n\t(No symbol) [0x00007FF614DCD438]\n\t(No symbol) [0x00007FF614DCE4D1]\n\tGetHandleVerifier [0x00007FF6152E6F8D+3711213]\n\tGetHandleVerifier [0x00007FF6153404CD+4077101]\n\tGetHandleVerifier [0x00007FF61533865F+4044735]\n\tGetHandleVerifier [0x00007FF615009736+706710]\n\t(No symbol) [0x00007FF614EEB8DF]\n\t(No symbol) [0x00007FF614EE6AC4]\n\t(No symbol) [0x00007FF614EE6C1C]\n\t(No symbol) [0x00007FF614ED68D4]\n\tBaseThreadInitThunk [0x00007FF82004761...
[W3C] Matched W3C error code 'no such element' to NoSuchElementError
[HTTP] <-- POST /wd/hub/session/93535157-2cce-439e-b78c-4ca48e080be2/element 404 85 ms - 1077
相關文章
- 關於微信 H5 頁面切換 webview 的問題H5WebView
- 微信小程式頁面功能-----標籤切換微信小程式
- Appium 的 ios 中 webview 問題APPiOSWebView
- 微信小程式 webview 頁面重新整理微信小程式WebView
- Appium 切換進入 webview,點選元素偏離APPWebView
- H5頁面在微信端的分享H5
- UiAutomator2 測試 H5 頁面,切換 webview 後報沒有找到對應的 ChromeDriver 版本UIH5WebViewChrome
- Appium 測試 Android 混合應用時,第二次切換到WebView時的定位問題APPAndroidWebView
- 關於Android中使用BottomNavigationView切換橫屏導致返回主頁的問題AndroidNavigationView
- 快速構建H5單頁面切換應用H5
- H5單頁面手勢滑屏切換原理H5
- 微信內 H5 頁面自定義分享H5
- VUE開發微信H5頁面總結VueH5
- 關於linux切換使用者只顯示$的問題Linux
- 微信公眾號H5頁面–JqueryWeui元件使用H5jQueryUI元件
- 微信公眾號H5頁面--JqueryWeui元件使用H5jQueryUI元件
- Blazor如何實現類似於微信的Tab切換?Blazor
- 微信內關閉當前頁面
- [提問交流]切換頁面,左側選單消失
- 關於 Laravel 分頁的問題?Laravel
- 微信二次分享的問題 帶有引數的php頁面PHP
- 關於iOS 11.x微信連wifi流程中,在Portal頁無法拉起微信問題的簡單記錄iOSWiFi
- 關於PHP的切換版本PHP
- 切換頁面主題樣式研究及less教程
- vue單頁面應用在iOS版微信下自定義分享的問題VueiOS
- 使用微信API實現H5頁面播放音訊檔案APIH5音訊
- Android Studio微信頁面Android
- angular 開發微信小程式及webview不重新整理問題Angular微信小程式WebView
- Silence 主題暗黑模式根據瀏覽器配置,以及切換頁面閃白屏的問題處理模式瀏覽器
- 【微信小程式】微信小程式 文字過長,自動換行的問題微信小程式
- WPF手動實現切換頁面
- 微信H5支付 驗籤失敗 問題H5
- appium 自動化中關於切 webview 的問題,iOS 的 debug 開關如何寫在程式碼裡?安卓知道怎麼加,關鍵是 iOS 不知道加在哪裡,求大神指導!APPWebViewiOS安卓
- 關於iOS Webview 載入React 靜態資源的安全問題iOSWebViewReact
- 關於 Webview 的混合模式(華為 P30 出現問題)WebView模式
- Appium 在 Android10 系統無法獲取應用 webview 頁面元素APPAndroidWebView
- h5頁面在不同ios裝置上的問題總結H5iOS
- 關於陣列的物件獲取及排序問題/小程式的多層頁面返回問題陣列物件排序