如何对大数据软件产品进行测试?

发表于:2015-11-11 10:59

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:顾翔    来源:51Testing软件测试网原创

  前言
  本文仅考虑大数据产品的系统以及验收阶段的测试,而不考虑单元及集成阶段的测试,我认为大数据产品在单元及集成阶段的测试应该与普通产品的测试没有多大区别。
  案例
  本文以该案例作为讨论对象:小象网是专门从事儿童用品的网上超市,随着大数据的普及,小象网决定在网站内推出一个新功能:即根据某人的历史购物情况以及购买同类产品人的购物情况,对单一用户进行定向产品推荐。这个功能的实现无疑需要用到大数据的技术,但是作为一门黑盒测试工程师,我们无需了解开发人员是如何用什么技术实现的,而我们只需要考虑的问题是:对这个客户推荐的产品是否合理。比如这个用户家里有个男孩,经常在小象网上买一些男孩类的产品,而你推荐的产品而是一条裙子,这显而易见是不合适的。
  对产品刚下线时的测试:
  这个时候我们需要基于场景简单的设计一些测试用例,进行测试,比如:
  1.顾客王斌曾经为他的宝宝购买十个汽车模型玩具,其他产品从来没有购买过。现在添加一条新的汽车模型玩具产品,测试是否可以推荐给了顾客王斌;
  2.顾客李湘在大象网上曾经购买了一条连衣裙给她的宝贝女儿,而购买这条连衣裙的其他4名顾客还给他们家公主购买了芭比娃娃玩具。当顾客李湘再次登录大象网,看看我们是否给李湘推荐了芭比娃娃玩具。
  3.然后我们可以逐步增加难度,比如顾客李悦在大象网上为她公主购买衣服,玩具,幼儿食品三类产品;顾客张蕾和顾客李悦在网上购买的产品类型差不多。检查系统能否把张蕾和李悦归为一类人群,即把张蕾购买的一些产品介绍给李悦;而把李悦购买的一些产品介绍给张蕾。
  4.最后我们逐步增加用户以及产品的数量来,设计更加复杂的测试用例,在这里希望大家自己考虑。
  5.当产品的数量与客户的数量达到一定的数量级别,我们可以把系统放在正式环境下进行测试(当然需要用到云),用户数据来自于正式的用户环境,但是这时在页面上的接口不要放开,在正式环境下来进行测试,这个时候我们可能会发现一些软件缺陷。
  6.当我们通过以上5步,认为产品可以正式上线了,通过网页上打开这个功能。给用户提供一个使用该功能的反馈渠道,用户在实际使用过程中使用会遇到一写问题,通过反馈渠道反馈给我们,我们客户以及时修复。
  对升级产品进行测试:
  大数据产品往往有两种部署场景:
  1)处理出来的数据放在本地,而云端仅仅用来计算,存储log等信息;
  2)所有处理都在云端进行处理,处理出来的数据也放在云端
  首先让我们来看看情形1)如何来进行测试和版本更新。
  步骤一,这种情况我们首先在云端部署一套新的系统,然后把输入数据源同时引入新的系统与老的系统。运行一段时间后比较新旧两套系统的差异,新系统应该优于老系统;若更仔细些我们可以比对新老数据库中的数据情况。
  步骤二,如果我们测试步骤一的场景没有问题,我们仍旧把新系统的数据放入云端,先把20%的输入信息流引入到新系统中,80%的数据引入到老系统;没有问题再逐步把40%的新数据引入到新系统中(注意引入之前要把测试20%数据引入到新系统时候的80%引入到老系统中的数据先引入到新系统中);测试没有问题再逐步增加到60%,80%,一直逐步增加到100%的数据引入到新系统,在此过程中如果发现问题及时修复。
  步骤三,如果100%的信息在新系统中运行没有问题。我们把云端数据迁移到本地。停止老系统,启动新系统(在迁移前,注意对老系统进行备份,一旦迁移出问题可以立即回复回来)
  对于情形2)与情形1)基本上类似,并且没有步骤三。在情形2)步骤一,我们处理可以检查新旧产品在功能上的差异以外,还可以检测性能上的差异。
版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像。51testing软件测试网欢迎与业内同行进行有益的合作和交流,如果有任何有关内容方面的合作事宜,请联系我们。
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • lwenyx
    2015-12-29 15:50:14

    学习!赞!

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号