Appium 方法大全 - 包含driver和element全部方法
Published on 2024-04-17 15:12 in 暂未分类 with 搬砖路上的大马猴

Appium 方法大全 - 包含driver和element全部方法

Appium 方法大全

基于Appium-Python-Client 2.11.1

目录

DRIVER方法大全

session管理✅

  1. session操作:

    • start_session: 初始化一个新的浏览器会话。
  2. session信息:

    • session_id: 获取当前会话的唯一标识符。
    • all_sessions: 获取所有活动的会话列表。
    • session : 获取当前会话的相关信息。

cookie管理✅

  1. cookie操作

    • add_cookie: 添加一个cookie。
    • delete_all_cookies: 删除所有cookies。
    • delete_cookie: 删除特定cookie。
  2. cookie信息

    • get_cookie: 获取特定名称的cookie。

    • get_cookies: 获取所有cookies。

Capabilities管理✅

  • update_settings: 更新设置信息。
  • capabilities: 获取或设置会话的能力,如浏览器版本、操作系统等。
  • caps: 同上,获取或设置能力。
  • desired_capabilities : --- 已弃用
  • get_settings: 获取设置信息。
  • name: 获取会话中的browserName名称

网络/WIFI 管理✅

  1. 网络设置

    • set_network_connection: 设置设备的网络连接类型。
    • set_network_speed: 设置网络速度。
    • toggle_wifi: 切换Wi-Fi的开启和关闭。
  2. 网络信息

    • network_connection: 获取网络连接类型。

Activity管理✅

  • current_activity: 获取当前活动(Activity)的名称。

  • start_activity: 启动一个新的活动(Activity)。

  • wait_activity: 等待特定的活动(Activity)出现。

应用程序管理✅

  1. 应用操作:

    • launch_app: 启动一个新的应用程序。
    • close_app: 关闭当前应用程序。
    • close: 关闭当前应用的当前会话窗口(类似于小程序那种)
    • background_app: 将应用置于后台运行。
    • activate_app: 切换到指定的应用程序。
    • terminate_app: 结束指定的应用。
    • install_app: 在设备上安装一个应用程序。
    • is_app_installed: 检查应用程序是否已安装。
    • remove_app: 从设备上卸载一个应用程序。
    • reset: 重置设备或应用到默认状态。-- 已弃用
  2. 应用信息:

    • app_strings: 获取应用程序的字符串资源。

    • application_cache: 获取应用程序的缓存状态。

    • query_app_state: 查询应用的状态信息。

    • current_package: 获取当前活动的包名。

上下文管理✅

  • contexts: 获取所有可用的上下文。
  • context: 获取当前的上下文环境。
  • current_context: 获取当前活动的上下文。
  • switch_to: 切换到另一个窗口或上下文。
  • file_detector_context: 获取文件检上传的上下文。

浏览器操作

  1. 导航控制:

    • back: 后退到上一个页面。
    • forward: 前进到下一个页面。
    • refresh: 刷新当前页面。
    • get: 打开一个新的网页。
  2. 窗口:✅

    • switch_to: 切换到另一个窗口或上下文。
    • current_window_handle: 获取当前窗口的句柄。
    • window_handles: 获取所有窗口的句柄。
    • close: 关闭当前会话或窗口。
    • quit: 关闭所有窗口,结束所有会话。
    • maximize_window: 最大化窗口。
    • maximize_window: 最小化窗口。
    • set_window_position: 设置窗口的位置。
    • set_window_rect: 设置窗口的矩形区域。
    • set_window_size: 设置窗口的大小。
    • fullscreen_window: 将窗口最大化。
    • get_window_position: 获取窗口的位置。
    • get_window_rect: 获取窗口的矩形区域。
    • get_window_size: 获取窗口的大小。
  3. 其他

    • title : 获取当前页面的标题。
    • get: 获取指定URL的内容。
    • current_url: 获取当前加载的URL。
    • page_source: 获取当前页面的源代码。
    • print_page: 将当前页面的内容输出到打印格式,这通常用于调试或记录页面的当前状态。

元素交互✅

  1. 查找和操作元素:

    • find_element: 查找页面上的单个元素。
    • find_elements: 查找页面上的多个元素。
    • create_web_element: 创建一个新的Web元素。
    • set_value: 设置元素的值。
    • page_source: 获取当前的源代码。
  2. 高级元素操作:

    • drag_and_drop: 拖放元素。
    • scroll: 滚动到元素。

移动设备模拟✅

  1. 设备控制:

    • shake: 模拟设备摇动。

    • lock: 锁定设备屏幕。

    • is_locked: 检查设备是否锁定。

    • unlock: 解锁设备屏幕。

    • back: 模拟设备上的“返回”按键操作。

    • orientation: 设置或获取设备的屏幕方向。

  2. 手势操作:✅

    • tap: 模拟轻触屏幕,支持触摸时间。
    • swipe: 模拟滑动操作,支持滑动时间。
    • flick: 模拟快速滑动。
  3. 按键操作:✅

    • long_press_keycode: 长按指定的键码。
    • press_keycode: 模拟物理按钮的操作
    • press_button: 模拟虚拟按键的操作
    • keyevent: 发送一个键盘事件到设备。

等待和超时✅

  1. 等待策略
    • implicitly_wait: 设置隐式等待时间。
    • set_script_timeout: 设置脚本超时时间。
    • timeouts: 设置各种操作的超时时间。
    • set_page_load_timeout: 设置页面加载超时时间。
    • set_script_timeout: 设置脚本执行的超时时间。

日志和错误处理✅

  1. 日志获取
    • get_log: 获取浏览器日志。
    • log_types: 获取可用的日志类型。

系统信息和设备状态

  1. 设备状态:

    • get_display_density: 获取设备的屏幕显示密度。
  2. 系统信息:


文件管理✅

  1. 文件/文件夹操作

    • pull_file: 从设备拉取文件到本地系统。
    • pull_folder: 从设备拉取文件夹。
    • push_file: 向设备推送文件。
  2. 上传文件

    1. file_detector_context: 获取文件检测上下文。
    2. file_detector: 检测文件。

屏幕管理✅

  1. 截图操作

    • get_screenshot_as_base64: 获取屏幕截图的Base64编码。
    • get_screenshot_as_file: 将屏幕截图保存为文件。
    • get_screenshot_as_png: 获取屏幕截图的PNG格式。
    • save_screenshot: 保存屏幕截图。
  2. 录制屏幕

    • start_recording_screen: 开始录制屏幕操作。
    • stop_recording_screen: 停止录制屏幕操作。

