数据流测试

这里的“数据流测试”,不是指的百度出来的,比较多讲到的结构性测试。

这里的“数据流测试”,指的是,通过写sql,检查数据在数据库中流转的测试。

数据流测试的好处

  1. 由表入里,知其然,知其所以然,理清逻辑,思路更清晰
  2. 通过写sql,执行sql,只关注筛选出来的数据,不用在表里面挨个挨个找,效率更高
  3. sql是可以多次复用的,节约bug回归时重复找数据的时间,排查更快
  4. 发现数据层面的bug,提高测试覆盖度

适用场景

有哪些常见功能会用到数据流测试呢?

  • 查询
    展现到界面上的数据,是如何从数据库中一层一层抽取查出来的。
    每个表格字段,对应了数据库哪张表的哪个字段。
    其中的数据转换逻辑和规则是怎样的。
    这些都是数据流测试的范畴。其实这在一些公司称为“ETL测试”。
  • 流程
    显而易见,流程必然伴随着数据的流转。
    每个流程节点,数据都有相应的变化。
  • 增删
    比较常规的测试,增加后数据存哪了,删除后改动了哪些数据,逻辑删除还是物理删除。
    一般在功能测试用例中,也有体现的。
  • 算法
    算法其实质就是对数据的运算处理。
    跟踪数据变化,能一步步复现算法步骤。

测试步骤

  1. 新建sql窗口
  2. 根据业务,找表找字段
  3. 写sql,写注释
  4. 保存sql文件

小技巧

  • 找表找字段,有条件的话,可以捞应用sql,或直接看开发源码,更快速
  • 不用把sql全部写到一个,join成一个大段sql,可以拆分成小步骤,每个步骤写段sql,手动传值,提高查询性能

产出物

做完数据流测试后,应产出一堆sql文件。

文件内容记录了查表比数的sql和注释。

注意事项

  1. 做好sql的注释,方便查看,不然一堆sql在那,看字母都要看半天。
  2. 不要一来就做数据流测试,而应先做黑盒功能测试,在功能测试过程中或之后进行数据流测试较好。因为数据流测试相对来说更费时,关注的是较底层的数据,需要理解数据含义。如果一开始就跟踪数据,看了半天,结果功能都跑不通,就因小失大了。

猜你喜欢

转载自www.cnblogs.com/df888/p/10911236.html