测试经验分享:报表测试
什么是报表测试?
最近开始在做报表测试,故名思义,就是指测试报表,报表主要是给一些特定的群体展示一些特定数据或是汇总数据,则报表测试主要是跟一堆数据打交道,检验和确认报表展示出来的数据是否正确,取值是否有误。
1、测试前的准备工作
报表测试之前需要准备大量的数据,针对各种业务场景的数据,数据准备一定要全面。
以前王豆豆没有过多地接触过报表测试,想着觉得很难,很麻烦,等到真正开始做的时候,也没有想象中的那么难,要做好报表测试,需要将前面几步做好:
第一步,弄清楚业务,对于每一张报表,它反映地是什么内容;报表的含义,谁来使用这张报表,关注这张报表,关注点是什么,将这些点一一理清楚
第二步,仔细分析报表中每一个字段来源于哪张表或是哪些表(这张报表涉及到的表),又是如何将该字段值计算出来的
第三步,生成报表中数据的条件,一般来说报表中很多字段的值都是由不同的条件得出来,理清楚这些条件,在测试过程中需要全覆盖这些条件
举一个简单的例子,有一张报表需要反映用户最受欢迎的外卖商家,分析其中外卖平台这个条件需要包括系统中存在的所有外卖平台,那么在测试过程中准备的数据中,外卖平台字段值==所有外卖平台
若上面三点都理清楚了,基本对这张报表需要做什么有一个清楚地认识了,对这些条件了解透彻,测试报表过程中准备各种各样的数据才能得心应手,测试报表最重要地就是准备的数据要全面,不能出现条件的遗漏。
2、测试
测试过程中需要实际去追寻数据来源和对比数据。
方法一、查看捞取数据的sql语句
测试时通过查看日志地形式找出捞取数据的sql语句,对于每一张报表,捞取数据的sql语句都是非常地长,其中可能会关联二张以上不同的表捞或将取到的数据作为中间表,根据条件来查询数据或计算等操作,捞取数据的sql语句大多都是复杂的查询语句,在测试时需要一一梳理sql语句中的条件和语句。
方法二、检查线上数据
报表上线前可以将捞取数据的sql拿到线上去执行一下,检查一下sql在线上环境能否正常执行,这也是为了避免因为某一个字段无值或有误时,会影响到sql的结果。
检查线上数据可以预防项目上线后,报表取值出现错误或报表显示不出来。
我们在测试过程不要太依赖于测试环境的数据,更应该多了解和熟悉线上环境的数据,及不同场景数据的不同表现形式。
报表测试就这么多了,整个测试过程中都是以数据为主,需要测试人员能快速准备数据,对数据敏感,快速分析出数据之间的依赖关系。
说来在本次测试过程中,学到非常多的rsql语句用法,以前自认为sql语句用得还行,通过这次报表测试下来,发现自己以前的sql语句真是小打小闹,报表测试中的sql语句更加复杂,逻辑性更强。
如果你有其他方法测试报表,欢迎留言来一起讨论。