辅助功能

  1. IME引擎管理:✅

    • available_ime_engines: 获取可用的输入法引擎。
    • active_ime_engine: 获取当前激活的输入法引擎。
    • activate_ime_engine: 激活输入法引擎。
    • deactivate_ime_engine: 停用输入法引擎。
    • is_ime_active: 检查输入法是否激活。
  2. 扩展管理: ✅

    • assert_extension_exists: 确认扩展是否存在。
    • mark_extension_absence: 标记扩展不存在。
    • delete_extensions: 删除所有的扩展。
  3. 图像匹配:✅

    • match_images_features: 匹配图像特征。
    • get_images_similarity: 获取图片的相似度。
    • find_image_occurrence: 查找图片在页面上出现的次数。
  4. 指纹识别:✅

    • finger_print: 模拟指纹识别解锁手机。
    • set_user_verified: 设置用户验证状态。

虚拟设备✅

  1. 虚拟认证器

    • virtual_authenticator_id:获取虚拟身份验证程序的id

    • add_virtual_authenticator: 添加虚拟认证器。

    • remove_virtual_authenticator: 移除虚拟认证器。

测试覆盖率✅

  1. 测试覆盖率
    • end_test_coverage: 结束测试覆盖率收集。

短信操作✅

  1. 短信发送
    • send_sms: 发送短信。

通知操作✅

  • open_notifications: 打开通知栏。

状态栏✅

  • get_system_bars: 获取系统栏的信息。

电源管理✅

  • set_power_ac: 设置是否连接到交流电源。
  • set_power_capacity: 设置电池电量。
  • battery_info: 获备的电池信息。

剪粘板✅

  • get_clipboard: 获取剪贴板的内容。
  • get_clipboard_text: 获取剪贴板中的文本内容。
  • set_clipboard: 设置剪贴板内容。
  • set_clipboard_text: 在剪贴板中设置文本内容。

GPS管理✅

  • location: 获取设备的位置信息。

  • set_location: 设置设备的GPS信息。

  • toggle_location_services: 切换位置服务的开启和关闭。

GSM/通话 管理✅

  • make_gsm_call: 通过GSM网络拨打电话。
  • set_gsm_signal: 设置GSM信号强度。
  • set_gsm_voice: 设置GSM语音通话质量。

键盘管理✅

  • hide_keyboard: 隐藏键盘。
  • is_keyboard_shown: 检查键盘是否显示在屏幕上。

Touch管理✅

  • touch_id: 模拟Touch ID操作。 - 仅支持IOS
  • toggle_touch_id_enrollment: 切换Touch ID的注册状态。

时间管理✅

  • device_time: 获取设备的日期和时间
  • get_device_time: 获取设备的当前时间。

性能信息✅

  • get_performance_data: 获取设备性能数据,类属于LInux Top。
  • get_performance_data_types: 获取性能数据类型

JavaScript✅

  • execute: 执行一段JavaScript代码。
  • execute_driver: 执行驱动程序命令。
  • execute_async_script: 执行一段异步JavaScript代码。
  • execute_script: 执行一段同步JavaScript代码。

appium服务器

1. 事件管理✅

  • log_event: 记录日志事件。

  • get_events: 获取系统事件。 - 非常有用,可以查看appium对指令的执行耗时

  • events: 获取或设置事件监听器。

2. 服务器状态✅

  • get_status: 获取当前会话的状态。

3. 其他

  • start_client: 启动客户端。
  • stop_client: 停止客户端。
  • bidi_connection: 建立双向连接,用于实时通信。
  • command_executor: 执行命令的接口,用于发送各种命令到浏览器。

认证凭据✅

  • remove_all_credentials: 删除所有存储的认证凭据。
  • remove_credential: 删除指定的认证凭据。
  • get_credentials: 获取存储的认证凭据。
  • add_credential: 添加认证凭据,如用户名和密码,用于自动登录。

固定脚本✅

unpin: 取消固定脚本。

pin_script: 固定脚本,使其在后续的操作中可用。

pinned_scripts: 获取当前固定(pinned)的脚本列表,这些脚本可能被用于后续的快速调用。

get_pinned_scripts: 获取固定脚本。



详细说明

activate_app

  • 功能描述:激活指定的应用,使之成为当前运行在前台的应用。这通常用于确保目标应用处于活跃状态,以便进行后续的操作。
  • 使用场景:在自动化测试中,当需要切换到特定的应用程序进行操作时使用。
  • 代码示例:
    driver.activate_app(app_id)
    
    其中app_id是应用的唯一标识符。

activate_ime_engine

  • 功能描述:激活输入法引擎,用于输入需要特定输入法的语言,如中文、日文等。
  • 使用场景:在需要进行中文或日文输入的自动化测试场景中。
  • 代码示例:
    driver.activate_ime_engine(ime_engine_id)
    
    其中ime_engine_id是输入法引擎的唯一标识符。

active_ime_engine

  • 功能描述:获取当前激活的输入法引擎。
  • 使用场景:在进行输入操作前后,检查当前激活的输入法引擎状态。
  • 代码示例:
    current_ime_engine = driver.active_ime_engine()
    
  • 功能描述:向浏览器添加一个cookie,用于模拟用户的登录状态或测试cookie相关功能。
  • 使用场景:在Web应用的自动化测试中,模拟用户登录并添加cookie。
  • 代码示例:
    driver.add_cookie({'name': 'username', 'value': 'user123', 'path': '/', 'domain': 'example.com'})
    

add_credential

  • 功能描述:添加认证凭据,如用户名和密码,用于自动登录。
  • 使用场景:在自动化测试中,存储和使用登录凭证以自动完成登录过程。
  • 代码示例:
    driver.add_credential('username', 'password')
    

add_virtual_authenticator

  • 功能描述:添加一个虚拟的身份验证器,用于测试认证流程。
  • 使用场景:在安全测试中,模拟身份验证器行为以测试应用的认证机制。
  • 代码示例:
    driver.add_virtual_authenticator({'id': 'authenticator_id'})
    

all_sessions

  • 功能描述:获取当前所有会话的列表。
  • 使用场景:在监控或管理系统级别的会话时使用。
  • 代码示例:
    sessions = driver.all_sessions()
    

app_strings

  • 功能描述:获取应用内的字符串资源。
  • 使用场景:在国际化测试中,获取并验证应用的本地化字符串。
  • 代码示例:
    strings = driver.app_strings()
    

application_cache

  • 功能描述:获取应用的缓存信息。
  • 使用场景:在测试应用的离线功能或缓存行为时使用。
  • 代码示例:
    cache_info = driver.application_cache()
    

assert_extension_exists

  • 功能描述:断言扩展是否存在。
  • 使用场景:在需要验证浏览器扩展是否正确安装和启用的测试中。
  • 代码示例:
    assert driver.assert_extension_exists(extension_id)
    

available_ime_engines

  • 功能描述:获取所有可用的输入法引擎。
  • 使用场景:在需要列出所有可用输入法引擎的测试中。
  • 代码示例:
    ime_engines = driver.available_ime_engines()
    

back

  • 功能描述:模拟设备上的“返回”按键操作。
  • 使用场景:在自动化测试中模拟用户按下“返回”键。
  • 代码示例:
    driver.back()
    

