• 12
  • 12
分享
  • 浅析保持自动化测试案例活性的方法——软件测试圈
  • 曼倩诙谐 2021-04-07 09:57:10 字数 2632 阅读 1456 收藏 12

  自动化测试案例是自动化测试工作积累的最重要资产,其生成和维护往往消耗IT企业较多的人力和物力成本。当企业的自动化测试案例数量比较庞大时,长期保持案例的活性使其不失效成为各大IT企业测试团队的迫切需求。

  本文详细介绍一种保持自动化测试案例活性的方法,依托农业银行自主研发的“手自一体”的自动化测试平台--擎云平台,采取多项应对技术和措施,形成了“保鲜执行、案例打分”的管理流程,并在擎云平台上获得了最佳实践。

  一、保鲜执行

  由于批量执行自动化测试案例是一个很繁杂且机械的体力活,可以交由自动化测试平台的执行机每天在空闲的时间段根据事先定义的执行策略自动执行,实现由“自动化”执行自动化测试案例代替人工执行自动化测试案例。

  (1)为测试案例打标签

  用户在自动化测试平台上积累并建设自动化测试案例,并将其认为质量较高的案例进行入库操作。自动化测试平台提供为案例打标签的功能,用户可根据案例的重要程度将案例分别标记为生死案例、核心案例,其中生死案例是检验一个系统能否正常运行的最重要的案例。其余未进行标记的案例为普通案例。以平台内的界面案例为例,将界面案例标记为生死案例后的,可在界面案例管理视图里统一筛选查看。

1-1.png

图 1  界面案例管理

  同样,用户也可将自动化案例标记为核心案例,为案例打标签实现了按照重要程度对自动化测试案例进行分类。

  (2)定义执行策略

  在早期的自动化测试平台建设过程中,自动化测试案例总数只有数千条,自动化测试平台平台具备相对较强的执行能力,可在每天晚上9点至次日早上7点的空闲时间段内,自动运行系统内已入库的全量案例。随着平台内的自动化测试案例呈指数型增长,目前已积累数万条自动化测试案例,每日保鲜执行全量案例已经超越现有执行机的能力,此时对执行策略做了适应型的调整:

  1、每天晚上9点至次日早上7点,自动运行全量的生死案例和核心案例。

  2、每周五晚上9点至次周一早上7点,自动运行全量入库案例。

  自动化测试平台中案例的执行,分如下几种类型,且事先定义了各类执行的优先级:

1-2.png

表 1  自动化测试平台平台中的案例执行方式及优先级

  由表可见,保鲜执行只占用自动化测试平台平台执行机的空闲时间段,实现了与手工发起执行、TFS调起执行的分时复用,使执行机资源得到有效利用。

  另外,自动化测试平台的保鲜执行策略可根据平台内自动化测试案例的数量和执行机的资源数量灵活调整,保证即能在一个周期内覆盖平台内全量入库案例的执行,又能实现执行机资源利用的最大化。保鲜执行的流程图如下:

1-3.png

图 2  保鲜执行流程图

  (3)邮件提醒

  最后,自动化测试平台将案例保鲜执行的结果以邮件的方式发送给用户,邮件内容截图如下:

1-4.png

图 3  保鲜执行邮件内容截图(部分内容已做模糊处理)

  用户通过点击图中的链接即可一键跳转至测试结果查看页面,如下图,用户查看各案例的执行结果,根据结果对执行失败的案例进行原因排查,在较短的时间内,就可实现自动化测试案例的及时维护。

1-5.png

图 4  案例执行结果查看页面(部分内容已做模糊处理)

  二、案例打分

  由于自动化测试平台可以每周将全量已入库案例保鲜执行一次,所以设置每周为一个计分周期,时间范围为:每周周一0:00-周日23:59:59。考察每个计分周期内每条入库状态案例的执行情况,按如下规则进行案例打分,并评定星级:

  (1)基本规则

  所有评级范围内的案例,初始分值为0分。案例分值最低0分,最高100分。

  (2)评级周期

  自评级启动日期起,每周对所有案例执行1次核算。

  (3)核算规则

  当次核算周期内,符合自动化测试案例基本要求(接口级:至少包含1支交易;界面级:检查点数≥1且对象数≥5且组合步骤数≥1)的案例纳入核算范围,否则不纳入核算范围;当次核算周期内,纳入核算范围的案例执行成功次数≥1的,加10分,执行成功次数=0的,扣10分。

1-6.png

表 2  自动化测试平台案例打分规则

  注:表中的“交易、检查点、对象、组合步骤”等属于自动化测试平台中接口或者界面自动化测试案例组成的关键要素。

  为了鼓励用户设计高质量的自动化测试案例,自动化测试平台设计了额外的加分项。当次核算周期内,由一条自动化测试案例发现的缺陷已被开发人员接受,且与自动化测试平台完成关联的,该案例的得分额外加100分。(一条缺陷计分一次,不重复计算;此加分项可累计,且无视100分分值上限。)

  至此,每条自动化测试案例的积分规则如下:

  计算公式:案例分值=∑每周核算得分=∑(是否纳入核算范围)*(是否执行成功)+案例缺陷额外加分。

  (4)评级结果

  按照案例分值,将案例评级结果分为五个区间:0≤案例分值<20分,案例评级结果为1星;20≤案例分值<40分,案例评级结果为2星;40≤案例分值<60分,案例评级结果为3星;60≤案例分值<80分,案例评级结果为4星;案例分值≥80分,案例评级结果为5星。下图展示自评级启动日期以来,案例星级状况:

