惊呆,原来QA需要具备这么多能力

发表于:2021-5-10 09:32

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

 作者:郭朝兴    来源:51Testing软件测试网原创

  如何成为一名能够应对项目质量工作的方方面面的优秀QA,通过专业的技术能力、质量思维来保证项目的高质量实施,保证项目实施过程规范、结果正确、流程高效、生产问题及时反馈。
  本文从测试基本能力、质量保证能力、CI/CD能力,测试工具使用能力,应用系统监控能力,监本开发能力,新技术学习能力等方面阐述IT项目对QA的要求,这些能力构成了一个网络体系,各方面能力之间又可以相互影响、相互渗透、相互促进,体现在QA思维、行动方方面面。

  一、测试基本能力
  作为一名QA最重要也是最基本的能力是能够完成各种类型的测试工作,本文从测试阶段、测试方法、是否熟悉代码逻辑、其他类型测试对需要项目过程中可能需要实施的测试进行了分类。
  根据项目生命周期测试流程可以分为单元测试、集成测试、系统测试、验收测试;根据测试方法划分为功能测试性能测试安全测试、渗透测试;根据是否需要熟悉代码逻辑划分为黑盒测试白盒测试、灰盒测试;根据是否需要执行测试划分为动态测试、静态测试;其他类型测试:衰竭测试、强迫测试、可用性测试、恢复测试、兼容测试、比较测试、健全测试。
  不同的测试方法存在互相交织的关系,在项目工作中测试人员需要根据项目的实际情况和需要,采用适合于项目的测试方法对项目进行全面、完整的测试,以提升项目干系人对项目质量的信心。

  二、质量保证能力
  作为组织中一名质量人员,一名优秀的QA只掌握测试基本方法是不够的,需要具备完整的质量知识体系,才能在项目的质量工作方面做到运筹帷幄,决胜千里。这个知识体系包括2个方面,一方面是QA自身的知识体系,提升自身对项目质量保证能力,这些能力可以通过ISTQB、软件测评师等方式建立,证明自身已经具备完整的质量知识体系;另一方面是个人具有的组织级质量保证能力,使得组织级质量管理能力能够不断提升,这些能力通过ISO9001,CMMI、TMMI等方面来提升组织质量水平。QA这些能力的提升有助于保证项目流程正确、高效实施。

  三、CI/CD保证能力
  随着开发测试理念的不断进化,产品的迭代速度不断加快,产品功能点指数增长,质量要求越来越高,测试人员仅仅依靠测试来保证产品的高质量越来越难,持续集成对于提升产品的质量和效率越来重要。
  越来越多的公司依赖Jenkins或者公司定制的持续集成工具来提升CI/CD的能力,而CI/CD 流程不仅仅是开发人员的工作,测试人员、质量保证人员在CI/CD流程中同样扮演着非常重要的角色。
  在开发人员专注于研发工作的团队中,QA需要熟悉CI/CD 的整个流程,具备容器环境的搭建能力,配置漏洞扫描策略,具体良好的shell脚本能力,通过持续集成将单元测试、源代码安全扫描、安全漏洞扫描、代码覆盖率生成、接口自动化测试等流程通过流水线执行。将CI/CD 与各个工具有效整合,通过CI/CD流程来提升整个研发的效率和质量,是QA的重要使命。

  四、测试工具使用能力
  作为一名优秀的QA,必须熟悉相应的测试工具,测试工具是个人测试实施、CI/CD能力、组织质量提升的基础,因此QA必须掌握有效的质量工具,才能辅助测试工作开展、测试过程改进,从而保证质量工作的有效实施。
  测试工具包括单元测试、集成测试、功能测试、安全测试、性能测试等不同类型的工具,不通的工作阶段、不通的测试内容需要使用不通的测试工具,QA应该选择合适的测试工具来满足不同阶段的测试工作需求。

  五、新的技术学习能力
  随着对于在交付期限内完成项目的迫切需求,项目对测试人员的要求越来越高,QA不懂技术、只会测试成为开发测试角色之间的隔阂和围墙。QA需要学习DevOps、docker、k8s等新技术,DevOps可以从开发、质量保证流程中协助跨职能的团队合作,从而在更短的时间内产生出高质量的产品。通过使用docker、k8s等容器化的技术,我们可以将测试放到容器中执行,降低测试对于环境的依赖,进一步改进自动化测试,我们可以将应用部署在PaaS云上,大幅度提升应用构建的速度和效率。
  学习这些方法最终消除了角色间僵化和孤岛,让团队密切关注开发流程和持续发布,从全流程提升产品的质量和应用交付能力。

  六、应用系统监控能力
  应用监控是发现生产问题的有效手段,通过监控告警能够及时发现系统问题、数据问题、应用功能问题等各种问题,将监控告警及时反馈开发人员、运维人员处理,能够有效提升问题应对效率。
  QA对系统的业务是最熟悉的,需要具备应用系统监控配置能力,理解常见监控方法原理,根据业务实际情况,对重要的功能配置日志、http 状态,页面元素、http报文、脚本类型监控,及时发现生产问题、记录生产问题、反馈生产问题、生产问题解决后验证问题已经得到解决。

  七、脚本开发能力
  QA需要具体一定的脚本开发能力,包括测试工具开发能力、数据质量评价能力、竞品分析能力等,以辅助项目测试过程及产品质量评估,提升项目执行效率及产品决策。
  测试工具开发:根据项目、系统的特点和实际情况,开发适合的测试工具以辅助测试,提升测试效率。例如对大数据不同来源数据的ETL进行测试,验证规则、ETL过程和结果的正确性,可以开发合适的工作代替手工验证过程,提升测试效率。
  数据质量评价:数据是产品的重要的财富,数据可以辅助业务分析,对于关系型数据库mysql、oracle ,非关系型数据库mongoDB、hbase等数据库数据存储的数据,利用python、spark等工具进行数量、质量、关系、类型分析判断用户类型、层次、状态等信息,辅助产品决策。
  竞品分析:在激烈的市场环境中,竞争对手居多,竞品分析也是一项重要的工作。通过体验测试、功能对比分析等方式从功能完备性、体验是否友好、用户粘性等方面分析自我产品与竞品的优劣,扬长避短。

  八、总结
  本文从测试基础能力、质量保证体系、测试工具使用、脚本开发能力、应用监控能力、新技术学习及运用能力等方面对QA人员需要具备的能力进行了全面的分析,从不同的维度和层面分析了QA需要掌握的技能。七种能力并不是孤立存在,各种能力是相互融合和交织的,某种能力的提升也会让你在其他能力方面有更深入的理解,通过不断地思考和总结学习,作为QA才能产生更大的价值,成为开发人员质量工作的引路人,成为产品质量的守护神。



版权声明:本文出自《51测试天地》第六十一期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号