background_app

  • 功能描述:将应用置于后台运行。
  • 使用场景:在需要测试应用在后台时的行为,如消息推送或状态保持。
  • 代码示例:
    driver.background_app()
    

battery_info

  • 功能描述:获取设备的电池信息。
  • 使用场景:在测试设备在不同电池状态下的应用表现时。
  • 代码示例:
    battery_info = driver.battery_info()
    

bidi_connection

  • 功能描述:建立双向连接,用于实时通信。
  • 使用场景:在需要实时监控和控制设备或应用时。
  • 代码示例:
    bidi_connection = driver.bidi_connection()
    

capabilities

  • 功能描述:获取或设置会话的能力,如浏览器版本、操作系统等。
  • 使用场景:在创建会话时配置所需的浏览器和操作系统能力。
  • 代码示例:
    caps = driver.capabilities
    caps['platform'] = 'Windows 10'
    

caps

  • 功能描述:同上,获取或设置能力。
  • 使用场景:同capabilities
  • 代码示例:
    caps = driver.caps
    caps['version'] = 'latest'
    

close

  • 功能描述:关闭当前会话或窗口。
  • 使用场景:在测试结束后清理资源或在测试中模拟关闭操作。
  • 代码示例:
    driver.close()
    

close_app

  • 功能描述:结束当前运行的应用。
  • 使用场景:在测试结束或需要重置应用状态时。
  • 代码示例:
    driver.close_app()
    

command_executor

  • 功能描述:执行命令的接口,用于发送各种命令到浏览器。
  • 使用场景:在需要执行非标准命令或直接与浏览器通信时。
  • 代码示例:
    result = driver.command_executor('/sessions/{session_id}/chromium.send_command', {
        'cmd': 'Page.addScriptToEvaluateOnNewDocument',
        'params': {'script': 'console.log("Hello, World!")'}
    })
    

context

  • 功能描述:获取当前的上下文环境,这在处理多上下文环境(如多个Web视图或原生视图)时非常有用。
  • 使用场景:在自动化测试中,当需要在不同的上下文环境(如不同Webview)之间切换时。
  • 代码示例:
    current_context = driver.context
    

contexts

  • 功能描述:获取所有可用的上下文环境的列表,这通常用于了解当前会话可以操作的所有上下文。
  • 使用场景:在处理多上下文环境时,列出所有可用的上下文以供选择。
  • 代码示例:
    all_contexts = driver.contexts
    

create_web_element

  • 功能描述:创建一个新的Web元素对象,这通常用于直接与页面元素交互,而不需要先通过find_element方法定位。
  • 使用场景:在需要通过元素的ID或其他属性直接创建元素对象时使用。
  • 代码示例:
    new_element = driver.create_web_element(element_id)
    

current_activity

  • 功能描述:获取当前Android活动(Activity)的名称,这在测试Android应用时非常有用。
  • 使用场景:在测试Android应用时,需要知道当前正在运行的活动或组件。
  • 代码示例:
    current_activity_name = driver.current_activity
    

current_context

  • 功能描述:获取当前活动的上下文环境,这可以是Web环境或原生应用环境。
  • 使用场景:在自动化测试中,需要知道当前操作的上下文环境,以便进行正确的操作。
  • 代码示例:
    current_context_handle = driver.current_context
    

current_package

  • 功能描述:获取当前Android活动的包名,这在测试Android应用时非常有用。
  • 使用场景:在测试Android应用时,需要知道当前活动的应用程序的包名。
  • 代码示例:
    current_package_name = driver.current_package
    

current_url

  • 功能描述:获取当前加载的页面的URL。
  • 使用场景:在Web自动化测试中,需要确认当前页面的URL是否符合预期。
  • 代码示例:
    current_url = driver.current_url
    

current_window_handle

  • 功能描述:获取当前窗口的句柄,这在处理多个浏览器窗口时非常有用。
  • 使用场景:在需要操作特定浏览器窗口或在多个窗口间切换时使用。
  • 代码示例:
    current_window_handle = driver.current_window_handle
    

deactivate_ime_engine

  • 功能描述:停用当前激活的输入法引擎,这在测试需要输入文本的应用时非常有用。
  • 使用场景:在自动化测试中,当需要确保输入法引擎不会干扰测试操作时。
  • 代码示例:
    driver.deactivate_ime_engine()
    

delete_all_cookies

  • 功能描述:删除所有的cookie,这通常用于重置用户的会话状态或清除会话数据。
  • 使用场景:在测试会话管理或用户登录时,需要清除之前会话的cookie。
  • 代码示例:
    driver.delete_all_cookies()
    
  • 功能描述:删除指定的cookie,这可以用于清除特定用户设置或测试cookie管理。
  • 使用场景:在需要移除特定cookie以测试其对应用的影响时。
  • 代码示例:
    driver.delete_cookie('cookie_name')
    

delete_extensions

  • 功能描述:删除所有的扩展,这在测试浏览器扩展或需要清理浏览器环境时非常有用。
  • 使用场景:在自动化测试结束后,需要清除所有扩展以保持浏览器的清洁状态。
  • 代码示例:
    driver.delete_extensions()
    

desired_capabilities

  • 功能描述:设置期望的能力,这些能力用于会话创建,定义了浏览器或应用应该如何启动。
  • 使用场景:在创建WebDriver会话之前,配置所需的浏览器选项或移动设备设置。
  • 代码示例:
    capabilities = {
        'browserName': 'chrome',
        'version': '',
        'platform': 'ANY'
    }
    driver = webdriver.Remote(command_executor='http://localhost:4444/wd/hub', desired_capabilities=capabilities)
    

device_time

  • 功能描述:获取或设置设备的时间,这在测试时间敏感的应用时非常有用。
  • 使用场景:在需要模拟特定时间或确保设备时间准确时。
  • 代码示例:
    current_time = driver.device_time
    

drag_and_drop

  • 功能描述:执行拖放操作,模拟用户将一个元素拖拽到另一个元素上。
  • 使用场景:在测试需要拖放功能的应用,如网页上的文件上传或游戏内的操作。
  • 代码示例:
    driver.drag_and_drop(source_element, target_element)
    

end_test_coverage

  • 功能描述:结束测试覆盖率的收集,这在进行代码覆盖率分析时非常有用。
  • 使用场景:在自动化测试结束后,收集代码覆盖率数据以分析测试的完整性。
  • 代码示例:
    driver.end_test_coverage()
    

error_handler

  • 功能描述:处理错误,定义当WebDriver遇到错误时的行为。
  • 使用场景:在需要自定义错误处理逻辑时,如测试失败时的截图或日志记录。
  • 代码示例:
    def error_handler(e):
        print(e)
    driver.error_handler = error_handler
    