1-7.png

图 5  案例星级查看页面

  例如,一条100分五星案例代表此案例的活性极高,可以用于大规模的回归测试。通过查看每条案例的得分,用户可直观看出自己积累的自动化测试资产质量高低。通过对每条案例进行打分,自动化测试平台可以激励用户及时维护自动化测试案例。

  (5)评分动态变化

  案例的评分和星级不是固定不变的,自动化测试平台的案例打分设计理念使得这种情况时常发生,一个五星级的案例经过多次执行失败后可能会降为一星案例,反之,一个一星案例在用户持续维护较好的情况下,可以很快成为五星案例。根据每个考核周期内案例执行成功或失败的状况,动态调整案例的得分和星级的方式,可激励用户持续不断地维护其自动化测试案例。

  三、总结

  保鲜执行实现了由“自动化”地执行自动化测试案例代替人工执行自动化测试案例,节约手工发起的人力成本,且在本方案中保鲜执行与手工发起执行、流水线调起执行是分时复用,实现了平台执行机资源利用的最大化。

  对自动化测试案例打分和评级,大大调动了用户维护其自动化测试案例地积极性,使前期投入大量人力和物力成本建设的自动化案例可以反复运行,以成为组织级的优质资产。

  根据自动化测试案例在一个周期内的执行结果动态调整案例评分结果,激励用户持续维护和优化其积累的案例,不断提高自动化测试平台内自动化测试案例的活性和质量。


作者:胡莉莉 曹祯   

来源:51Testing软件测试网原创

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   前言  一个高效的团队离不开leader和组员之间,组员和组员之间的通力合作。而合作的基础便是彼此之间的商讨与协调,意见的统一,进而在达成共识的前提下行动。那么如何才能和组员达成共识呢? 和组员之间的沟通必不可少。  做好沟通前的准备  孔子说:"言未及之而言,谓之躁;言及之而不言,谓之隐;未见颜色而言,谓之瞽(gǔ)。"意思是说:话还没说到那儿,你就出来发表意见了,这叫草率;话已经说到这了,你本来应该自然而然地往下说,可你却吞吞吐吐,遮遮掩掩,这叫有话不说;不看别人的脸色,上来就说话,叫做盲目。可见沟通并不是简简单单的只是表达想说的话。做好前期准备至关重要。  沟通地...
            0 0 2795
            分享
          •   Charles抓包工具的常用场景  Charles是一款代理服务器(与Fiddler一样),通过成为电脑或者浏览器的代理,然后截取请求和请求结果分析数据的目的。  在测试过程中,经常使用该抓包工具达到一下几种目的:  获取数据分析缺陷的来源  模拟网络请求:可选择已有的网络速度,也可手动编辑网速  模拟request请求数据、模拟response响应数据  黑名单:模拟请求超时、模拟请求返回404等  环境准备工作  1、手机设置代理  连接wifi—代理—设为手动—填入charles所在电脑主机名(cmd--ipconfig)、端口号(8888)--确定  2、Charles设置端口号:...
            1 1 2280
            分享
          •   谷歌在今天召开的 I / O 2023 开发者大会上宣布,新版 Google Home 应用脱离仅限于邀请的公共预览阶段,现在正式面向所有人开放。  新版 Google Home 应用进行了彻底的重新设计,引入了全新的收藏夹选项卡、改进了相机界面、为现有设备提供更丰富的控件、添加了对数十种设备的支持。  更重要的是新版 Google Home 应用添加了对 Matter 设备的支持。IT之家注:谷歌一直是开发该标准的主要参与者,但自去年 Matter 推出以来,谷歌在增加支持方面比其他公司慢。  当前新版 Google Home 仅支持室内 Nest Cam 和初代 Nest Cam 室外...
            0 0 1078
            分享
          •   昨日晚间 36 氪报道称,暴雪与国内多家游戏厂商洽谈了“国服回归”事宜,最终选择与网易重新牵手合作。这一消息瞬间在游戏圈引发轰动,但网易和暴雪都没有回应。  据长期关注暴雪游戏的博主 @雪暴君 消息,从 12 月 20 日开始,《魔兽世界》社区已重新在“网易大神”陆续更新相关“蓝贴”内容,更新了包括 2024 年魔兽世界线路图,最新资料片地心之战等资讯。此前,社区圈子中关于网易停止代理《魔兽世界》的通知已经搜索不到。  查看发现,大部分帖子都是来自一个名叫“雷霆崖上牛头人”的用户,该用户并没有社区管理人员认证,目前尚不清楚是否为网易官方人员。  不过有趣的是,该用户昨晚也转发了网易、暴雪“...
            0 0 961
            分享
          • 摘要:         有些人认为探索性测试是一项低成本思维的任务,测试人员只是浏览应用程序,看看会出现什么。然而我们不应该忽视这样做,因为有时它确实揭示了一些有趣的错误,但是测试人员在探索应用程序时可以遵循一些技术和模式。让我们来看一个在探索性测试中使用的两步过程。        我认为软件工程中最被低估的测试类型是探索性测试。有些人认为这是一个不费力的任务,测试人员只是浏览应用程序,看看会出现什么。  ...
            0 0 1100
            分享
      • 51testing软件测试圈微信