学习marionette_driver package (二)
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 操作。