报表测试

报表其实是结多个数据表进行汇总的数据集合。

  一般一个报表主要包含三个部分:

  一、常用功能、

  常用功能如查询、预览、打印之类,因为它一般是集成的基类,其他地方没错的话报表中也不会错;报表测试主要是测试数据的准确性和查询条件功能正确性。

  二、查询条件

  先不设置任何查询条件(必须设置的除外),或是按系统默认条件的查询出数据,然后依查询结果去设置查询条件再次查询,看查询条件的功能是否实现,会不会报错。

  三、数据明细。

  如果查询条件不出错,接下来重头戏就来了---验证数据的正确性

  数据是否正确首先要清楚你本次查询出来的是哪些类数据? 这些数据是由哪些模块的数据汇总的?数据的计算公式是什么(报表中的某些数据一般有些处理,如是由A+B得出C)?数据来源于哪些数据表,各表之间的关系是什么?等等,与你查询的报表相关的问题你都需要弄清楚明白,也许相关的问题挺多的,但整理一下,你会发现他们之间肯定是有关联的,把主线理清了,不难。

  验证数据正确性可以根据查询出来的数据去和相关模块中的数据去比较,但这样会有两个问题:

  第一,如果只是比较一两条就很难发现问题,

  第二、如果比较大部分又需要很多的时间和耐心。

  如果对数据库有一定基础的朋友,建议先熟悉系统的各数据表,然后数据表、报表、模块和UE(UltraEdit)四者相结合。根据报表类别和查询条件查询出的数据,在数据库中查询报表中的数据,然后把报表里的数据和数据库中查询出的数据导出,再利用UE的比较功能一比较,数据库里哪些数据和报表中不相同,一目了然,如有不相同就到模块中去查找原因。

  一张报表就是一个存储过程,而报表中的存储过程总的来说分成两部分:判断条件,实现查询。

  一个报表中条件是固定的,而每个条件要么为空,要么非空,也只有这两种情况。报表中一般有汇总方式,不管采用哪种汇总方式,查询出的字段大部分都是相同的,如下图(看不清的,单击一下图片,用visio画的,见笑了)中的报表按软件测试工程师汇总或是按软件开发工程师汇总,查询结果一般都会包含姓名,性别,年龄等。不同的查询条件和不同的汇总方式判断条件的语句是相同的,一般是为空时怎么着,不为空又怎么着。

  测试条件时我发现过一个BUG,后面的条件会覆盖前面的条件,后来经查询发现是因为条件没有被累加,如正确写法应该是@sqlwhere= @sqlwhere+需要判断的条件,而不是@sqlwhere=判断条件。

  实现查询一般都是N条SQL请句,从N个数据表中select出来或是从N个数据表中select出来后insert到一个临时表最后select,因为每种汇总方式查询出来的很多字段都是相同的,仔细想想就会知道这个select大部分的字段和来源表都是相同的。看存储过程前自己先写一条最详细的SQL语句与比较报表中某种汇总方式查询出的结果进行,看是否相同,不同找原因。相同就好办了,你直接去检查存储过程中的SQL语句,这样比在系统中按不同的汇总方式查询出来再去检查要容易一些。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值