• 11
  • 12
分享

  五一假期刚刚结束,大家都度过了疫情以来难得的休闲假期,但因大风天气频发,部分高铁线路出现线路悬挂异物,导致部分火车晚点运行,进而引起北京西站出现了大量旅客滞留的情况,引发了大家的关注。对于火车晚点,大家都能理解,但对于北京西站的处理方式和应急做法,民众就不见得理解了,大风刮飞地膜的事件不容易出,但相应的应急措施也需要预先想好。通过这个事件,联想起我们软件测试行业,哪些过程和活动是咱们需要提前想好应急措施的呢。

  那么就跟着我来一起梳理梳理,那些可以提前想到的“地膜”事件,以及我们能够想到的应急措施,防止出现软件测试领域的“旅客滞留”现象。

  拿一个传统的瀑布模型的信息系统来说,软件系统的生命周期分为需求分析、概要设计、详细设计、编码、测试及运行维护阶段。软件的测试工作是否只在测试阶段呢,并不是。现在都提倡软件测试的提早介入,那为什么要提早介入,多早算早呢,笔者认为从需求分析开始就可以介入了。下面就从软件生命周期各个阶段开始梳理。

  (一)需求分析阶段

  这个阶段的主要工作是确定软件的功能性需求和非功能性需求,包括系统的功能、性能、安全、数据和界面展现要求,该阶段形成软件需求规格说明书。测试人员在本阶段可以针对需求文档来进行文档检查。一是需求可读性,了解业务人员想要实现一个什么功能,这个功能是否合理,现有系统是否有类似功能;二是需求完整性,检查需求中是否详细描述业务规则,业务之间是否有闭环流程,有没有遗留在流程外的功能;三是需求详尽程度,检查系统的非功能需求是否有详尽描述,是否包含了诸如性能要求、安全需求等非功能需求。这些需求不妨碍系统的功能实现,但功能的好坏直接影响系统的易用性、安全性等。通过对需求文档的完整审视,我们可以大概了解该系统的目标用户和客户需求,系统的解决方案及业务价值。而我们在需求阶段将这些潜在问题梳理清楚,能够最大限度地减少项目返工的成本,大幅提高项目的成功率。

  那么这个阶段潜在的“地膜”有哪些?又该如何应对呢?我们将其进行了如下梳理,形成《表1:需求阶段的风险事件分析及应对措施》。

1-1.jpg

表1:需求阶段的风险事件分析及应对措施

  (二)概要设计、详细设计阶段

  这个阶段,开发人员要把需求分析阶段确定的功能需求转换成需要的软件体系结构,体系结构中每个模块对应一些功能需求,明确软件由哪些模块组成,模块的层次接口和调用关系。还要确定系统的数据结构和数据库结构,该阶段形成概要设计说明书。详细设计阶段任务是将概要设计阶段的每个模块完成的功能进行具体描述,表示为精确的结构化的过程描述,对模块的控制结构,先做什么,后做什么,条件判定,重复处理等进行表示和描述,形成详细设计说明书。

  在这个阶段,测试人员一般开始进行测试计划和方案的编写,在方案编写阶段,我们需要对需求进行整体考虑,同时考虑测试时的一些特殊情况,梳理关联系统,查看必要的关注点是否已覆盖到,有以下几点需要特别注意,我们挑选部分事件进行重点阐述,详见《表2:设计阶段的风险事件及应对措施》。

1-2.jpg

表2:设计阶段的风险事件及应对措施

  (三)编码阶段

  该阶段就是需求具体实现的过程了,在这个过程中,开发人员需要按照编码规范对程序代码进行检查,我们测试人员在这个阶段,就可以使用一些工具对程序进行另一种检查了,比如我们可以利用jacoco工具,来查看程序的覆盖度情况,通过自研的接口校验工具,检查接口对反向案例有没有很好的校验。我们还可以使用自动化工具,对界面进行自动化案例的设计。在这个阶段,需要开发人员配合完成代码插桩,实现代码覆盖率的检测;配合完成报文格式的编写以及报文的获取,并实现自研接口工具的反向检测;配合完成界面要素的定制,实现自动化脚本的快速生成。总之,编码阶段,开发人员需要提前排雷,尽量避免将问题遗留到测试阶段。

  (四)测试阶段

  进入测试阶段,即进入了测试人员的主战场,在这个阶段,我们需要关注的项就太多了,功能测试,性能测试,接口测试,自动化测试,安全测试(技术安全、业务安全),外联第三方测试,兼容性测试等等。测试人员需要关注的需求包括功能需求和非功能需求,还要再次关注关联系统测试需求。针对每个类别的测试,测试人员前期已进行了梳理,形成了测试关注要点,对于这些可能的“地膜”,测试人员根据经验已经一一列出,后续也会不断更新。这里重点选取一些流程管理方面可能会出现的“地膜”事件,如未按照流程进行操作,轻则是考核失分,重则是形成合规风险事件。

  1、评审流程:

  工作量评审→方案评审→案例评审→准入。

  2、测试数据申请流程:

  按照数据的脱敏程度,分级申请。比如全部脱敏数据,只要组长级别的审批通过即可,部分脱敏的要上升一个层级,未脱敏的数据需要上升到老总级别审批,同时需要向相关安全部门报备,用完后及时清理。

  以上测试数据,均需要在项目结项后一个月内清理。

  3、环境申请及登记流程:

  有常备测试环境的一定要在项目开展过程中使用常备环境,并进行登记。

  无常备测试环境的需要在相关系统中提先进行申请。

  同时还要确保测试环境中无敏感信息留存。

  4、案例设计:

  需要充分考虑反向案例的情况,同时实现自动化测试的案例,还需要在案例中增加自动化的案例编号。

  5、测试过程管理相关:

  ① 在测试过程管理系统中建立完整的测试套件,包括冒烟测试套件,功能测试套件,业务安全测试套件。

  ② 测试缺陷需要从测试案例发起,所有的案例均需在测试准出前执行完毕。

  6、测试度量指标:测试度量

  测试案例导入及时率:测试准入通过后7日内导入;

  测试案例执行率:目标值100%;

  致命、严重级别缺陷占比,反向案例占比,平均每百测试案例缺陷发现数,测试执行通过率,测试自动化率等等。这些指标都需要关注并按要求完成。

  (五) 运行维护阶段

  项目顺利投产,进入运维阶段,测试执行工作暂时告一段落,但测试工作并没有结束,我们还需要跟踪投产情况,同时关注系统上线后的运行情况。对于新建系统,需要收集系统的运行数据,以便后续的优化项目。我们可以根据运行情况来评估回归测试的方式,也可以对后续优化性能测试策略、测试目标、测试场景等提供参考和支持。

  通过上述对软件测试过程的简要梳理,相信大家对于测试过程中如何排雷和应急有了一定的认识,软件测试是为信息系统排雷的,那谁来为软件测试的工作排雷呢,就需要我们大家积极思考,将类似的“地膜”事件一一找出,让排雷工作不含雷。



