2020年注定是不平凡的一年,疫情仍在持续,无论前浪还是后浪都不容易的一年。结合《2019测试状态报告》整理关于QA/Test的经验分享给大家,希望给你带来帮助。
什么是软件测试与软件质量保证?
QA(software quality assurance engineer)与Test是完全不同的职位。
QA强调控制与评估,测试只是质量保证的部分手段,需要对模型和流程评估,进行过程改进与质量保证,贯穿产品的整个周期,向质量总监汇报,隶属于质量管理体系;
Test是产品研发的一个过程,根据产品制定测试计划,开发用例,找出产品的缺陷,分析相应数据,提交测试报告。同时是QA的工作对象
但是国内招聘无论工作范围的是QA还是Test都叫测试工程师。
根据qablog的《测试状态报告》来看团队中只从事测试的人员比在下降,也就是说,测试工程师向质量保证工程师过渡,对于测试人员的要求更高了。
以下QA与Test工作内容统一称为测试。顺应国内形势。
测试工程师的发展路径是什么样的?
软件测试岗位相对于其他岗位更要时间来完善发展的路径,无论专业技术还是测试管理;需要不断学习,探索适合当前产品的测试方案与技术,优化测试流程,发布的产品质量直接关系公司的影响。
持之以恒的快速学习是必备技能,准备入行的同学需要考虑清楚,入行需谨慎。.
从2019的调查数据来看,团队规模1到5人占比50%,6到15人的占比24%,16到50人的占比16%,51人以上的占比14%,国内与国外一样多数团队以小规模存在,这样的团队更灵活,方便协作,结合测试岗位的职位比从侧面说明一个问题,需要承担的任务会更宽泛,从国外的抽调数据来看测试管理接近1/4的比例,更需要你多才多艺,无论技术还是管理。
行业现状如何?
从2017~2019年的测试工程师的工作年限分布对比可以看出加入测试工程师队伍的人数在减少,这是由于软件行业的影响和测试工程师入门难度逐年提高导致的;早些时间软件测试门槛较低,经常被人戏称只需要点点点的工作,任何时候手工测试只是测试工程师的一项技能,基于清晰的逻辑思维,需要不停的去梳理测试流程来挖掘产品缺陷,随着敏捷开发测试模型的逐渐普及,大量的回归测试和接口测试被自动化测试取代,更快更高效,同时节约成本,所以代码能力逐渐将成为必备选项。
成为资深测试工程师需要专业的知识储备与大量经验的积累,熟悉软件的生命周期,合理制定测试策略,引进合适的测试工具,挖掘出更多产品的质量问题,为产品质量保证。需要理论指导实践,实践中总结经验。
从抽调的数据看,只负责测试工作的测试工程师只有一半,受开发测试模型的进化和产品迭代的增速影响,这个比重还会逐年减少。
测试工程师岗位世界分布图显示亚洲仅占比5%,这个数据应该是不准确的,样本的抽调对于国内的覆盖较少,不过结合国内的实际情况来看,大多数公司的测试开发比远低于1:1,这受传统测试模型的影响,同时也受资源成本的限制。这种情况随着公司对产品质量的重视会慢慢好转,好产品会说话,高质量的好产品才是公司发展的基石。(免费领取软件测试资料加Q3140781314)
有哪些应用会被测试?未来趋势如何?
受移动设备的普及,移动端的应用增长量明显,而桌面应用比例逐年减少,同时网页测试也受到了冲击,虽然一些应用进行C转B变的更灵活。
网络安全越来越受重视,容器和网络安全类测试逐年增加。
由于云服务器的低成本及普及,企业内部系统减少明显,未来的趋势更明显。
有哪些模型会被使用?
说到测试,避免不了说测试模型。
敏捷模型逐渐成为传统模型,但是这并不能说瀑布模型可以被取代。一个产品的开发测试模型需要根据产品特点来定义,合适的才是最好的。采用敏捷先看产品的特性是否支持。
DevOps是敏捷模型的补充,延伸了敏捷的过程,使测试人员的工作范围再次扩大,直接为产品的部署和销售提供有力的弹药,未来会被更多中小企业采纳。
随着企业对成本的考虑和效率的关注,测试/脚本驱动(TDD/BDD)开发呈逐年递增的趋势,但是无法取代手工测试部分,自动化测试固然能提高测试效率,往往投入与产出不配,规划好手工测试与自动化测试的比例才能使产出最大化,成本更优。
通过模型数据可以看出,大多数团队更喜欢短平快的敏捷模型,采用敏捷模型对团队人员的要求也更高,不同于更传统的瀑布模型,在产品的参与度上敏捷要求全员参加整个环节,同时三驾马车运行,对测试管理难度提出了更高的要求。
未来对测试的要求会有什么变化?
随着产品研发的步伐加快,对工程师的要求变得更高,测试工程师的工作范围也变得更宽泛。
企业更注重自动化测试,以替代人工进行回归或者接口测试等,从而降低成本;同时从数据可以看出测试工程师的工作范围在向产品延伸,2019年的数据中32%测试工程师参与用户场景整理,这是由其特定的岗位决定的,上接产品故事和研发,下连用户思维,要求测试工程师懂产品也要懂用户。(免费领取软件测试资料加Q3140781314)
测试团队的静态产出有哪些?
关于测试文档,测试计划、测试报告、缺陷报告、实时文档一直是不可缺测试的静态产出。从2017~2019年的调查数据来看,学习文档、低级别的测试计划和详细测试脚本等文档的重视度降低,这是由于大量采取敏捷模型的快节奏致使资源的压缩造成,此类文档将逐渐被热更新文档取代。但是对于团队成员的成长并不是什么好消息。
哪些测试技术与方法会被使用?
探索性测试和基于会话的测试仍然是软件测试的主要手段,将来也不会改变;过半的被调查人员使用脚本自动化进行回归性测试,有效的提高测试效率降低成本;缺陷追踪仍然是质量保证的重要手段。
安全性测试会被更重视。
对于软件测试的挑战是什么?
更可能早的加入到软件生命周期中,越早越好。重视数据维护和测试环境,保证可追溯,不是所有的问题可以及时复现,尤其2/8原则中的2的那部分。独立的时间线,按计划完成是对质量的保证。增加关联简化流程,看似矛盾。总结和分享,一个坑不要踩两次。
网友评论