events

  • 功能描述:获取或设置事件监听器,用于监听WebDriver生成的事件。
  • 使用场景:在需要监听特定WebDriver事件,如页面加载完成,以进行额外的测试逻辑处理。
  • 代码示例:
    driver.events.add_listener(some_listener)
    

execute

  • 功能描述:执行一个命令,这是WebDriver协议中发送命令到浏览器的通用方法。
  • 使用场景:在需要执行非标准命令或自定义命令时。
  • 代码示例:
    driver.execute(Command.SOME_COMMAND, params)
    

execute_async_script

  • 功能描述:异步执行JavaScript脚本,允许脚本在后台运行,而不会阻塞WebDriver的后续操作。
  • 使用场景:在需要执行长时间运行的JavaScript代码,但又不希望阻塞测试流程时。
  • 代码示例:
    driver.execute_async_script(script)
    

execute_driver

  • 功能描述:执行驱动程序命令,这是一个较为底层的方法,直接与WebDriver的命令执行接口交互。
  • 使用场景:当需要发送未经封装的原始命令到WebDriver服务器时使用。
  • 代码示例:
    response = driver.execute_driver("GET", "/session/:sessionId/element/:elementId/property")
    

execute_script

  • 功能描述:在当前页面的上下文中执行JavaScript脚本,可以用来执行页面上的复杂操作或获取页面信息。
  • 使用场景:当需要在页面上执行JavaScript代码以操作DOM或获取信息时。
  • 代码示例:
    script_result = driver.execute_script("return document.title;")
    

file_detector

  • 功能描述:检测文件,这个功能在某些WebDriver实现中可能用于检测文件的存在或属性。
  • 使用场景:在文件上传或文件管理功能的自动化测试中。
  • 代码示例:
    file_info = driver.file_detector("/path/to/file")
    

file_detector_context

  • 功能描述:获取文件检测上下文,这可能涉及到设置文件检测的策略或获取文件检测的状态。
  • 使用场景:在需要对文件进行复杂检测或管理时。
  • 代码示例:
    file_context = driver.file_detector_context()
    

find_element

  • 功能描述:查找页面上的单个元素,通过指定的定位策略(如ID、类名、标签名等)。
  • 使用场景:在自动化测试中,需要定位页面上的特定元素以进行后续操作。
  • 代码示例:
    element = driver.find_element_by_id("element_id")
    

find_elements

  • 功能描述:查找页面上的多个元素,通过指定的定位策略,返回一个元素列表。
  • 使用场景:当需要对页面上的多个元素进行操作或验证时。
  • 代码示例:
    elements = driver.find_elements_by_class_name("class_name")
    

find_image_occurrence

  • 功能描述:查找图片在页面上出现的次数,这通常用于图像识别和验证。
  • 使用场景:在视觉测试或图像匹配功能中,需要确认图片出现的次数。
  • 代码示例:
    image_count = driver.find_image_occurrence("image_path")
    

finger_print

  • 功能描述:获取设备的指纹信息,这可能用于安全相关的测试或验证。
  • 使用场景:在需要验证设备指纹或进行设备识别的自动化测试中。
  • 代码示例:
    fingerprint = driver.finger_print()
    

flick

  • 功能描述:模拟快速滑动操作,可以用来快速滚动页面或模拟用户翻页等操作。
  • 使用场景:在需要快速浏览长页面或测试滚动性能时。
  • 代码示例:
    driver.flick(xoffset, yoffset)
    

forward

  • 功能描述:模拟设备上的“前进”按键操作,通常用于浏览器中导航到历史记录中的下一个页面。
  • 使用场景:在Web自动化测试中,模拟用户浏览历史行为或测试前进按钮的功能。
  • 代码示例:
    driver.forward()
    

fullscreen_window

  • 功能描述:将窗口最大化,确保Web页面或应用界面充满整个屏幕。
  • 使用场景:在需要全屏显示或测试全屏功能时。
  • 代码示例:
    driver.fullscreen_window()
    

get

  • 功能描述:获取指定URL的内容,相当于在浏览器中访问该URL。
  • 使用场景:在Web自动化测试中,用于打开并获取网页内容。
  • 代码示例:
    driver.get("http://www.example.com")
    

get_clipboard

  • 功能描述:获取剪贴板的内容,可以用来检查或验证剪贴板数据。
  • 使用场景:在需要测试剪贴板功能或自动化剪贴板操作时。
  • 代码示例:
    clipboard_content = driver.get_clipboard()
    

get_clipboard_text

  • 功能描述:获取剪贴板中的文本内容,这通常用于测试文本复制和粘贴操作。
  • 使用场景:在需要自动化文本处理或验证文本剪贴板内容时。
  • 代码示例:
    clipboard_text = driver.get_clipboard_text()
    
  • 功能描述:获取指定的cookie,可以用来检查或修改用户的会话状态。
  • 使用场景:在需要测试cookie管理或自动化cookie操作时。
  • 代码示例:
    cookie = driver.get_cookie("cookie_name")
    

get_cookies

  • 功能描述:获取所有的cookie,这可以用来分析用户的会话信息。
  • 使用场景:在需要检查所有会话cookie或进行cookie相关的测试时。
  • 代码示例:
    cookies = driver.get_cookies()
    

get_credentials

  • 功能描述:获取存储的认证凭据,如用户名和密码,这通常用于自动化登录流程。
  • 使用场景:在需要自动填充登录表单或测试认证功能时。
  • 代码示例:
    credentials = driver.get_credentials()
    

get_device_time

  • 功能描述:获取设备的当前时间,这在进行时间相关的测试时非常有用。
  • 使用场景:在需要模拟特定时间或验证时间显示功能时。
  • 代码示例:
    current_time = driver.get_device_time()
    

get_display_density

  • 功能描述:获取屏幕的显示密度,这可以用来了解屏幕的像素密度。
  • 使用场景:在进行屏幕显示相关的测试或适配不同分辨率的设备时。
  • 代码示例:
    display_density = driver.get_display_density()
    

get_events

  • 功能描述:获取事件列表,这可以用来监控WebDriver生成的事件。
  • 使用场景:在需要监听和分析WebDriver事件以进行调试或性能分析时。
  • 代码示例:
    events = driver.get_events()
    

get_images_similarity

  • 功能描述:获取图片的相似度,这通常用于图像识别和验证。
  • 使用场景:在视觉测试或图像匹配功能中,需要确认图片的相似性。
  • 代码示例:
    similarity = driver.get_images_similarity("image1_path", "image2_path")
    

get_log

  • 功能描述:获取日志信息,这可以用来了解设备的运行状态或调试测试。
  • 使用场景:在需要分析日志以诊断问题或验证系统行为时。
  • 代码示例:
    logs = driver.get_log("log_type")
    

get_performance_data

  • 功能描述:获取性能数据,这可以用来分析应用的性能表现。
  • 使用场景:在进行性能测试或监控应用性能时。
  • 代码示例:
    performance_data = driver.get_performance_data("data_type")
    

