《软件测试52讲》读书笔记(十三) —— 数据脚本解耦+页面对象模型

发布时间 2023-05-30 14:31:57作者: 麥女孩的小火柴

数据脚本与数据解耦

“测试脚本和数据解耦”的本质是实现了数据驱动的测试,让操作相同但是数据不同的测试可以通过同一套自动化测试脚本来实现,只是在每次测试执行时提供不同的测试输入数据

  • 数据驱动很好地解决了大量重复脚本的问题,实现了“测试脚本和数据的解耦”。
  • 数据驱动测试的数据文件中不仅可以包含测试输入数据,还可以包含测试验证结果数据,甚至可以包含测试逻辑分支的控制变量。
  • 数据驱动测试的思想不仅适用于GUI测试,还可以用于API测试、接口测试、单元测试等。

页面对象(Page Object)模型

了解页面对象模板之前,先提一下早期的GUI测试:

  • 脚本逻辑层次不够清晰,属于All-in-one的风格,既有页面元素的定位查找,又有对元素的操作。
  • 脚本的可读性差,并且很难一眼看出脚本更高层的业务测试流程。
  • 通用步骤会在大量测试脚本中重复出现,代码维护成本高

其次“页面对象模型”就是利用模块化思想,把一些通用的操作集合打包,然后GUI自动化脚本直接去调用这些操作函数来构成整个测试用例。

  • 解决了脚本可读性差的问题,脚本的逻辑层次更清晰。
  • 解决了通用步骤会在大量测试脚本中重复出现的问题,维护成本低。

总的来说:“页面对象模型”的核心理念是,以页面为单位来封装页面上的控件以及控件的部分操作。而测试用例使用页面对象来完成具体的界面操作。