当前位置: 首页 > article >正文

UI操作总结

该类 SolarWebx 继承自 WebxIUixLikeMixin,主要用于扩展 giraffe.EasyUILibrary 的功能,提供了一系列与网页操作、元素定位、截图、图片处理等相关的方法。以下是对该类中每个方法的简要总结:

  1. __init__ 方法

    • 作用:初始化 SolarWebx 实例。调用父类的初始化方法,初始化 OpenCVLibrary,设置页面 HTML 的 MD5 值、解析器,初始化 TOS 相关工具,以及维护窗口句柄。
  2. cls_init_tosUtil 方法

    • 作用:类方法,初始化 TosUtil 实例,设置 TOS 目录等相关属性。
  3. win_main_handle 属性及相关方法

    • win_main_handle 属性:获取或设置主窗口句柄。
    • win_main_handle.setter 方法:设置主窗口句柄,并在非首次设置时记录日志。
    • _main_handle_reset 方法:重置主窗口句柄为空字符串并返回。
    • win_switch_to_main 方法:切换到已存储的主窗口句柄。
  4. help_handle 属性及相关方法

    • help_handle 属性:获取或设置辅助窗口句柄。
    • help_handle.setter 方法:设置辅助窗口句柄,断言其类型并记录日志。
    • _help_handle_reset 方法:重置辅助窗口句柄为空字符串并返回。
  5. ui_open_url 方法

    • 作用:访问指定的 URL。简化了父类方法中的日志记录,检查浏览器是否已开启,格式化 URL,记录访问前后的 URL 并截图,等待页面加载。
  6. uix_is_xpath 方法

    • 作用:判断给定的字符串是否为 XPath 表达式。
  7. uix_get_pageHtmlParse 方法

    • 作用:通过 HTML 解析器处理复杂的页面原始逻辑。根据传入的参数获取页面 HTML 数据并解析,支持从 TOS 获取 HTML 数据。
  8. uix_cap_scene 方法

    • 作用:进行 HTML 离线定位器截屏。保存页面截图,将 HTML 数据上传到 TOS,并记录相关日志。
  9. uix_get_outer_html 方法

    • 作用:获取页面的根元素(HTML 标签)的 outerHTML。
  10. uix_xpath_multi_fast_finds 方法

    • 作用:根据多个 XPath 表达式在 HTML 解析树中批量快速查找控件,并根据预期数量进行校验。
  11. uix_xpath_find 方法

    • 作用:通过 XPath 查找最多一个控件,返回 WebElement 对象。支持滚动到元素并鼠标悬浮,根据查找结果数量进行相应处理。
  12. uix_findOne_byXpath 方法

    • 作用:与 uix_xpath_find 方法相同,为该方法的别名。
  13. _get_elem_brief_ls 方法

    • 作用:获取元素列表中每个元素的简要 XPath 路径。
  14. ui_page_screenshot 方法

    • 作用:对当前页面截图,可选择是否删除获取的图片。
  15. ui_chart_screenshot 方法

    • 作用:对给定名称的图表进行截图,支持设置超时、使用裁剪方式截图以及是否删除获取的图片。
  16. cv_assert_chart_line 方法

    • 作用:校验图表线条,根据图片路径进行校验,校验完成后删除本地图片。
  17. element_screenshot 方法

    • 作用:对指定元素进行截图,可选择是否删除获取的图片。
  18. diff_img 方法

    • 作用:对比两张图片,返回图片的相似度等信息。
  19. image_diff 方法

    • 作用:执行图片比对或保存基准图片的操作。支持对元素截图并与 TOS 中的图片对比,或保存元素截图为基准图片到 TOS。
  20. ui_image_diff 方法

    • 作用:根据指定模式执行图片比对或保存基准图片操作,并根据相似度进行断言和日志记录。
  21. image_cropping 方法

    • 作用:对图片进行剪裁,根据给定的坐标百分比调整并保存图片。
  22. uix_Wait 方法

    • 作用:等待页面元素可见,超时则截图并抛出异常。
  23. does_the_chart_exist 方法

    • 作用:校验图形是否存在,通过检查截图中是否存在特定颜色的图形进行判断。
  24. ui_find_element 方法

    • 作用:通过选择器查找元素并返回第一个元素。
  25. get_elements_text 方法

    • 作用:获取元素对象列表的所有文本信息,支持 XPath 选择器转换。
  26. get_element_text 方法

    • 作用:获取单个元素对象的文本信息。
  27. diff_text_matching_degree 方法

    • 作用:校验两个文本的匹配度,返回匹配度比值。
  28. get_clipboard_data 方法

    • 作用:获取粘贴板的值。
  29. set_clipboard_data 方法

    • 作用:设置粘贴板的值。
  30. uix_find_element_returned_again 方法

    • 作用:通过 CSS 选择器查询元素,如果存在则返回第一个元素,否则返回空列表。
  31. uix_find_elements_returned_again 方法

    • 作用:通过 CSS 选择器查询元素,如果存在则返回所有元素列表,否则返回空列表。
  32. switch_en 方法

    • 作用:刷新页面后切换到英文模式。
  33. try_collection_page_verification 方法

    • 作用:在取消收藏时,通过多次循环确保页面元素状态的稳定性,根据期望结果进行断言。
  34. uix_TryToFindOne_byXpath 方法

    • 作用:尝试通过 XPath 寻找元素,在指定时间内找到则返回元素,否则忽略异常并返回空列表。
  35. uix_xpath_click 方法

    • 作用:通过 XPath 查找元素并点击,支持滚动、高亮显示、自动切换窗口等功能,并在点击后截图。
  36. uix_findOneThenClick_byXpath 方法

    • 作用:与 uix_xpath_click 方法相同,为该方法的别名。
  37. uix_xpath_finds 方法

    • 作用:通过 XPath 查找多个控件,返回 WebElement 对象列表,可根据查找结果是否为空进行断言。
  38. uix_find_xpath 方法

    • 作用:通过 XPath 查找元素,返回第一个元素,如果没有找到则返回空列表。
  39. uix_finds_byXpathuix_finds_xpath 方法

    • 作用:与 uix_xpath_finds 方法相同,为该方法的别名。
  40. ui_click_element 方法

    • 作用:点击元素,支持 XPath、CSS 或元素对象定位,点击后等待页面加载、截图,并可自动切换窗口。
  41. uix_auto_switch_win 方法

    • 作用:自动跟随切换至新增的窗口,并记录窗口变化日志。
  42. exception_pass 方法

    • 作用:执行函数时捕获异常,可返回默认值或 0。
  43. multiple_choice_one 方法

    • 作用:对给定列表中的值执行指定函数,根据是否多选一的场景进行判断和断言。
  44. for_each 方法

    • 作用:对可迭代数据执行指定函数,支持异常处理、中断循环等功能。
  45. ui_imc_wait_page_loading 方法

    • 作用:等待页面加载完成,支持滑动加载全屏数据、重试等功能,并记录相关日志。
  46. uix_xpath_wait 方法

    • 作用:等待 XPath 元素出现或消失,可设置超时时间、是否允许多个元素等参数,并在异常时截图。
  47. uix_waitOne_byXpath 方法

    • 作用:与 uix_xpath_wait 方法相同,为该方法的别名。
  48. uix_xpath_waitClick 方法

    • 作用:等待 XPath 元素出现后点击,并在点击后截图。
  49. uix_waitOneThenClick_byXpath 方法

    • 作用:与 uix_xpath_waitClick 方法相同,为该方法的别名。
  50. uix_findOne_byOcrpath 方法

    • 作用:通过 OCR 路径检查获取到的值是否唯一,多次请求 OCR 接口直到成功或达到最大重试次数。
  51. move_by_rect_info_special 方法

    • 作用:重载方法,根据给定的矩形信息移动元素。
  52. uix_xpath_clickToChange 方法

    • 作用:通过 XPath 点击元素,校验点击后元素状态是否变化,并可根据需要截图和断言。
  53. uix_switch_to_window 方法

    • 作用:切换到指定索引的窗口,并返回当前窗口句柄。
  54. uix_switch_to_window_handle 方法

    • 作用:切换到指定的窗口句柄,可选择是否在句柄不存在时抛出异常。
  55. uix_switch_win_then_back 方法

    • 作用:切换至新的或已有的辅助窗口,然后回退至指定的主窗口。
  56. send_command_v 方法

    • 作用:模拟粘贴操作,兼容不同操作系统的粘贴快捷键。
  57. uix_find_child_elements 方法

    • 作用:将父元素转换为 Navigator 对象,然后通过选择器查找子元素。
  58. ui_check_page_contains_text 方法

    • 作用:校验页面是否包含指定的一个或多个文本,支持在父元素下进行校验。
  59. element_to_navigator 方法

    • 作用:将原生的 WebElement 对象转换为 Navigator 对象,以更好地支持子级查询。
  60. ui_scroll_to_element 方法

    • 作用:优化滚动到元素的方法,支持水平居中滚动。
  61. ui_scroll_height 方法

    • 作用:获取页面滚动条整体高度,根据操作系统类型执行不同的获取方式。
  62. ui_page_height 方法

    • 作用:获取页面整体高度。
  63. ui_go_to_scroll_height 方法

    • 作用:移动滚动条到指定高度,根据操作系统类型执行不同的操作。
  64. ui_move_to_bottom 方法

    • 作用:移动到页面底部,可选择使用 CSS 选择器指定滚动条。
  65. ui_move_to_top 方法

    • 作用:移动到页面顶部,可指定滚动高度和使用 CSS 选择器指定滚动条。
  66. ui_visible_area_is_chart 方法

    • 作用:判断传入的元素是否在当前可视页面中,并进行截图和断言。
  67. uix_get_chrome_recorded_api 方法

    • 作用:抓取录制的 API 信息,可根据 URL 过滤仅返回包含指定 URL 过滤器的 API。
  68. ui_add_cookies_to_site 方法

    • 作用:向给定网站注入 cookies,支持解析字符串类型的 cookies 并处理不同类型的 cookies 数据。
  69. uix_addCookieMap 方法

    • 作用:向网站添加 cookie 映射,支持过滤、设置 sameSite 属性等功能,并记录相关日志。
  70. ui_sleep 方法

    • 作用:使程序暂停指定的时间,并记录日志。
  71. uix_click_point 方法

    • 作用:通过坐标点击页面,支持偏移量和双击操作。
  72. uix_clickOne_byOcrpath 方法

    • 作用:通过 OCR 路径找到一个坐标点并点击。
  73. _get_ocr_pic_ratio 方法

    • 作用:获取 OCR 图片的比例,根据操作系统返回不同的经验比例值。
  74. _uix_detect_text_by_ocr 方法

    • 作用:使用 OCR 检测图片中的文本,去除图片比例的影响。
  75. _get_text_location_by_ocrpath 方法

    • 作用:通过 OCR 路径获取文本的位置,支持返回文本、指定索引、完全匹配等功能。
  76. uix_finds_byOcrpath 方法

    • 作用:通过 OCR 路径查找元素,增加重试机制,最多重试 10 次。
  77. uix_finds_byOcrpath1 方法

    • 作用:通过 OCR 路径查找元素的具体实现,支持简单模式、区域裁剪等功能。
  78. uix_click_elem 方法

    • 作用:点击指定元素并进行截图。
  79. ui_click 方法

    • 作用:点击元素或文本,支持索引、等待页面加载、截图等功能。
  80. ui_check_page_not_contains_elementByXpath 方法

    • 作用:校验页面不包含指定 XPath 的元素,等待超时后截图并返回结果。