get_performance_data_types

  • 功能描述:获取性能数据类型,这可以用来了解可以监控的性能指标类型。
  • 使用场景:在开始性能测试之前,确定需要收集哪些类型的表现数据。
  • 代码示例:
    performance_data_types = driver.get_performance_data_types()
    

get_pinned_scripts

  • 功能描述:获取固定脚本,这可以用来管理和执行预先定义好的脚本。
  • 使用场景:在需要重用或快速执行固定脚本的自动化测试中。
  • 代码示例:
    pinned_scripts = driver.get_pinned_scripts()
    

get_screenshot_as_base64

  • 功能描述:获取Base64编码的屏幕截图,这可以用来在不保存文件的情况下捕获屏幕内容。
  • 使用场景:在需要捕获屏幕并进行图像分析或验证时。
  • 代码示例:
    screenshot_base64 = driver.get_screenshot_as_base64()
    

get_screenshot_as_file

  • 功能描述:将屏幕截图保存为文件,这可以用来记录测试过程或进行图像验证。
  • 使用场景:在需要保存屏幕截图以供后续分析或报告时。
  • 代码示例:
    driver.get_screenshot_as_file("screenshot.png")
    

get_screenshot_as_png

  • 功能描述:获取PNG格式的屏幕截图,这对于捕获当前屏幕内容并进行分析或报告非常有用。
  • 使用场景:在需要保存屏幕截图作为测试结果的证据或者进行视觉验证时。
  • 代码示例:
    screenshot_png = driver.get_screenshot_as_png()
    

get_settings

  • 功能描述:获取当前会话的设置信息,这可能包括浏览器的特定选项或移动设备的特定配置。
  • 使用场景:在需要检查或验证会话配置是否正确应用时。
  • 代码示例:
    settings = driver.get_settings()
    

get_status

  • 功能描述:获取当前会话的状态信息,例如会话是否仍然有效或存在任何错误。
  • 使用场景:在需要监控会话健康状况或进行故障排除时。
  • 代码示例:
    status = driver.get_status()
    

get_system_bars

  • 功能描述:获取系统栏的信息,这可能包括状态栏和导航栏的可见性和位置。
  • 使用场景:在进行全屏应用测试或需要了解系统栏对UI布局影响时。
  • 代码示例:
    system_bars = driver.get_system_bars()
    

get_window_position

  • 功能描述:获取当前窗口的位置坐标,这对于确保窗口在预期位置非常有用。
  • 使用场景:在进行窗口管理操作或需要精确控制窗口位置时。
  • 代码示例:
    window_position = driver.get_window_position()
    

get_window_rect

  • 功能描述:获取当前窗口的矩形区域,包括窗口的位置和大小。
  • 使用场景:在需要验证窗口布局或进行窗口大小和位置的自动化调整时。
  • 代码示例:
    window_rect = driver.get_window_rect()
    

get_window_size

  • 功能描述:获取当前窗口的大小,包括宽度和高度。
  • 使用场景:在进行窗口大小调整或需要验证窗口尺寸时。
  • 代码示例:
    window_size = driver.get_window_size()
    

hide_keyboard

  • 功能描述:隐藏键盘,这在自动化测试中用于确保键盘不会干扰测试流程。
  • 使用场景:在完成输入操作后,需要隐藏键盘以继续其他交互操作时。
  • 代码示例:
    driver.hide_keyboard()
    

implicitly_wait

  • 功能描述:设置隐式等待时间,这是WebDriver在尝试查找元素时等待元素变得可交互的最长时间。
  • 使用场景:在需要确保页面加载完成或元素可操作时。
  • 代码示例:
    driver.implicitly_wait(10)  # 等待最多10秒
    

install_app

  • 功能描述:安装应用到设备,这对于自动化测试移动应用安装和首次启动流程非常有用。
  • 使用场景:在进行应用安装测试或需要预装应用到测试设备时。
  • 代码示例:
    driver.install_app('path/to/app.apk')
    

is_app_installed

  • 功能描述:检查应用是否已安装在设备上,这对于验证安装流程或快速检查应用存在性非常有用。
  • 使用场景:在需要确认应用是否已经安装或更新时。
  • 代码示例:
    is_installed = driver.is_app_installed('app_package_name')
    

is_ime_active

  • 功能描述:检查输入法是否激活,这对于进行输入操作的自动化测试非常重要。
  • 使用场景:在需要确保输入法处于激活状态以进行文本输入时。
  • 代码示例:
    is_active = driver.is_ime_active()
    

is_keyboard_shown

  • 功能描述:检查键盘是否显示在屏幕上,这对于确保键盘不会干扰测试流程非常有用。
  • 使用场景:在需要键盘进行输入操作,但不希望物理键盘干扰时。
  • 代码示例:
    is_shown = driver.is_keyboard_shown()
    

is_locked

  • 功能描述:检查设备是否被锁定,这通常用于在执行某些操作之前确认设备的状态。
  • 使用场景:在自动化测试中,确保设备处于解锁状态以便进行后续的用户交互操作。
  • 代码示例:
    is_device_locked = driver.is_locked()
    

keyevent

  • 功能描述:发送一个键盘事件到设备,可以模拟硬件按键的按压和释放。
  • 使用场景:在需要模拟特定按键事件,如电源键或音量键操作时。
  • 代码示例:
    driver.keyevent(keycode)
    

launch_app

  • 功能描述:启动应用,这通常用于确保应用处于运行状态以便进行自动化测试。
  • 使用场景:在自动化测试开始前,启动应用以确保其处于可操作状态。
  • 代码示例:
    driver.launch_app(app_path)
    

location

  • 功能描述:设置或获取设备的位置信息,这通常用于测试地理位置相关的功能。
  • 使用场景:在需要模拟特定位置或测试位置服务时。
  • 代码示例:
    driver.location = (latitude, longitude)
    

lock

  • 功能描述:锁定设备屏幕,这通常用于确保设备在测试期间不会被意外操作。
  • 使用场景:在自动化测试中,为了防止设备在不适当的时候解锁或被打扰。
  • 代码示例:
    driver.lock()
    

log_event

  • 功能描述:记录日志事件,这可以用于自定义日志记录或事件追踪。
  • 使用场景:在需要记录特定测试事件或错误信息时。
  • 代码示例:
    driver.log_event('event_name', event_data)
    

log_types

  • 功能描述:获取日志类型,这有助于了解可以记录哪些类型的日志信息。
  • 使用场景:在配置日志记录或分析日志数据时。
  • 代码示例:
    log_types = driver.log_types()
    

long_press_keycode

  • 功能描述:长按指定的键码,模拟长时间按压某个按键的行为。
  • 使用场景:在需要模拟长按操作,如长按电源键进行关机或重启时。
  • 代码示例:
    driver.long_press_keycode(keycode)
    

