UI自动化系列之环境篇

vscode中创建虚拟环境
  • ctrl shift p中搜索>creat environment
  • 注意关闭梯子,否则会报错
  • 注意在vscode中手动执行.\.venv\Scripts\activate来激活虚拟环境
    生成requirements.txt
  • 直接cmd窗口中进入虚拟环境的目录D:\githubwork\mistyrain\webui_auto\.venv\Scripts
  • 激活虚拟环境,在cmd窗口中执行activate.bat
  • 执行 python -m pip freeze > requirements.txt
通过录制来调试
  • npm install playwright
  • playwright codegen
通过debug模式来调试
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//如何确认你能get到这个元素?
//假设你代码中写:
self.page.get_by_placeholder("登录")
//可以在debug模式中输入以下,即可确认元素是否找得到
//参考 Page is_visible()方法
self.page.get_by_placeholder("登录").is_visible()

//你想等待按钮点击成功,等待新元素成功出现
//假设你代码中写
self.page.wait_for_selector("div:has-text('快捷中心')")
//那么你可以在debug模式中用下列方式调试是否成功
self.page.query_selector("div:has-text('快捷中心')").is_visible()

//看看找到的元素有多少,.locator('xpath=..')是找的父级元素
self.page.frame_locator("iframe[title=\"navigation\"]").get_by_text("事项关联", exact=True).locator('xpath=..').count()
//打印具体Html内容'<span class="apps-fo3fq0" title="事项关联">事项关联</span>'
self.page.frame_locator("iframe[title=\"navigation\"]").get_by_text("事项关联", exact=True).locator('xpath=..').nth(0).inner_html()
//获取class属性
self.page.frame_locator("iframe[title=\"navigation\"]").get_by_text("事项关联", exact=True).locator('xpath=..').nth(1).get_attribute('class')




本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!