Bull's blog Bull's blog
首页
工作
  • 分类
  • 标签
  • 归档
关于

Bull

首页
工作
  • 分类
  • 标签
  • 归档
关于
  • 马上消费

  • 斗虫

  • 天眼查

  • 某米

  • 自学笔记

    • 《10年测试老兵学习区块链:用 Hardhat + Chai 写一个完整可落地的 MiniERC20 测试套件》
    • 《Playwright MCP - 自然语言编写web自动化测试》
      • 目的:
      • 演示案例
      • 自然语言脚本:
      • AI输出的测试日志:
  • 工作经历
  • 自学笔记
wangyang
2025-12-05
目录

《Playwright MCP - 自然语言编写web自动化测试》

# 使用 Trea + Playwright MCP 实现自然语言 UI 自动化测试

# 目的:

  • 使用开源的Playwright MCP 实现自然语言编写web自动化测试,极大提升自动化脚本效率

  • 在传统 UI 自动化中,我们往往需要写脚本、封装元素定位、处理异常与截图;

# 演示案例

示例图片

本次测试目标是对我的个人博客网站(https://wangmouren.online/)进行以下验证:

  1. 页面是否能正常加载
  2. 导航栏元素是否正常展示并可点击
  3. 特定文章是否存在
  4. 某目录下所有文章是否正常展示
  5. 随机抽查 10 篇文章能否正常跳转
  6. 所有步骤执行成功后截图记录
  7. 失败场景自动截图保存并记录日志

# 自然语言脚本:

前置:
请在执行每一步结束后进行截图保存。
执行成功的截图文件名以 "success" 开头。

1. 打开页面 https://wangmouren.online/,等待页面加载完成。

2. 检查当前页面是否展示元素:
   <a href="/job/" class="nav-link">工作</a>
   如果存在,点击它。

3. 等待页面加载完成,检查页面中是否存在文章标题:
   “5-1. 《10年测试老兵学习区块链:用 Hardhat + Chai 写一个完整可落地的 MiniERC20 测试套件》”。

4. 检查元素 id="基础课件" 下有多少篇文章,
   每篇文章类似:
   <a>2-1-1. python基础和条件语句</a>
   请把所有文章标题打印出来。

5. 随机检查 10 篇文章能否正常跳转并正确打开页面。

7. 如果有任何验证失败,请截图保存为 error.png,并在日志中标记失败。

8. 最后输出完整操作日志,包含每一步操作是否成功。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

# AI输出的测试日志:

# 测试执行报告

## 测试时间
2025-12-05 06:27:00

## 测试结果
**测试通过**

## 测试步骤执行情况

### 步骤1: 打开页面
- **操作**: 打开URL https://wangmouren.online/
- **结果**: 成功
- **截图**: success_step1_index.png

### 步骤2: 点击"工作"导航链接
- **操作**: 点击`a[href="/job/"].nav-link`元素
- **结果**: 成功
- **截图**: success_step2_job_page.png

### 步骤3: 检查页面是否包含指定的区块链测试文章标题
- **操作**: 获取页面可见文本,检查是否包含标题
- **结果**: 成功找到文章《10年测试老兵学习区块链:用 Hardhat + Chai 写一个完整可落地的 MiniERC20 测试套件》
- **截图**: success_step3_check_article.png

### 步骤4: 检查基础课件文章数量
- **操作**: 查找所有以"2-1-"开头的文章标题
- **结果**: 成功,共找到40篇基础课件文章
- **截图**: success_step4_base_courseware.png

### 步骤5: 随机检查10篇文章,可以正确跳转页面
- **操作**: 随机选择10篇文章,其中3篇直接访问并截图,其余7篇通过HEAD请求验证可访问性
- **结果**: 所有10篇文章都可以正确访问
- **截图**: 
  - success_step5_article1_函数.png
  - success_step5_article2_装饰器.png
  - success_step5_article3_新建一个接口.png

## 随机选择的10篇文章列表
1. 2-1-3. 函数 - https://wangmouren.online/pages/9b64fc/ ✅
2. 2-1-39. 装饰器 - https://wangmouren.online/pages/ae2766/ ✅
3. 2-1-18. 3 新建一个接口 - https://wangmouren.online/pages/b014a5/ ✅
4. 2-1-20. httprunner2.x工具快速入门 - https://wangmouren.online/pages/5c654e/ ✅
5. 2-1-11. 2 接口测试基础 - https://wangmouren.online/pages/bb68f4/ ✅
6. 2-1-26. PageObject模式 - https://wangmouren.online/pages/da14d8/ ✅
7. 2-1-33. Linux基础 - https://wangmouren.online/pages/19f963/ ✅
8. 2-1-37. 面试题-找众数 - https://wangmouren.online/pages/1191cd/ ✅
9. 2-1-14. 5 简单封装 - https://wangmouren.online/pages/845c4f/ ✅
10. 2-1-32. jdk配置 - https://wangmouren.online/pages/f23ea4/ ✅

## 基础课件文章标题列表(共40篇)
1. 2-1-1. python基础和条件语句
2. 2-1-2. 基础数据类型_改
3. 2-1-3. 函数
4. 2-1-4. 1 函数练习
5. 2-1-5. 32文件操作
6. 2-1-6. 3 异常
7. 2-1-7. 面向对象
8. 2-1-8. 1面向对象案例-学生管理系统
9. 2-1-9. 1Python基础练习题
10. 2-1-10. 自动化测试理论
11. 2-1-11. 2 接口测试基础
12. 2-1-12. 3 requests
13. 2-1-13. 4 代码
14. 2-1-14. 5 简单封装
15. 2-1-15. 1 pytest
16. 2-1-16. 签名的设计
17. 2-1-17. 接口case设计
18. 2-1-18. 3 新建一个接口
19. 2-1-19. x装饰器语法
20. 2-1-20. httprunner2.x工具快速入门
21. 2-1-21. httprunner3.x的简介
22. 2-1-22. Flask框架
23. 2-1-23. 了解任务
24. 2-1-24. mock服务
25. 2-1-25. UI自动化策略
26. 2-1-26. PageObject模式
27. 2-1-27. pytest参数化进阶
28. 2-1-28. pytest框架生成报告
29. 2-1-29. Yaml运用
30. 2-1-30. 日志类模板
31. 2-1-31. 持续集成
32. 2-1-32. jdk配置
33. 2-1-33. Linux基础
34. 2-1-34. Jenkins主从测试任务
35. 2-1-35. conda管理项目环境
36. 2-1-36. 面试题-栈结构
37. 2-1-37. 面试题-找众数
38. 2-1-38. 正交测试法
39. 2-1-39. 装饰器
40. 2-1-40. 综合面试题_原版

## 截图路径
所有截图都保存在以下目录:
`/Users/ywang/Desktop/SynologyDrive/Other/playwright_mcp_case/screenshots/`
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#web3#MCP#AI#UI自动化
《10年测试老兵学习区块链:用 Hardhat + Chai 写一个完整可落地的 MiniERC20 测试套件》

← 《10年测试老兵学习区块链:用 Hardhat + Chai 写一个完整可落地的 MiniERC20 测试套件》

最近更新
01
代码块折叠示例
02
《10年测试老兵学习区块链:用 Hardhat + Chai 写一个完整可落地的 MiniERC20 测试套件》
12-02
03
30.快速实现接口重构测试---deepdiff库使用
09-21
更多文章>
Theme by Vdoing | Copyright © 2018-2025 Evan Xu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式