• 0
  • 1
分享

无论是什么类型的系统,都可以从测试类型角度来考虑测试。

1.系统测试回顾

测试阶段:

1、单元测试,测试函数/方法,需要知道函数内部的逻辑设计,一般采用的是白盒测试方法。

2、集成测试,测试接口,需要知道接口的规格,一般采用的是灰盒测试方法。

3、系统测试,测试整个软件,需要知道软件的整体特性,一般采用的是黑盒测试方法。

4、验收测试,测试整个软件


软件质量模型:

1、功能性,对应功能测试

2、效率,对应性能测试

3、易用性,对应易用性测试

4、可靠性,对应可靠性测试

5、可移植性,对应兼容性测试

针对系统可以有不同的测试类型,一般可以粗分为功能测试和非功能测试。将来工作中主要接触的功能测试、性能测试、兼容性测试等。

针对传统的信息管理系统(比如淘宝中注册、登录、购物车等),直接使用黑盒测试方法即可。但是对于淘宝中智能商品推荐以及头条中智能新闻推荐,无法用黑盒方法进行充分的测试。


2.大数据测试

1.png

对于大数据系统,不能仅仅从界面角度来考虑测试,需要从大数据的处理流程上来针对每个流程环节做测试。

大数据测试从测试类型角度可以重点考虑:

1、功能测试

2、性能测试

3、可靠性测试


功能测试

1、业务测试,从界面站在用户角度来进行测试(黑盒)。比如今日头条中智能推荐,从用户角度,每次刷新得到的新闻和以前的不能重复。只要可以被推荐的新闻没有展示完,再次刷新都可以获得推荐的新闻。

2、数据采集测试,针对不同数据源的数据进行采集的代码是否正确。重点检查数据类型、数据取值范围。(灰盒)

3、ETL测试,测试数据的处理。重点检查数据的完整性、正确性。(灰盒)

4、MapReduce测试,开发人员用java实现了MapReduce的处理逻辑,测试人员可以使用hive查询出结果和开发人员的代码得到的结果做比较。(灰盒)

5、算法测试,检查数据分析的算法是否正确。(灰盒/白盒)


ETL测试

需要通过QuerySurge工具来了解etl测试思路,了解大数据测试到底在测试啥。


3.Querysurge基本使用

1、开始菜单中运行Launch QuerySurge

2.png

2、输入admin/admin登录。

3.png


一共有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.png


4、用navicat访问mysql数据库,查看Zcity数据库数据和数据仓库数据。

5.png

6.png

User name和password相同。

7.png

7.png

Dw库中的数据是经过etl处理后载入数据仓库的数据。Etl的处理靠代码或者sql语句来实现,需要进行测试,检查数据仓库中的数据和源数据是否一致。


5、在design menu中操作design library

8.png

分别将Zcity中的数据和Xmart中的数据与DW数据仓库中的数据进行比较。

9.png

每个红框对应一个测试。

1.png

分别针对Zcity数据库和DW数据库编写sql脚本,将两个脚本运行得到的结果做比较。比较内容如下:

2.png

检查两边数据的数据类型、计数、取值是否一致。

设计测试时可以运行查看结果。

3.png

4.png


6、创建测试集(Test Suites)将需要执行的测试打包在一起。

5.png


7、针对测试集设定执行计划

6.png


8、执行执行计划后得到报告

注:etl会从收货地址或者付款地址抽取city信息出来。


版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 摘要:         有些人认为探索性测试是一项低成本思维的任务,测试人员只是浏览应用程序,看看会出现什么。然而我们不应该忽视这样做,因为有时它确实揭示了一些有趣的错误,但是测试人员在探索应用程序时可以遵循一些技术和模式。让我们来看一个在探索性测试中使用的两步过程。        我认为软件工程中最被低估的测试类型是探索性测试。有些人认为这是一个不费力的任务,测试人员只是浏览应用程序,看看会出现什么。  ...
            0 0 1018
            分享
          •   一、认识web自动化测试  1.什么是自动化测试?  自动化测试的概念:软件自动化测试就是通过测试工具或者其他手段,按照测试人员的预定计划对软件产品进行自动化测试,他是软件测试的一个重要组成部分,能够完成许多手工测试无法完成或者难以实现的测试工作,正确合理的实施自动化测试,能够快速,全面的对软件进行测试,从而提高软件质量,节省经费,缩短软件的发布周期。  2.为什么进行自动化测试?  自动化测试的好处:  1)缩短测试周期  计算机行业更新迭代快速,大量频繁的回归测试消耗时间,自动化测试能够将重复的实行交给计算机去做,加快测试速度。  2)避免人为出错测试人员不可能持续高度集中,并且人类易...
            0 0 937
            分享
          • 引言“性能”一词对大部分来说并不陌生,在日常生活或工作中我们经常会听到关于性能的描述:“这台电脑的性能也太差了吧,打开个软件都能卡半天!”“新发布的小米11pro性能好强大啊!”“这款处理器的性能真强劲,完全吊打……”“打开个网页也要加载半天,这个网站的服务器性能也太差了吧……”“看看我的新车,百米加速xxx秒,性能强的一批!”虽说如此,但是你真的了解“性能”吗?你知道性能背后深层的意思吗?以软件测试中的服务器性能场景为例:A:这个网站的服务器性能太差啦!B:差在哪里?A:加载网页的速度太慢了!B:确定是服务器性能差?而不是你的网络不行?不是你的电脑不行?不是你打开的方式不对???打破砂锅问到...
            0 0 3150
            分享
          • 1、问:你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决?首先,将问题提交到缺陷管理库里面进行备案。然后,要获取判断的依据和标准:根据需求说明书、产品说明、设计文档等,确认实际结果是否与计划有不一致的地方,提供缺陷是否确认的直接依据;如果没有文档依据,可以根据类似软件的一般特性来说明是否存在不一致的地方,来确认是否是缺陷;根据用户的一般使用习惯,来确认是否是缺陷;与设计人员、开发人员和客户代表等相关人员探讨,确认是否是缺陷;合理的论述,向测试经理说明自己的判断的理由,注意客观、严谨,不参杂个人情绪。等待测试经理做出最终决定,如果仍然存在争议,可以通过公司政策所提供的...
            4 5 3057
            分享
          • 登录1)空白用户名和密码均为空/用户名填写,密码为空/用户名为空,密码填写;2)错误校验输入错误的用户名和密码/用户名错误密码正确/用户名正确密码错误;3)大小写区分(如:用户名和密码都为小写时)用户名和密码均大写/用户名大写,密码小写/用户名小写,密码大写;4)存在空格合法的用户名或密码前插入空格/合法的用户名或密码中间插入空格/合法的用户名或密码后插入空格;5)已注销的用户名登录;6)已禁止/锁住的用户名登录;7)长短校验在给定的用户名和密码规则下,超出或少于指定的长度登录(测试临界值);8)非法字符校验(如@#¥%等字符);9)多次错误登录,是否锁住用户名或者密码在连续输错3次或者5次的...
            0 1 2341
            分享
      • 51testing软件测试圈微信