make_gsm_call

  • 功能描述:通过GSM网络拨打电话,这通常用于测试设备的通话功能。
  • 使用场景:在进行电话相关的自动化测试时。
  • 代码示例:
    driver.make_gsm_call(phone_number)
    

mark_extension_absence

  • 功能描述:标记扩展不存在,这可能用于测试或配置特定于扩展的行为。
  • 使用场景:在需要确保某个扩展不被加载或测试扩展缺失情况下的行为时。
  • 代码示例:
    driver.mark_extension_absence(extension_id)
    

match_images_features

  • 功能描述:匹配图像特征,这通常用于图像识别和验证。
  • 使用场景:在进行视觉测试或需要比较两张图片的相似性时。
  • 代码示例:
    match_result = driver.match_images_features(image1_path, image2_path)
    

maximize_window

  • 功能描述:最大化窗口,确保窗口占据整个屏幕。
  • 使用场景:在需要全屏显示窗口内容或测试全屏功能时。
  • 代码示例:
    driver.maximize_window()
    

minimize_window

  • 功能描述:最小化窗口,使其在任务栏或Dock中显示为图标。
  • 使用场景:在需要管理多个窗口或测试最小化功能时。
  • 代码示例:
    driver.minimize_window()
    

mobile

  • 功能描述:与移动设备相关的操作,这可能包括设备设置、传感器操作等。
  • 使用场景:在进行移动设备特有的自动化测试时。
  • 代码示例:
    mobile_settings = driver.mobile
    

name

  • 功能描述:获取或设置当前会话的名称,这有助于标识和组织不同的自动化会话。
  • 使用场景:在需要对会话进行标记或引用时。
  • 代码示例:
    session_name = driver.name
    

network_connection

  • 功能描述:设置网络连接类型,这通常用于模拟不同的网络条件以测试应用的网络性能。
  • 使用场景:在进行网络稳定性或应用在不同网络环境下的表现测试时。
  • 代码示例:
    driver.network_connection = 'airplane_mode'
    

open_notifications

  • 功能描述:打开通知,这通常用于测试通知栏的操作或验证通知显示。
  • 使用场景:在需要与系统通知交互或验证通知内容时。
  • 代码示例:
    driver.open_notifications()
    

orientation

  • 功能描述:设置或获取设备的屏幕方向,这可以用于测试应用在不同方向下的表现。
  • 使用场景:在进行屏幕方向相关的自动化测试时。
  • 代码示例:
    driver.orientation = 'portrait'
    

page_source

  • 功能描述:获取当前页面的源代码,这通常用于验证页面内容或进行SEO测试。
  • 使用场景:在需要获取页面HTML内容进行分析或检查时。
  • 代码示例:
    page_source_code = driver.page_source
    

pin_script

  • 功能描述:固定脚本,使其在后续的操作中可用,这可以提高重复执行脚本的效率。
  • 使用场景:在需要频繁调用同一个脚本或存储常用操作序列时。
  • 代码示例:
    driver.pin_script(script_id, script_content)
    

pinned_scripts

  • 功能描述:获取当前固定(pinned)的脚本列表,这些脚本可能被用于后续的快速调用。
  • 使用场景:在需要快速访问和执行固定脚本的自动化测试中。
  • 代码示例:
    pinned_scripts_list = driver.pinned_scripts()
    

press_button

  • 功能描述:模拟按下一个按钮的操作,这可以是实体按钮,如设备上的“主页”按钮,或者是软件中的按钮元素。
  • 使用场景:在需要模拟用户按下特定按钮进行操作的自动化测试中。
  • 代码示例:
    driver.press_button(button_name)
    

press_keycode

  • 功能描述:通过按键代码发送一个按键事件到设备,这允许模拟特定的按键操作,如音量加、音量减等。
  • 使用场景:在需要模拟硬件按键操作的自动化测试中。
  • 代码示例:
    driver.press_keycode(keycode)
    
  • 功能描述:将当前页面的内容输出到打印格式,这通常用于调试或记录页面的当前状态。
  • 使用场景:在需要保存页面快照或进行页面内容验证时。
  • 代码示例:
    driver.print_page()
    

pull_file

  • 功能描述:从设备拉取文件到本地系统,这通常用于获取设备上的文件或数据。
  • 使用场景:在需要从设备上提取文件或备份数据时。
  • 代码示例:
    driver.pull_file(device_file_path, local_file_path)
    

pull_folder

  • 功能描述:从设备拉取文件夹到本地系统,这通常用于获取设备上的多个文件或整个目录。
  • 使用场景:在需要从设备上提取整个目录或进行数据备份时。
  • 代码示例:
    driver.pull_folder(device_folder_path, local_folder_path)
    

push_file

  • 功能描述:将文件推送到设备,这通常用于安装应用、上传文件或提供测试数据。
  • 使用场景:在需要向设备提供文件或更新应用时。
  • 代码示例:
    driver.push_file(local_file_path, device_file_path)
    

query_app_state

  • 功能描述:查询应用的状态信息,这可以用于检查应用是否在运行或处于后台。
  • 使用场景:在需要了解应用当前状态或进行状态相关的测试时。
  • 代码示例:
    app_state = driver.query_app_state(app_package)
    

quit

  • 功能描述:关闭所有窗口并结束当前的WebDriver会话,这是一个清理操作,通常在测试结束后使用。
  • 使用场景:在自动化测试脚本的最后,确保释放资源和关闭浏览器。
  • 代码示例:
    driver.quit()
    

refresh

  • 功能描述:刷新当前页面,等同于浏览器中的刷新按钮,用于重新加载页面内容。
  • 使用场景:在需要重新获取最新页面数据或清除页面缓存时。
  • 代码示例:
    driver.refresh()
    

remove_all_credentials

  • 功能描述:删除所有存储的认证凭据,如用户名和密码,用于清除自动登录信息。
  • 使用场景:在需要清除所有用户的登录信息以进行新用户测试时。
  • 代码示例:
    driver.remove_all_credentials()
    

remove_app

  • 功能描述:从设备中移除应用,等同于用户卸载应用的操作。
  • 使用场景:在需要清除应用数据或重置测试环境时。
  • 代码示例:
    driver.remove_app(app_package)
    

remove_credential

  • 功能描述:删除指定的认证凭据,用于管理存储的用户名和密码。
  • 使用场景:在需要移除特定用户的登录信息时。
  • 代码示例:
    driver.remove_credential(credential_id)
    

remove_virtual_authenticator

  • 功能描述:移除虚拟身份验证器,这在测试身份验证流程时非常有用。
  • 使用场景:在不再需要虚拟身份验证器进行测试时。
  • 代码示例:
    driver.remove_virtual_authenticator(authenticator_id)
    

reset

  • 功能描述:重置设备或应用到默认状态,这通常用于测试前后的环境准备。
  • 使用场景:在需要确保应用或设备处于已知初始状态时。
  • 代码示例:
    driver.reset()
    

