51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2274|回复: 1
打印 上一主题 下一主题

转帖:深入探究数据测试之一:数据测试概论

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-11-30 09:49:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
深入探究数据测试之一:数据测试概论
前两天在阿里技术嘉年华上分享了一个有关《报表类型的数据测试》的话题,发现很多人的遇到了我之前测试时候遇到的问题,我相信我们之前走过的弯路,以及最后的解决方案和经验,就可以帮助大家构建出更好的数据测试用例。
所以我决定写一系列关于数据测试的文章,帮助大家避免我们曾经遇到过的问题,建立起强壮的自动化测试用例。
这系列文章不是:
1.        我们不针对敏捷测试,不专门讲持续集成等战略上的概念,战略上讲,这些东西很重要,但是依然要落在每一个强壮和易维护的自动化测试用例上。
2.        我们不推荐框架,更多的讲思想和做法。因为我们在开始做这些工作之前,并没有在市面上找到合适的解决我们问题的框架,所以我们只能从头开始。好处是可以从很基本的方面理解我们的思想,坏处是没有现成可用的工具。不过不用担心,我们非常乐意把自己的框架开源出来,但是要整理一下。
3.        我们不讲UI的测试,因为我们的数据测试会更加专注于数据,如果你要测试UI上的数据,那么请先学习UI自动化测试框架,把这些数据获取好。
这系列文章会:
1.        用我们实际中的例子对数据测试进行系统的讲解。如果你可以从我的例子中找到平时工作的影子,那么你一定会有所收获。
2.        文章中不仅仅会涉及数据测试方面的内容,为了讲明白我为什么这么设计框架,我可能还会提及其他自动化测试方面的东西,略嫌啰嗦请海涵。
那么言归正传,什么是数据测试呢?
数据测试不是一种测试方法,而是一种针对特定的被测对象所采取的一系列方法,提高这些被测对象测试效率的方法。
我定义我们的被测对象是:一切以数据计算和变化为过程的,可以以只对数据进行对比来测试的系统。
我和你一样讨厌晦涩的定义,我以几个例子来解释:
1.        我们团队的最著名产品:量子恒道店铺统计,整体来说,因为有很多UI方面的测试,这些测试很多地方不能单靠数据来验证,所以整体来说量子店铺统计不是数据测试的被测对象;但是我们拆开来看,量子恒道的所有后台计算,都是数据测试的被测对象,因为他们从数据开始,经过计算,生成的都是数据。
2.        一个负责在网络集群之间传递消息的消息中间件,不是数据测试的被测对象。他们虽然输入是数据,输出依然是数据,也可能进行了数据的计算,但是测试重点在于网络的可用和稳定,数据测试不是我们的测试重点,所以不是。
3.        Hadoop, hive, storm等平台本身不是我们的被测试对象,但是基于这些平台写的应用,全部可以是数据测试的被测试对象。
4.        某网站的OpenAPI,可以是数据测试对象,因为用户都是从http请求请求数据,经过数据库,然后通过http响应返回相应的数据。
5.        一个MVC架构的网站,除掉V之后的部分是吗?大部分情况,是的,但是如果这个网站的M和C层组成的是一套完整的增删改查业务体系的话,我并不推荐数据测试的方法,原因见文章:《用白盒的思想黑盒的测试》
6.        某银行的数据库搬迁服务,是数据测试对象。
总之一句话,当测试人员的关注点在于数据是否正确,而不是其他流程、UI、性能等地方的时候,那么你就需要数据测试了。
不知道你有没有找到自己工作中的数据被测对象呢?
---------
这是系列文章,您可以通过地址http://colblog.net/taxonomy/term/30 访问整个系列的文章
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-11-30 23:52:41 | 只看该作者
数据测试不容易的,谢谢分享
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-15 01:04 , Processed in 0.082099 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表