惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
酷 壳 – CoolShell
酷 壳 – CoolShell
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
Security @ Cisco Blogs
小众软件
小众软件
D
Docker
博客园_首页
A
About on SuperTechFans
P
Privacy International News Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
A
Arctic Wolf
Spread Privacy
Spread Privacy
有赞技术团队
有赞技术团队
T
Tailwind CSS Blog
Latest news
Latest news
WordPress大学
WordPress大学
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
T
The Exploit Database - CXSecurity.com
C
Cybersecurity and Infrastructure Security Agency CISA
大猫的无限游戏
大猫的无限游戏
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
K
Kaspersky official blog
V2EX - 技术
V2EX - 技术
SecWiki News
SecWiki News
U
Unit 42
GbyAI
GbyAI
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
LINUX DO - 热门话题
S
Security Affairs
Y
Y Combinator Blog
aimingoo的专栏
aimingoo的专栏
Blog — PlanetScale
Blog — PlanetScale
MongoDB | Blog
MongoDB | Blog
博客园 - 【当耐特】
The GitHub Blog
The GitHub Blog
T
Tenable Blog
W
WeLiveSecurity
Cloudbric
Cloudbric
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
G
Google Developers Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
N
Netflix TechBlog - Medium
F
Full Disclosure
N
News and Events Feed by Topic
D
DataBreaches.Net
P
Proofpoint News Feed
B
Blog RSS Feed
B
Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org

博客园 - Kiki

美国发音规则 《组织行为学》词汇表 软件测试工程师的招聘体会(一) 软件测试工程师的招聘体会(二)谈谈毕业生如何面试软件工程师 Amazon EC2之初体验(一) Amazon EC2之初体验(二) Rational工具 一个尚未发现bug的小程序 我的测试人才培养之道 测试工程师的十二宗最 英文Windows无法打开中文名CHM文件的解决方法 HTML-based模式和URL-based模式的区别 (翻译)程序员的程序不工作时他们最常说的20个回复 (翻译)功能测试解决方案的评估报告 (翻译)图形用户界面 (转贴※整理)翻译的心得 (翻译)如何编写更佳的bug report (翻译)加入俱乐部吧 我对PMP考试的一些体会
如何做报表测试
Kiki · 2007-09-28 · via 博客园 - Kiki

如何做报表测试

报表测试根据项目的定义有大有小,有时只是作为软件的一个部分进行测试,有时整个项目都是测试各种报表.但不论如何,报表的作用始终都是将系统中已经存在的数据根据用户的设置计算加工/整理汇总/最终以清晰的格式展示给用户,以便用户进一步做数据分析或统计.

软件中的报表实现一般分为定义报表的所需数据(一般可以通过选择或手工输入条件来缩小数据范围)和定义报表格式两个部分.报表格式除了如国家各行业标准中规定的报表使用固定格式外,大多是根据企业或用户的需要定制报表.

所以,做报表测试时要注意以下方面:

1.         数据的正确

用户使用报表就是期望通过一个简单方便的平台能快速的查找到他所需要的数据.所以在测试报表时首先就要检查报表中的数据是不是用户需要的数据,如果没有加工的数据,是否保持了原貌;加工过的数据查看加工的结构是否和手工加工的结果一致.简言之,需要测试以下内容.

测试项目

测试要点

数据的来源

来源于哪张表,哪个字段,

数据库中的数值与界面数据的对应.如数据库中性别的数据可能是0或1,但界面显示为男或女,这个对应关系是否正确.

数据的范围

是否只显示了报表设置的对应范围

特别要注意边界数据,要清楚报表的需求,是否需要过滤掉被选择的数据.如时间选择为2006-9-27~2007-9-27,那么是否应该包含9-27这天.

数据的对应关系

数据库中的字段是否与报表中的信息对应

数据的格式

小数位,千位符,四舍五入等是否与报表设置一致

单位或税率转换是否正确

组合显示的数据是否合理

数据的排序

