无论是什么类型的系统,都可以从测试类型角度来考虑测试。
测试阶段:
1、单元测试,测试函数/方法,需要知道函数内部的逻辑设计,一般采用的是白盒测试方法。
2、集成测试,测试接口,需要知道接口的规格,一般采用的是灰盒测试方法。
3、系统测试,测试整个软件,需要知道软件的整体特性,一般采用的是黑盒测试方法。
4、验收测试,测试整个软件
软件质量模型:
1、功能性,对应功能测试
2、效率,对应性能测试
3、易用性,对应易用性测试
4、可靠性,对应可靠性测试
5、可移植性,对应兼容性测试
针对系统可以有不同的测试类型,一般可以粗分为功能测试和非功能测试。将来工作中主要接触的功能测试、性能测试、兼容性测试等。
针对传统的信息管理系统(比如淘宝中注册、登录、购物车等),直接使用黑盒测试方法即可。但是对于淘宝中智能商品推荐以及头条中智能新闻推荐,无法用黑盒方法进行充分的测试。
对于大数据系统,不能仅仅从界面角度来考虑测试,需要从大数据的处理流程上来针对每个流程环节做测试。
大数据测试从测试类型角度可以重点考虑:
1、功能测试
2、性能测试
3、可靠性测试
功能测试
1、业务测试,从界面站在用户角度来进行测试(黑盒)。比如今日头条中智能推荐,从用户角度,每次刷新得到的新闻和以前的不能重复。只要可以被推荐的新闻没有展示完,再次刷新都可以获得推荐的新闻。
2、数据采集测试,针对不同数据源的数据进行采集的代码是否正确。重点检查数据类型、数据取值范围。(灰盒)
3、ETL测试,测试数据的处理。重点检查数据的完整性、正确性。(灰盒)
4、MapReduce测试,开发人员用java实现了MapReduce的处理逻辑,测试人员可以使用hive查询出结果和开发人员的代码得到的结果做比较。(灰盒)
5、算法测试,检查数据分析的算法是否正确。(灰盒/白盒)
ETL测试
需要通过QuerySurge工具来了解etl测试思路,了解大数据测试到底在测试啥。
1、开始菜单中运行Launch QuerySurge
2、输入admin/admin登录。
一共有5个模块:
1)Design Menu,设计测试
2)Scheduling Menu,测试执行计划
3)Run Menu,实时运行测试
4)Reports,执行报告
5)Administration Menu,系统管理
结合一个案例:
有家电子产品公司叫Zcity,其主要竞争对手叫Xmart,Zcity希望把它自己的经营数据和Xmart的经营数据放在一起做分析。需要将两家公司的数据通过ETL处理后放入数据仓库中,供后续数据分析使用。Zcity的数据来自于业务系统的数据库,Xmart的数据来自于收集整理的数据文件。
数据对应有:
1)Zcity数据库数据
2)Xmart文件数据
3)数据仓库数据
3、通过查看系统管理中的View Connections来查看各个数据
4、用navicat访问mysql数据库,查看Zcity数据库数据和数据仓库数据。
User name和password相同。
Dw库中的数据是经过etl处理后载入数据仓库的数据。Etl的处理靠代码或者sql语句来实现,需要进行测试,检查数据仓库中的数据和源数据是否一致。
5、在design menu中操作design library
分别将Zcity中的数据和Xmart中的数据与DW数据仓库中的数据进行比较。
每个红框对应一个测试。
分别针对Zcity数据库和DW数据库编写sql脚本,将两个脚本运行得到的结果做比较。比较内容如下:
检查两边数据的数据类型、计数、取值是否一致。
设计测试时可以运行查看结果。
6、创建测试集(Test Suites)将需要执行的测试打包在一起。
7、针对测试集设定执行计划
8、执行执行计划后得到报告
注:etl会从收货地址或者付款地址抽取city信息出来。
版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。