报表的测试 主要分为如下几个方面:界面,安全性,准确性,展现速度(性能)html
数据统计方面程序员
一、报表统计数据的正确性;算法
二、报表统计数据的完整性;数据库
三、报表统计数据的合法性;好比,统计金额字段需求要求有“$”等;编程
报表格式安全
一、表头字段表示的正确性;性能
二、表头字段表示的完整性;单元测试
三、表头字段表示的字体,字号,美观程度;测试
四、各统计字段的显示是否知足需求;好比:数据过长时要求折行仍是缩小;字体
五、页眉和页角的表示;
报表的预览和印刷
一、预览中的显示完整性;
二、多页状况下,第2页的表头显示;
三、可否实现需求要求的特定印刷状况;(好比,印刷使用指定的模板)
四、预览后印刷;
五、不预览,直接印刷
六、需求规定各种打印机的测试;
数据准确性测试,带有报表测试 的系统分为两类,一类是业务系统中,带有统计分析功能模块,该模块中包含分析报表,这个系统的主体是业务系统,报表是为**业务的而提供帮助的。
好比说,应年检统计报表,某月应交罚款车辆统计报表,这样的报表数据准确与否,可经过增长、删减、修改相关业务或相关业务的参数,查看统计报表数据变化,检查数据准确性。
另外一类是系统只有统计功能,就是我说的数据仓库展示这类,它与业务系统分离,而且通过多层处理,好比数据仓库的数据,通过抽取,清洗,展示前会通过数据 挖掘,数据再处理,有些字段在原始数据表中根本就没有。这样的数据准确性测试比较复杂,固然检查出数据错误,修改定位也是很不容易的。
从整个项目节约成本看,逐层测试效果是最好的。彻底修改率也是最高的。
首先创建测试数据模型,模拟全部应用表,创建简单易跟踪的数据用例,底层的数据表测试,方法很原始,嘿嘿,经过SQL 语句和手工计算,对数据进行比对。对系统中的报表数据准确性测试方法较为灵活,
① 系统中报表重叠的进行比对
② 对子报表汇总与父报表比对,就是对月报表汇总与年报表比对,日报表汇总与月报表比对,这只是一个方面,能够从维度关系考虑,地域,行政级别、时间,我的等方面下手,进行汇总比对
③ 这个方法若是延伸点呢,能够将报表间的业务逻辑关系做为比对依据。呵呵,这要看测试人员的需求了解深度我的能力了。插几句不想干的话,作测试工做 总 让我保持快乐状态,前两天个人一个同事说,公司里一直没有人喜欢作测试工做,这个工做太枯燥。嘿嘿,我当时就说我作了这么多年的测试工做历来没有感受到枯 燥。重复性工做不表明枯燥,编程其实不也是重复嘛,人天天谁不重复昨天的事啊,吃饭,吃这个动做重复一辈子,有谁以为麻烦枯燥啦?
④ 使用SQL和手工计算进行比对。以上是差错方式,接下来说一下查什么错?哪些地方容易出错
● 原始表使用错误:由于表比较多,又加上没有统一的数据关系对应表,很容易表使用错误,固然这应该是单元测试 检查出来的错误。
● 数据处理逻辑错误:这一点容易由于测试人员和开发人员对需求理解有误差形成争执,因此在需求评审时,对数据处理规则用表达式或伪代码表示清楚。还有就是程序员失误,逻辑编写有误差,边界值、特殊状况处理不当。
● 数据权限:不一样用户对数据有着不一样的查看权限。这关系到数据的安全性。
● 数据偏差:数据的保留位数,数据是不是处理计算是不是最后一次计算使用了位数保留和四舍五入。
● 因为字典表,数据错误,而形成的数据错误,如,根据性别统计,购买量,表中的男女颠倒,或者没有考虑性别缺失项,用了if else,这样就是把表中缺失该项内容的算成了else条件里。或者逻辑中应该考虑用户状态,数据状态相似的字段,容易被忽略,测试应该考虑到。
● 最后一项,当数据量至关大的时候,统计应该考虑,切割速度,也就是数据的完整性,因为数据切割的滞后,带来的数据不完整,而形成统计结果不完整。如统计昨 天的销售状况,而昨天的数据并无彻底从业务系统数据到数据池,再者月底数据,因为最后一天的数据切割不完整而形成的正月统计数量不许确。
报表的界面和输入输出测试
界面分为输入界面和输出界面;统一的界面要求:美观、统1、易操做。
输入界面要求是:
① 输入项字段长度不容许超过字段长度;
② 输入不符合字段要求的,不容许查询。如money类型,在输入汉字,字母、特殊字符等不容许查询,并有友好的操做提示。
③ 用户 权限范围外的输入,不容许查询。如用户输入不是其权限范围内的客户号,不容许查询,并有友好的操做提示。
对于选项,应不出现可选择的用户权限之外的选项。
对于汉字模糊查询,考虑不常见字,如“�”即汉字因译码问题,形成的汉字存储出现乱码问题。
输出界面要求:
① 由于是报表因此应该有打印、打印预览、报表导出等功能。不能由于报表导出丢失数据,不能由于打印缺乏了报表表格框
② 报表排列方式可调,用户可按任意列升序或降序排列,或者,按某一关键列的必定规则排序
③ 报表标题明确,不能含糊误导用户
④ 报表内可关联查询的项,应能特殊显示,如鼠标有箭头变为手掌,子报表格式与父报表格式统一,数据统一。
报表测试根据项目的定义有大有小,有时只是做为软件的一个部分进行测试,有时整个项目都是测试各类报表.但不论如何,报表的做用始终都是将系统中已经存在的数据根据用户的设置计算加工/整理汇总/最终以清晰的格式展现给用户,以便用户进一步作数据分析或统计.
软件中的报表实现通常分为定义报表的所需数据(通常能够经过选择或手工输入条件来缩小数据范围)和定义报表格式两个部分.报表格式除了如国家各行业标准中规定的报表使用固定格式外,大可能是根据企业或用户的须要定制报表.
因此,作报表测试时要注意如下方面:
1.数据的正确
用户使用报表就是指望经过一个简单方便的平台能快速的查找到他所须要的数据.因此在测试报表时首先就要检查报表中的数据是否是用户须要的数据,若是没有加工的数据,是否保持了原貌; 加工过的数据查看加工的结构是否和手工加工的结果一致.简言之,须要测试如下内容.
数据的来源:来源于哪张表,哪一个字段,数据库中的数值与界面数据的对应.如数据库中性别的数据多是0或1,但界面显示为男或女,这个对应关系是否正确.
数据的范围:是否只显示了报表设置的对应范围;特别要注意边界数据,要清楚报表的需求,是否须要过滤掉被选择的数据.如时间选择为2006-9-27~2007-9-27,那么是否应该包含9-27这天.
数据的对应关系:数据库中的字段是否与报表中的信息对应
数据的格式:小数位,千位符,四舍五入等是否与报表设置一致;单位或税率转换是否正确;组合显示的数据是否合理
数据的排序:排序方式是否与报表设置一致(若是没有设置,是否有一个清晰的默认排序方式,如按字母或数字排序)
流水号:如报表有使用流水号,流水号的生成和格式是否正确.取消操做是否会生成流水号.
明细与合计的一致性:各部分明细或小节是否与最后总和一致
其余
测试这一部份内容须要对业务逻辑至关熟悉,对数据库的设计也要很是了解.必要时能够经过本身写查询语句查看数据.
有些报表的条件有多有少,但测试方法都是同样.根据条件经过等价类划分和排列组合设置各类条件组合.千万不要盲目的测试,不然会致使该测的没 测,多余的测试作了一堆..通常来讲有类别划分的(通常界面表现为下拉框),每一个类别都要测试到,如性别中的男,女都要测试.输入的能够用等价类来划分要 测试的数据.
2. 格式的正确
数据验证正确后,就须要看看报表的输出格式是否符合要求.能够从如下几方面来检查.
报表的总体风格:报表是否符合规定的或用户设置的格式
报表标题:报表的标题是不是正确的报表名称;如报表中有嵌入的数据(会跟随用户的选择而变化的).须要检查数据是否正确,如XX企业9月份财务 报表,这个9月就是用户选择的; 或者XX公司2006-9-27~2007-9-27的网站访问量,这个时间段也是用户选择的.
公司的一些标志:如logo,名称,地址之类的是否正确
报表的页首与页尾:是否采用了一致的规则.
分页:当输出的内容多时,分页是否正确.翻页功能是否正确
友好性:数据或图表是否清晰,一目了然,数据的展现符合用户的习惯;须要特别提醒的数据(如合计,异常数据)是否突出显示;复杂算法处,用户不明白或容易混淆处是否有注释;一些默认的格式是否让人感受舒服,如对齐,边界,间隔等
3. 权限的控制
对于有权限控制的系统,报表固然也应该和用户所具备的权限相一致。须要从两方面校验权限的控制。
报表的条件定义:在条件选择区域,有些下拉框中应该不能显示用户权限范围外的数据。如普通文员在使用报表时,报表名称下拉框中是不能够显示管理者才能查看的报表的。有些以输入的文本框有级别的划分时,都应该要测试输入超越权限的数据的相应。
注意这里必定要测试每一个条目。
报表内容:报表中的内容不能显示用户本没有权限查看的数据。
4.报表的输出
报表在电脑上生成后,并非报表的结束。报表通常都须要打印出来他用,如开会或者提交审批之类。因此报表的打印功能也是很是重要的。测试主要分红三部分:
● 打印设置
● 打印预览
● 实际打印效果
除了打印以外,用户有可能须要导出报表作进一步的分析或用于和其余报表的比较。因此也应该提供导出报表的功能。通常能够导出为CSV,Excel,pdf,html,xml格式。