save_screenshot

  • 功能描述:保存屏幕截图,这可以用于记录测试过程或作为测试结果的证据。
  • 使用场景:在需要捕获当前屏幕内容作为参考时。
  • 代码示例:
    driver.save_screenshot('screenshot.png')
    

scroll

  • 功能描述:在页面上滚动到指定元素,确保该元素在视口中可见。
  • 使用场景:在需要操作页面中滚动才能看到的部分时。
  • 代码示例:
    driver.scroll(element)
    

send_sms

  • 功能描述:发送短信,这可以用于测试设备的短信功能。
  • 使用场景:在需要模拟接收或发送短信的测试场景中。
  • 代码示例:
    driver.send_sms(recipient, message)
    

session

  • 功能描述:获取当前会话的相关信息,如会话状态、窗口句柄等。
  • 使用场景:在需要检查当前会话的详细信息以进行调试时。
  • 代码示例:
    session_info = driver.session
    

session_id

  • 功能描述:获取当前会话的唯一标识符,这有助于识别和管理多个并发会话。
  • 使用场景:在需要引用特定会话进行操作或监控时。
  • 代码示例:
    session_id = driver.session_id
    

set_clipboard

  • 功能描述:设置剪贴板内容,这可以用于在自动化测试中复制和粘贴数据。
  • 使用场景:在需要自动化剪贴板操作,如登录测试时。
  • 代码示例:
    driver.set_clipboard(clipboard_content)
    

set_clipboard_text

  • 功能描述:在剪贴板中设置文本内容,这通常用于文本复制和粘贴操作。
  • 使用场景:在需要自动化文本输入或验证剪贴板内容时。
  • 代码示例:
    driver.set_clipboard_text('text_to_copy')
    

set_gsm_signal

  • 功能描述:设置GSM信号强度,这可以用于模拟不同网络信号条件下的测试。
  • 使用场景:在进行网络连接和信号强度相关的测试时。
  • 代码示例:
    driver.set_gsm_signal(signal_strength)
    

set_gsm_voice

  • 功能描述:设置GSM语音通话质量,这可以用于测试通话功能。
  • 使用场景:在需要模拟不同通话质量进行测试时。
  • 代码示例:
    driver.set_gsm_voice(voice_quality)
    

set_location

  • 功能描述:设置设备的位置信息,这可以用于测试基于位置的服务和功能。
  • 使用场景:在需要模拟特定位置进行测试,如地图应用时。
  • 代码示例:
    driver.set_location(latitude, longitude)
    

set_network_connection

  • 功能描述:设置网络连接类型,这可以用于模拟不同网络环境。
  • 使用场景:在进行网络性能测试或测试应用在不同网络条件下的行为时。
  • 代码示例:
    driver.set_network_connection(network_connection_type)
    

set_network_speed

  • 功能描述:设置网络速度,这可以用于测试应用在不同网络速度下的表现。
  • 使用场景:在需要模拟慢速或快速网络进行性能测试时。
  • 代码示例:
    driver.set_network_speed(network_speed)
    

set_page_load_timeout

  • 功能描述:设置页面加载超时时间,这可以用于配置WebDriver等待页面加载的最大时间。
  • 使用场景:在需要调整页面加载等待时间以适应不同加载速度的页面时。
  • 代码示例:
    driver.set_page_load_timeout(timeout_in_seconds)
    

set_power_ac

  • 功能描述:设置是否连接到交流电源,这可以用于模拟设备充电状态。
  • 使用场景:在进行电池使用和充电相关的测试时。
  • 代码示例:
    driver.set_power_ac(True)
    

set_power_capacity

  • 功能描述:设置设备的电池容量,这可以用于模拟不同电量下的设备行为。
  • 使用场景:在进行电池电量相关测试或验证电量显示准确性时。
  • 代码示例:
    driver.set_power_capacity(battery_percentage)
    

set_script_timeout

  • 功能描述:设置脚本执行的超时时间,这可以用于配置脚本运行的最大允许时间。
  • 使用场景:在需要控制脚本执行时间以避免长时间运行时。
  • 代码示例:
    driver.set_script_timeout(timeout_in_seconds)
    

set_user_verified

  • 功能描述:设置用户验证状态,这可以用于模拟用户登录状态。
  • 使用场景:在需要模拟用户验证过程或测试受保护资源的访问时。
  • 代码示例:
    driver.set_user_verified(verified_status)
    

set_value

  • 功能描述:设置元素的值,这通常用于表单输入或其他可输入元素。
  • 使用场景:在需要自动化输入字段填写或修改输入值时。
  • 代码示例:
    element.send_keys('new_value')
    

set_window_position

  • 功能描述:设置窗口的位置,这可以用于移动窗口到屏幕的特定坐标。
  • 使用场景:在需要调整窗口位置以适应测试或用户界面设计时。
  • 代码示例:
    driver.set_window_position(x, y)
    

set_window_rect

  • 功能描述:设置窗口的矩形区域,包括窗口的位置和大小。
  • 使用场景:在需要调整窗口的大小和位置以适应测试或用户界面设计时。
  • 代码示例:
    driver.set_window_rect(x, y, width, height)
    

set_window_size

  • 功能描述:设置窗口的大小,这可以用于调整窗口的宽度和高度。
  • 使用场景:在需要调整窗口大小以适应测试或用户界面设计时。
  • 代码示例:
    driver.set_window_size(width, height)
    

shake

  • 功能描述:模拟设备摇动操作,通常用于测试传感器,如加速度计。
  • 使用场景:在需要测试设备的运动感应功能时。
  • 代码示例:
    driver.shake()
    

start_activity

  • 功能描述:启动一个新的活动(Activity),这通常用于Android应用的UI自动化测试。

  • 使用场景:在需要启动特定的应用界面或操作流时。

  • 代码示例:

    driver.start_activity(activity_name)
    

start_client

  • 功能描述:启动客户端,这通常用于初始化与WebDriver服务器的连接。
  • 使用场景:在自动化测试脚本开始时,确保客户端已启动并准备好接收命令。
  • 代码示例:
    driver.start_client()
    

start_recording_screen

  • 功能描述:开始录制屏幕操作,这可以用于记录用户操作或测试过程。
  • 使用场景:在需要创建操作演示或分析测试过程时。
  • 代码示例:
    driver.start_recording_screen()
    

start_session

  • 功能描述:开始一个新的WebDriver会话,这是大多数自动化操作的起点。
  • 使用场景:在自动化测试脚本开始时,创建新的会话以开始操作。
  • 代码示例:
    driver.start_session(desired_capabilities)
    

stop_client

  • 功能描述:停止客户端,这通常用于结束与WebDriver服务器的连接。
  • 使用场景:在自动化测试脚本结束后,确保资源被释放。
  • 代码示例:
    driver.stop_client()
    

