marionette_driver package
marionette_driver.keys模块
1 class:
2 marionette_driver.keys.Keys
3
4 用法:
5 from marionette_driver.keys import Keys
6 ......
7 b=client.find_element(Keys)
8
9 class Keys(object):
10
11 NULL = u'\ue000'
12 CANCEL = u'\ue001' # ^break
13 HELP = u'\ue002'
14 BACK_SPACE = u'\ue003'
15 TAB = u'\ue004'
16 CLEAR = u'\ue005'
17 RETURN = u'\ue006'
18 ENTER = u'\ue007'
19 SHIFT = u'\ue008'
20 LEFT_SHIFT = u'\ue008' # alias
21 CONTROL = u'\ue009'
22 LEFT_CONTROL = u'\ue009' # alias
23 ALT = u'\ue00a'
24 LEFT_ALT = u'\ue00a' # alias
25 PAUSE = u'\ue00b'
26 ESCAPE = u'\ue00c'
27 SPACE = u'\ue00d'
28 PAGE_UP = u'\ue00e'
29 PAGE_DOWN = u'\ue00f'
30 END = u'\ue010'
31 HOME = u'\ue011'
32 LEFT = u'\ue012'
33 ARROW_LEFT = u'\ue012' # alias
34 UP = u'\ue013'
35 ARROW_UP = u'\ue013' # alias
36 RIGHT = u'\ue014'
37 ARROW_RIGHT = u'\ue014' # alias
38 DOWN = u'\ue015'
39 ARROW_DOWN = u'\ue015' # alias
40 INSERT = u'\ue016'
41 DELETE = u'\ue017'
42 SEMICOLON = u'\ue018'
43 EQUALS = u'\ue019'
44
45 NUMPAD0 = u'\ue01a' # numbe pad keys
46 NUMPAD1 = u'\ue01b'
47 NUMPAD2 = u'\ue01c'
48 NUMPAD3 = u'\ue01d'
49 NUMPAD4 = u'\ue01e'
50 NUMPAD5 = u'\ue01f'
51 NUMPAD6 = u'\ue020'
52 NUMPAD7 = u'\ue021'
53 NUMPAD8 = u'\ue022'
54 NUMPAD9 = u'\ue023'
55 MULTIPLY = u'\ue024'
56 ADD = u'\ue025'
57 SEPARATOR = u'\ue026'
58 SUBTRACT = u'\ue027'
59 DECIMAL = u'\ue028'
60 DIVIDE = u'\ue029'
61
62 F1 = u'\ue031' # function keys
63 F2 = u'\ue032'
64 F3 = u'\ue033'
65 F4 = u'\ue034'
66 F5 = u'\ue035'
67 F6 = u'\ue036'
68 F7 = u'\ue037'
69 F8 = u'\ue038'
70 F9 = u'\ue039'
71 F10 = u'\ue03a'
72 F11 = u'\ue03b'
73 F12 = u'\ue03c'
74
75 META = u'\ue03d'
76 COMMAND = u'\ue03d'
marionette_driver.localization模块
1 marionette_driver.localization.L10n(marionette)
2 意义:
3 允许 Marionette 处理本地化内容的 API。
4 基于 Gecko 的应用程序中 UI 元素的本地化是通过实体和属性完成的。
5 对于静态值,使用实体,它们位于 .dtd 文件中。
6 对于动态更新的内容,值来自 .property 文件。
7 两种类型的元素都可以通过唯一的 id 进行识别,并检索翻译的内容。
8
9 样例:
10 from marionette_driver.localization import L10n
11 l10n = L10n(marionette)
12
13 l10n.localize_entity(["chrome://branding/locale/brand.dtd"],"brandShortName")
14 l10n.localize_property(["chrome://global/locale/findbar.properties"],"FastFind"))
对于静态实体:
localize_entity(dtd_urls, entity_id)
dtd_urls:将用于搜索实体的 .dtd URL 列表。
entity_id:要为其检索本地化字符串的实体的 ID。
return:请求属性的本地化字符串。
意义:检索指定实体 ID 的本地化字符串。
---------------------------------------------------------------------------
对于动态的:
localize_property(properties_urls, property_id)
properties_urls:将用于搜索属性的 .properties URL 列表。
property_id:要为其检索本地化字符串的属性的 ID
return:请求属性的本地化字符串。
意义:检索指定属性 ID 的本地化字符串。
marionette_driver.marionette模块
class:
marionette_driver.marionette.ActionSequence(marionette,
action_type, input_id, pointer_params=None)
操作实例:
ActionSequence(self.marionette, "key", id) \
.key_down("a") \
.key_up("a") \
.perform()
意义:
用于创建和执行动作序列的 API。
每个动作方法向队列添加一个或多个动作。 当调用 perform() 时,排队的动作按顺序触发。
------------------------------------------------------------------------
功能:
.click(element=None, button=0)
element:要单击的可选元素。
button:整数,表示要执行操作的指针按钮。 默认值:0,代表主设备按钮
意义:如果给定了元素,则先将指针移至该元素,否则单击当前指针坐标。
.key_down(value)
value:用于执行关键操作的单个字符
意义:将 keyDown 操作排队以获取值。
.key_up(value)
value:用于执行关键操作的单个字符
意义:将 keyUp 操作排队以获取值
.pause(duration)
duration:时长
意义:暂停时间
.perform()
意义:执行所有排队操作,常放在最后
.pointer_down(button=0)
button:用于执行操作的指针按钮。 默认值:0,代表主设备按钮。
意义:为按钮排队一个 pointerDown 动作
.pointer_up(button=0)
button:用于执行操作的指针按钮。 默认值:0,代表主设备按钮。
意义:为按钮排队一个 pointerUp 动作
.pointer_move(x, y, duration=None, origin=None)
x:以 CSS 像素为单位的指针的目标 x 轴坐标
y:以 CSS 像素为单位的指针的目标 y 轴坐标
duration:分配移动的毫秒数。 如果没有,默认为 0
origin:坐标原点,“视口”、“指针”或元素。 如果没有,默认为“视口”
.send_keys(keys)
keys:用于执行关键操作的键字符串
意义:为键中的每个字符按排一个 keyDown 和 keyUp 操作。