selenium源码通读·12 |webdriver/remote分析
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium源码通读·12 |webdriver/remote分析相关的知识,希望对你有一定的参考价值。
(·12 |webdriver/remote分析)
1 源码路径
selenium/webdriver/remote
2 功能说明
方法 | 描述 | 说明 |
---|---|---|
command.py |
Defines constants for the standard WebDriver commands |
定义标准WebDriver命令的常量 |
errorhandler.py |
Error codes defined in the WebDriver wire protocol |
WebDriver wire协议中定义的错误代码 |
file_detector.py |
Used for identifying whether a sequence of chars represents the path to a file |
用于标识字符序列是否表示文件的路径 |
getAttribute.js |
/ | 获取属性 |
isDisplayed.js |
/ | 判断元素是否显示 |
mobile.py |
/ | 定义移动端的功能 |
remote_connection.py |
A connection with the Remote WebDriver server |
与远程WebDriver服务器的连接 |
switch_to.py |
/ | 切换能力 |
utils.py |
/ | 辅助能力 |
webdriver.py |
The WebDriver implementation |
定义webdriver核心API |
WebElement.py |
Represents a DOM element |
定义对webdriver element操作的能力 |
3 部分功能详解
3.1 command.py
-
定义标准WebDriver命令的常量;
-
如下:
-
比如我们常用的(部分):
常量 | 值 |
---|---|
CLOSE |
close |
QUIT |
quit |
GET |
get |
REFRESH |
refresh |
GET_COOKIE |
getCookie |
FIND_ELEMENT |
findElement |
FIND_ELEMENTS |
findElements |
GET_TITLE |
getTitle |
SCREENSHOT |
screenshot |
SET_TIMEOUTS |
setTimeouts |
MAXIMIZE_WINDOW |
windowMaximize |
MINIMIZE_WINDOW |
minimizeWindow |
-
Alerts相关常量
-
Advanced user interactions常量
-
Screen Orientation常量
-
Touch Actions常量
-
html 5常量
-
Mobile常量
3.2 errorhandler.py
- WebDriver wire协议中定义的错误代码
- 如下:
- 代码说明:
代码 | 标识 | 说明 |
---|---|---|
0 |
SUCCESS |
成功 |
7 |
NO_SUCH_ELEMENT |
no such element |
8 |
NO_SUCH_FRAME |
no such frame |
9 |
UNKNOWN_COMMAND |
unknown command |
10 |
STALE_ELEMENT_REFERENCE |
stale element reference |
11 |
ELEMENT_NOT_VISIBLE |
element not visible |
12 |
INVALID_ELEMENT_STATE |
invalid element state |
13 |
UNKNOWN_ERROR |
unknown error |
15 |
ELEMENT_IS_NOT_SELECTABLE |
element not selectable |
17 |
javascript_ERROR |
javascript error |
19 |
XPATH_LOOKUP_ERROR |
invalid selector |
21 |
TIMEOUT |
timeout |
23 |
NO_SUCH_WINDOW |
no such window |
24 |
INVALID_COOKIE_DOMAIN |
invalid cookie domain |
25 |
UNABLE_TO_SET_COOKIE |
unable to set cookie |
26 |
UNEXPECTED_ALERT_OPEN |
unexpected alert open |
27 |
NO_ALERT_OPEN |
no such alert |
28 |
SCRIPT_TIMEOUT |
script timeout |
29 |
INVALID_ELEMENT_COORDINATES |
invalid element coordinates |
30 |
IME_NOT_AVAILABLE |
ime not available |
31 |
IME_ENGINE_ACTIVATION_FAILED |
ime engine activation failed |
32 |
INVALID_SELECTOR |
invalid selector |
33 |
SESSION_NOT_CREATED |
session not created |
34 |
MOVE_TARGET_OUT_OF_BOUNDS |
move target out of bounds |
51 |
INVALID_XPATH_SELECTOR |
invalid selector |
52 |
INVALID_XPATH_SELECTOR_RETURN_TYPER |
invalid selector |
60 |
ELEMENT_NOT_INTERACTABLE |
element not interactable |
/ | INSECURE_CERTIFICATE |
insecure certificate |
61 |
INVALID_ARGUMENT |
invalid argument |
/ | INVALID_COORDINATES |
invalid coordinates |
/ | INVALID_SESSION_ID |
invalid session id |
62 |
NO_SUCH_COOKIE |
no such cookie |
63 |
UNABLE_TO_CAPTURE_SCREEN |
unable to capture screen |
64 |
ELEMENT_CLICK_INTERCEPTED |
element click intercepted |
/ | UNKNOWN_METHOD |
unknown method exception |
405 |
METHOD_NOT_ALLOWED |
unsupported operation |
以上是关于selenium源码通读·12 |webdriver/remote分析的主要内容,如果未能解决你的问题,请参考以下文章
selenium源码通读·13 |webdriver/support分析
selenium源码通读·4 |webdriver/common分析
selenium源码通读·3 | 从源码看引入webdriver包的原因
selenium源码通读·7 |webdriver/common/by.py-By类分析
selenium源码通读·10 |webdriver/common/proxy.py-Proxy类分析
selenium源码通读·11 |webdriver/common/touch_actions.py-TouchActions类分析