排序方式是否与报表设置一致(如果没有设置,是否有一个清晰的默认排序方式,如按字母或数字排序)

流水号

如报表有使用流水号,流水号的生成和格式是否正确.

取消操作是否会生成流水号.

明细与合计的一致性

各部分明细或小节是否与最后总和一致

其他

测试这一部分内容需要对业务逻辑相当熟悉,对数据库的设计也要非常了解.必要时可以通过自己写查询语句查看数据.

有些报表的条件有多有少,但测试方法都是一样.根据条件通过等价类划分和排列组合设置各种条件组合.千万不要盲目的测试,否则会导致该测的没测,多余的测试做了一堆..一般来说有类别划分的(一般界面表现为下拉框),每个类别都要测试到,如性别中的男,女都要测试.输入的可以用等价类来划分要测试的数据.

2.         格式的正确

数据验证正确后,就需要看看报表的输出格式是否符合要求.可以从以下几方面来检查.

测试项目

测试要点

报表的整体风格

报表是否符合规定的或用户设置的格式

报表标题

报表的标题是否是正确的报表名称

如报表中有嵌入的数据(会跟随用户的选择而变化的).需要检查数据是否正确,如XX企业9月份财务报表,这个9月就是用户选择的;或者XX公司2006-9-27~2007-9-27的网站访问量,这个时间段也是用户选择的.

公司的一些标志

如logo,名称,地址之类的是否正确

报表的页首与页尾

是否采用了一致的规则.

分页

当输出的内容多时,分页是否正确.

翻页功能是否正确

友好性

数据或图表是否清晰,一目了然,

数据的展示符合用户的习惯

需要特别提醒的数据(如合计,异常数据)是否突出显示

复杂算法处,用户不明白或容易混淆处是否有注释

一些默认的格式是否让人感觉舒服,如对齐,边界,间隔等

3.         权限的控制

对于有权限控制的系统,报表当然也应该和用户所具有的权限相一致.需要从两方面校验权限的控制.

l       报表的条件定义:在条件选择区域,有些下拉框中应该不能显示用户权限范围外的数据.如普通文员在使用报表时,报表名称下拉框中是不可以显示管理者才能查看的报表的.有些以输入的文本框有级别的划分时,都应该要测试输入超越权限的数据的相应.

注意这里一定要测试每个条目.

l       报表内容:报表中的内容不能显示用户本没有权限查看的数据.

4.         报表的输出

报表在电脑上生成后,并不是报表的结束.报表一般都需要打印出来他用,如开会或者提交审批之类.所以报表的打印功能也是非常重要的.测试主要分成三部分:

l       打印设置

l       打印预览

l       实际打印效果

除了打印之外,用户有可能需要导出报表做进一步的分析或用于和其他报表的比较.所以也应该提供导出报表的功能.一般可以导出为CSV,Excel,pdf,html,xml格式.看公司需要了.这里主要要检查导出的报表默认属性是否为读写,然后导出的内容是否正确,与生成的报表相一致.

5.         报表与报表之间的关系

有些报表都使用了相同的数据,只不过针对不同的需要做了不同的处理.所以报表与类似报表之间要做些测试,看看数据是否一致.

6.         报表的性能

用户在设置好条件后都希望不要等待报表太长时间,当然有时数据量大时等待时间长些也是合理的.但是在做报表的开发时或测试人员可以提出一些意思来提高报表的性能.

l       报表的条件设置区域应该设置默认值以避免用户不输入任何条件直接生成报表所造成的长时间等待.例如开始和结束时间可以默认为当前的一个月,一些输入文本框可以根据用户的身份默认一个数值.

l       生成报表时用类似进度条表现进度,避免用户盲目的等待

l       生成报表的语句尽量采用最优的查询语句,多调试几遍,查看语句的性能.

7.         报表控件的独特性

一般公司会用专门的报表控件来生成报表,例如MS的Report service, Crystal报表等.所以最好先了解一般的报表生成流程和这类报表控件的特点,这样在测试时就可以有的放矢,而不是盲目的比较.