作者:金宝珠   

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

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   随着互联网技术的日益发展,测试开发工程师要达到“保障质量、提升效率”目标,提升效率更体现在方方面面。作为测试开发工程师,需要掌握基本开发技能,对代码能力也有一定的要求,这也是对项目多一道强有力的保障。  在功能测试遇到BUG时,测试开发工程师需在编译器中调试代码,一边追根溯源,一边监测代码质量。而“追根溯源”这一步最重要的依据就是系统输出日志,日志也是开发人员定位问题的第一检查场所。因此,为提升这部分工作效率,小编想通过ELK搭建一套日志收集、存储、展示的工具,来解决目前存在的日志查看效率低下、缺少可视化界面等问题。  1、什么是ELK  ELK由又Elasticsearch、Logsta...
            15 14 1667
            分享
          • 引子写在最前面:目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出不穷,但是, 能够明白自动化测试并很好落地实施的团队还不是非常多,我们接来下用通俗的方式来介绍自动化测试……首先我们从招聘岗位需求说起。看近期的职业机会,提到“软件测试工程师”,基本上都有关于自动化测试的要求。例如:了解 selenium、appium或者其他自动化测试框架;至少熟悉一门面向对象开发语言,有一定的代码功底优先;熟悉Java或者python,有一定的测试自动化经验和代码阅读能力;了解接口集成测试,会使用JMeter、Postman、SoapUI等接口测试工具。等等,上述内容不再一一列举。突然自动...
            12 12 1216
            分享
          •   众所周知,Appium是移动端界面自动化中最常用的开源框架之一,它能够支持 iOS 平台和 Android 平台上app及Web应用测试,支持Mac,Windows操作系统,并且支持多种语言,Java、Python、PHP、C#、js等,让你不受编程语言的束缚 。下面我将展示Appium框架应用测试的一个具体实例。  一、框架环境安装  环境搭建需要具备以下软件,如下表:  环境配置略微复杂些,涉及到多个软件的安装及参数配置等,可参考网上Appium搭建文文档,环境搭建不属于本篇文章的重点,不再赘述。  二、测试流程操作  1、安装APK  打开模拟器,安装好自己要测试的app包 。  2...
            1 1 1713
            分享
          • 前言这几年关于“35岁失业”的讨论甚嚣尘上,特别是进入疫情时代,身边也越来越多的人开始讨论这个话题。一方面是疫情带来的巨大变革,导致部分行业特别是互联网大规模的裁员潮;另一方面,舆论里占据重要部分的也大多是互联网相关从业者;摸鱼、躺平等词语越来越成为了高频的社交讨论内容。今年步入30岁的年纪,对“35岁失业”有了不一样的感受。正好前天和一个原来的同事聊到了成长的瓶颈,以及寻求可能性的话题。这篇文章,聊聊我对“35岁失业”背后的原因分析,及个人的一些观点,包括我是如何应对“职业危机”的。如何理解35岁失业?网络上热议的“35岁失业”,最初应该是某互联网大厂的一个爆料引起的,然后近几年的互联网裁员...
            12 12 1932
            分享
          • 前身为 Twitter 的平台 X 正在推出音频和视频通话功能。该平台上的一些用户在打开应用时收到了一条通知,上面写着:"音频和视频通话来了!"在该应用的设置中,还有一个新的"启用音频和视频通话"切换选项,上面写着你可以"打开该功能,然后选择你愿意使用它的人"。其中包括仅允许与通讯录中的人、你关注的人、经过验证的用户或三者进行音频和视频通话的选项。然后,你可以打开与其他用户的 DM,选择屏幕右上角的电话图标,再选择音频或视频通话,就可以拨打电话了。X 的设置现在包括音频和视频通话选项虽然 X 还没有正式宣布推出,但该公司似乎在它开始出...
            0 0 769
            分享
      • 51testing软件测试圈微信