stop_recording_screen

  • 功能描述:停止录制屏幕操作,这通常在录制完成后使用。
  • 使用场景:在结束操作录制或测试过程后。
  • 代码示例:
    driver.stop_recording_screen()
    

swipe

  • 功能描述:模拟手指在屏幕上滑动操作,这可以用于模拟用户滑动页面或操作UI元素。
  • 使用场景:在需要模拟滑动操作,如切换页面或滚动列表时。
  • 代码示例:
    driver.swipe(start_x, start_y, end_x, end_y)
    

switch_to

  • 功能描述:切换到指定的上下文或窗口,这可以用于处理多窗口或多上下文的情况。
  • 使用场景:在需要对特定窗口或上下文进行操作时。
  • 代码示例:
    driver.switch_to.context(context_name)
    

tap

  • 功能描述:模拟手指点击屏幕操作,这可以用于模拟用户点击按钮或链接等操作。
  • 使用场景:在需要模拟用户点击操作时。
  • 代码示例:
    driver.tap(x, y)
    

terminate_app

  • 功能描述:结束指定的应用,这通常用于重置应用状态或清理测试环境。
  • 使用场景:在需要关闭应用以进行新测试或清理资源时。
  • 代码示例:
    driver.terminate_app(app_id)
    

timeouts

  • 功能描述:设置各种操作的超时时间,这可以用于配置元素查找、脚本执行等操作的等待时间。
  • 使用场景:在需要调整默认等待时间以适应页面加载速度或网络延迟时。
  • 代码示例:
    driver.timeouts.implicitly_wait = timeout_value
    

title

  • 功能描述:获取当前页面的标题,这通常用于验证页面内容或导航。
  • 使用场景:在需要确认当前页面是否为预期页面时。
  • 代码示例:
    page_title = driver.title
    

toggle_location_services

  • 功能描述:切换位置服务的开启和关闭,这可以用于测试基于位置的功能。
  • 使用场景:在需要模拟位置服务开启或关闭状态下的测试时。
  • 代码示例:
    driver.toggle_location_services(True)
    

toggle_touch_id_enrollment

  • 功能描述:切换Touch ID的注册状态,这可以用于测试指纹识别功能。
  • 使用场景:在需要模拟Touch ID注册或注销状态时。
  • 代码示例:
    driver.toggle_touch_id_enrollment(True)
    

toggle_wifi

  • 功能描述:切换Wi-Fi的开启和关闭,这可以用于测试应用在不同网络条件下的行为。
  • 使用场景:在进行网络连接相关的测试时。
  • 代码示例:
    driver.toggle_wifi(True)
    

touch_id

  • 功能描述:与Touch ID相关的操作,这可以用于模拟指纹识别过程。
  • 使用场景:在需要测试指纹识别功能或进行身份验证测试时。
  • 代码示例:
    driver.touch_id(action)
    

unlock

  • 功能描述:解锁设备屏幕,这通常用于在自动化测试中开始用户交互操作。
  • 使用场景:在设备锁定状态下,需要进行操作前解锁屏幕。
  • 代码示例:
    driver.unlock()
    

unpin

  • 功能描述:取消固定脚本,这可以用于移除之前固定并准备快速调用的脚本。
  • 使用场景:在不再需要快速调用某个脚本或需要释放资源时。
  • 代码示例:
    driver.unpin('script_id')
    

update_settings

  • 功能描述:更新设置信息,这可以用于修改WebDriver会话的配置。
  • 使用场景:在需要在测试过程中动态调整设置时。
  • 代码示例:
    driver.update_settings(new_settings)
    

virtual_authenticator_id

  • 功能描述:获取虚拟身份验证器的ID,这可以用于管理和引用虚拟身份验证器。
  • 使用场景:在需要引用特定虚拟身份验证器进行测试时。
  • 代码示例:
    authenticator_id = driver.virtual_authenticator_id
    

wait_activity

  • 功能描述:等待特定的活动(Activity)出现,这通常用于Android应用的UI自动化测试。
  • 使用场景:在需要等待特定界面或操作流出现时。
  • 代码示例:
    driver.wait_activity(activity_name, timeout)
    

window_handles

  • 功能描述:获取所有窗口的句柄,这可以用于操作多个窗口或上下文。
  • 使用场景:在需要引用或切换到特定窗口进行操作时。
  • 代码示例:
    window_handles = driver.window_handles
    

Element方法大全

属性获取

  • 获取元素的属性或状态信息:
    • accessible_name: 获取元素的可访问性名称,通常用于辅助技术。
    • aria_role: 获取或设置元素的ARIA角色,以提供元素功能的信息。
    • get_attribute: 获取元素的指定HTML属性值。
    • get_dom_attribute: 获取元素的DOM属性值,这可能与get_attribute获取的值不同。
    • get_property: 获取元素的指定JavaScript属性值。
    • id: 获取元素的ID。
    • tag_name: 获取元素的标签名。
    • text: 获取元素的文本内容。
    • value_of_css_property: 获取元素的CSS属性值。

状态检查

  • 检查元素的显示状态或行为状态:
    • is_displayed: 检查元素是否在页面上可见。
    • is_enabled: 检查元素是否处于可用(启用)状态。
    • is_selected: 检查元素(如选项或复选框)是否被选中。

交互操作

  • 模拟用户与元素的交互:
    • click: 模拟用户点击元素的操作。
    • send_keys: 向元素发送按键事件,模拟键盘输入。
    • set_text: 设置元素的文本内容,通常用于输入框。
    • set_value: 设置元素的值,通常用于表单控件。
    • submit: 提交表单或触发元素的提交事件。

元素定位

  • 获取元素在页面上的位置或尺寸信息:
    • location: 获取元素的位置信息,包括相对于文档左上角的坐标。
    • location_in_view: 获取元素在视口(当前浏览器窗口可见部分)内的位置信息。
    • location_once_scrolled_into_view: 获取元素在滚动到视口内后的位置信息。
    • rect: 获取元素的尺寸和位置信息,包括元素的边界矩形。
    • size: 获取元素的尺寸,包括宽度和高度。

元素搜索

  • 在DOM树中查找元素:
    • find_element: 在DOM树中查找第一个匹配指定条件的元素。
    • find_elements: 在DOM树中查找所有匹配指定条件的元素。
    • parent: 获取元素的直接父元素。

元素视觉

  • 与元素的视觉表现相关的方法:
    • screenshot: 对指定元素进行屏幕截图。
    • screenshot_as_base64: 对元素进行屏幕截图,并将截图以Base64编码的字符串形式返回。
    • screenshot_as_png: 对元素进行屏幕截图,并将截图以PNG格式返回。

特殊DOM操作

  • 与Shadow DOM相关的操作:
    • shadow_root: 获取与元素关联的Shadow DOM的根节点,用于操作封装的DOM结构。
posted @   搬砖路上的大马猴  阅读(1296)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示