http://www.kler.cn/a/517344.html

相关文章:

  • Vue2下篇
  • 第38周:猫狗识别 (Tensorflow实战第八周)
  • Linux-day10
  • Spring Boot 3.4 正式发布,结构化日志!
  • 【前端SEO】使用Vue.js + Nuxt 框架构建服务端渲染 (SSR) 应用满足SEO需求
  • 【深度学习基础】多层感知机 | 数值稳定性和模型初始化
  • c++在线音乐播放器项目开发记录(1)
  • 【Windows】Linux 远程连接工具SecureCRT9.1、SecureFX9.1的安装
  • VScode连接远程Linux服务器环境配置
  • postgresql根据主键ID字段分批删除表数据
  • Python自动化运维:一键掌控服务器的高效之道
  • 【QT】-explicit关键字
  • 如何将使用unsloth微调的模型部署到ollama?
  • 通过聚合和分离进行音频深度伪造检测的领域泛化
  • Android Studio:视图绑定的岁月变迁(2/100)
  • 在Linux系统上安装.NET
  • 【江西省乡镇界】面图层shp格式乡镇名称和编码wgs84无偏移arcgis数据内容测评
  • AI评估困境:标准化与实际应用的鸿沟
  • MySQL Redo Log 两阶段提交
  • 01 使用 海康SDK 对车辆监控设备进行布防
  • 安卓入门三十五 事件分发机制详解
  • Visual Studio 2022 GitHub Copilot聊天使用
  • 软件测试入门—软件缺陷 Bug 详解
  • 如何将IP地址修改为海外IP:详细操作指南
  • linux网络 | TCP报头之六个标记位与部分可靠性策略
  • 【无标题】mysql python 连接