UI操作总结
该类 SolarWebx
继承自 Webx
和 IUixLikeMixin
,主要用于扩展 giraffe.EasyUILibrary
的功能,提供了一系列与网页操作、元素定位、截图、图片处理等相关的方法。以下是对该类中每个方法的简要总结:
-
__init__
方法- 作用:初始化
SolarWebx
实例。调用父类的初始化方法,初始化OpenCVLibrary
,设置页面 HTML 的 MD5 值、解析器,初始化 TOS 相关工具,以及维护窗口句柄。
- 作用:初始化
-
cls_init_tosUtil
方法- 作用:类方法,初始化
TosUtil
实例,设置 TOS 目录等相关属性。
- 作用:类方法,初始化
-
win_main_handle
属性及相关方法win_main_handle
属性:获取或设置主窗口句柄。win_main_handle.setter
方法:设置主窗口句柄,并在非首次设置时记录日志。_main_handle_reset
方法:重置主窗口句柄为空字符串并返回。win_switch_to_main
方法:切换到已存储的主窗口句柄。
-
help_handle
属性及相关方法help_handle
属性:获取或设置辅助窗口句柄。help_handle.setter
方法:设置辅助窗口句柄,断言其类型并记录日志。_help_handle_reset
方法:重置辅助窗口句柄为空字符串并返回。
-
ui_open_url
方法- 作用:访问指定的 URL。简化了父类方法中的日志记录,检查浏览器是否已开启,格式化 URL,记录访问前后的 URL 并截图,等待页面加载。
-
uix_is_xpath
方法- 作用:判断给定的字符串是否为 XPath 表达式。
-
uix_get_pageHtmlParse
方法- 作用:通过 HTML 解析器处理复杂的页面原始逻辑。根据传入的参数获取页面 HTML 数据并解析,支持从 TOS 获取 HTML 数据。
-
uix_cap_scene
方法- 作用:进行 HTML 离线定位器截屏。保存页面截图,将 HTML 数据上传到 TOS,并记录相关日志。
-
uix_get_outer_html
方法- 作用:获取页面的根元素(HTML 标签)的 outerHTML。
-
uix_xpath_multi_fast_finds
方法- 作用:根据多个 XPath 表达式在 HTML 解析树中批量快速查找控件,并根据预期数量进行校验。
-
uix_xpath_find
方法- 作用:通过 XPath 查找最多一个控件,返回 WebElement 对象。支持滚动到元素并鼠标悬浮,根据查找结果数量进行相应处理。
-
uix_findOne_byXpath
方法- 作用:与
uix_xpath_find
方法相同,为该方法的别名。
- 作用:与
-
_get_elem_brief_ls
方法- 作用:获取元素列表中每个元素的简要 XPath 路径。
-
ui_page_screenshot
方法- 作用:对当前页面截图,可选择是否删除获取的图片。
-
ui_chart_screenshot
方法- 作用:对给定名称的图表进行截图,支持设置超时、使用裁剪方式截图以及是否删除获取的图片。
-
cv_assert_chart_line
方法- 作用:校验图表线条,根据图片路径进行校验,校验完成后删除本地图片。
-
element_screenshot
方法- 作用:对指定元素进行截图,可选择是否删除获取的图片。
-
diff_img
方法- 作用:对比两张图片,返回图片的相似度等信息。
-
image_diff
方法- 作用:执行图片比对或保存基准图片的操作。支持对元素截图并与 TOS 中的图片对比,或保存元素截图为基准图片到 TOS。
-
ui_image_diff
方法- 作用:根据指定模式执行图片比对或保存基准图片操作,并根据相似度进行断言和日志记录。
-
image_cropping
方法- 作用:对图片进行剪裁,根据给定的坐标百分比调整并保存图片。
-
uix_Wait
方法- 作用:等待页面元素可见,超时则截图并抛出异常。
-
does_the_chart_exist
方法- 作用:校验图形是否存在,通过检查截图中是否存在特定颜色的图形进行判断。
-
ui_find_element
方法- 作用:通过选择器查找元素并返回第一个元素。
-
get_elements_text
方法- 作用:获取元素对象列表的所有文本信息,支持 XPath 选择器转换。
-
get_element_text
方法- 作用:获取单个元素对象的文本信息。
-
diff_text_matching_degree
方法- 作用:校验两个文本的匹配度,返回匹配度比值。
-
get_clipboard_data
方法- 作用:获取粘贴板的值。
-
set_clipboard_data
方法- 作用:设置粘贴板的值。
-
uix_find_element_returned_again
方法- 作用:通过 CSS 选择器查询元素,如果存在则返回第一个元素,否则返回空列表。
-
uix_find_elements_returned_again
方法- 作用:通过 CSS 选择器查询元素,如果存在则返回所有元素列表,否则返回空列表。
-
switch_en
方法- 作用:刷新页面后切换到英文模式。
-
try_collection_page_verification
方法- 作用:在取消收藏时,通过多次循环确保页面元素状态的稳定性,根据期望结果进行断言。
-
uix_TryToFindOne_byXpath
方法- 作用:尝试通过 XPath 寻找元素,在指定时间内找到则返回元素,否则忽略异常并返回空列表。
-
uix_xpath_click
方法- 作用:通过 XPath 查找元素并点击,支持滚动、高亮显示、自动切换窗口等功能,并在点击后截图。
-
uix_findOneThenClick_byXpath
方法- 作用:与
uix_xpath_click
方法相同,为该方法的别名。
- 作用:与
-
uix_xpath_finds
方法- 作用:通过 XPath 查找多个控件,返回 WebElement 对象列表,可根据查找结果是否为空进行断言。
-
uix_find_xpath
方法- 作用:通过 XPath 查找元素,返回第一个元素,如果没有找到则返回空列表。
-
uix_finds_byXpath
和uix_finds_xpath
方法- 作用:与
uix_xpath_finds
方法相同,为该方法的别名。
- 作用:与
-
ui_click_element
方法- 作用:点击元素,支持 XPath、CSS 或元素对象定位,点击后等待页面加载、截图,并可自动切换窗口。
-
uix_auto_switch_win
方法- 作用:自动跟随切换至新增的窗口,并记录窗口变化日志。
-
exception_pass
方法- 作用:执行函数时捕获异常,可返回默认值或 0。
-
multiple_choice_one
方法- 作用:对给定列表中的值执行指定函数,根据是否多选一的场景进行判断和断言。
-
for_each
方法- 作用:对可迭代数据执行指定函数,支持异常处理、中断循环等功能。
-
ui_imc_wait_page_loading
方法- 作用:等待页面加载完成,支持滑动加载全屏数据、重试等功能,并记录相关日志。
-
uix_xpath_wait
方法- 作用:等待 XPath 元素出现或消失,可设置超时时间、是否允许多个元素等参数,并在异常时截图。
-
uix_waitOne_byXpath
方法- 作用:与
uix_xpath_wait
方法相同,为该方法的别名。
- 作用:与
-
uix_xpath_waitClick
方法- 作用:等待 XPath 元素出现后点击,并在点击后截图。
-
uix_waitOneThenClick_byXpath
方法- 作用:与
uix_xpath_waitClick
方法相同,为该方法的别名。
- 作用:与
-
uix_findOne_byOcrpath
方法- 作用:通过 OCR 路径检查获取到的值是否唯一,多次请求 OCR 接口直到成功或达到最大重试次数。
-
move_by_rect_info_special
方法- 作用:重载方法,根据给定的矩形信息移动元素。
-
uix_xpath_clickToChange
方法- 作用:通过 XPath 点击元素,校验点击后元素状态是否变化,并可根据需要截图和断言。
-
uix_switch_to_window
方法- 作用:切换到指定索引的窗口,并返回当前窗口句柄。
-
uix_switch_to_window_handle
方法- 作用:切换到指定的窗口句柄,可选择是否在句柄不存在时抛出异常。
-
uix_switch_win_then_back
方法- 作用:切换至新的或已有的辅助窗口,然后回退至指定的主窗口。
-
send_command_v
方法- 作用:模拟粘贴操作,兼容不同操作系统的粘贴快捷键。
-
uix_find_child_elements
方法- 作用:将父元素转换为 Navigator 对象,然后通过选择器查找子元素。
-
ui_check_page_contains_text
方法- 作用:校验页面是否包含指定的一个或多个文本,支持在父元素下进行校验。
-
element_to_navigator
方法- 作用:将原生的 WebElement 对象转换为 Navigator 对象,以更好地支持子级查询。
-
ui_scroll_to_element
方法- 作用:优化滚动到元素的方法,支持水平居中滚动。
-
ui_scroll_height
方法- 作用:获取页面滚动条整体高度,根据操作系统类型执行不同的获取方式。
-
ui_page_height
方法- 作用:获取页面整体高度。
-
ui_go_to_scroll_height
方法- 作用:移动滚动条到指定高度,根据操作系统类型执行不同的操作。
-
ui_move_to_bottom
方法- 作用:移动到页面底部,可选择使用 CSS 选择器指定滚动条。
-
ui_move_to_top
方法- 作用:移动到页面顶部,可指定滚动高度和使用 CSS 选择器指定滚动条。
-
ui_visible_area_is_chart
方法- 作用:判断传入的元素是否在当前可视页面中,并进行截图和断言。
-
uix_get_chrome_recorded_api
方法- 作用:抓取录制的 API 信息,可根据 URL 过滤仅返回包含指定 URL 过滤器的 API。
-
ui_add_cookies_to_site
方法- 作用:向给定网站注入 cookies,支持解析字符串类型的 cookies 并处理不同类型的 cookies 数据。
-
uix_addCookieMap
方法- 作用:向网站添加 cookie 映射,支持过滤、设置 sameSite 属性等功能,并记录相关日志。
-
ui_sleep
方法- 作用:使程序暂停指定的时间,并记录日志。
-
uix_click_point
方法- 作用:通过坐标点击页面,支持偏移量和双击操作。
-
uix_clickOne_byOcrpath
方法- 作用:通过 OCR 路径找到一个坐标点并点击。
-
_get_ocr_pic_ratio
方法- 作用:获取 OCR 图片的比例,根据操作系统返回不同的经验比例值。
-
_uix_detect_text_by_ocr
方法- 作用:使用 OCR 检测图片中的文本,去除图片比例的影响。
-
_get_text_location_by_ocrpath
方法- 作用:通过 OCR 路径获取文本的位置,支持返回文本、指定索引、完全匹配等功能。
-
uix_finds_byOcrpath
方法- 作用:通过 OCR 路径查找元素,增加重试机制,最多重试 10 次。
-
uix_finds_byOcrpath1
方法- 作用:通过 OCR 路径查找元素的具体实现,支持简单模式、区域裁剪等功能。
-
uix_click_elem
方法- 作用:点击指定元素并进行截图。
-
ui_click
方法- 作用:点击元素或文本,支持索引、等待页面加载、截图等功能。
-
ui_check_page_not_contains_elementByXpath
方法- 作用:校验页面不包含指定 XPath 的元素,等待超时后截图并返回结果。