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

Posted 软件测试小dao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入探究数据测试之一:数据测试概论相关的知识,希望对你有一定的参考价值。

前两天在阿里技术嘉年华上分享了一个有关《报表类型的数据测试》的话题,发现很多人的遇到了我之前测试时候遇到的问题,我相信我们之前走过的弯路,以及最后的解决方案和经验,就可以帮助大家构建出更好的数据测试用例。

所以我决定写一系列关于数据测试的文章,帮助大家避免我们曾经遇到过的问题,建立起强壮的自动化测试用例。

这系列文章不是:

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、性能等地方的时候,那么你就需要数据测试了。

不知道你有没有找到自己工作中的数据被测对象呢?

(未完待续)

最后:【可能给予你一定的帮助】

在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,
这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你
!
关注我的微信公众号【软件测试小dao】免费获取~

我的学习交流群:644956177 群里有技术大牛一起交流分享~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

以上是关于深入探究数据测试之一:数据测试概论的主要内容,如果未能解决你的问题,请参考以下文章

Mysql索引:图文并茂,深入探究索引的原理和使用

深入探究文件I/O

深入探究 JVM | 探秘 Metaspace

测试复习大纲

java深入虚拟机

深入探究 JVM | 探秘 Metaspace