软件测试是做什么的,这个行业怎么样?

【软件测试是做什么的,这个行业怎么样?】
主要来说该职位日常工作主要有:需求分析 。编写测试用例 。用例评审 。执行用例 。记录bug 。与开发人员协调 。中级,高级测试工程师要求一般的技能得会接口测试 。自动化测试 。性能测试,换句话来说 。软件测试是为了让产品质量有一定的保障 。避免部分问题造成损失
其他观点:
做到最后 。感觉除了其他人说的需求 。用例 。测试 。跟踪bug外 。最终就是保证产品质量 。从流程上也要保证!
其他观点:
移动互联时代 。智能手机成为了新时代的流量入口 。数十亿用户无时无刻不在使用着各式各样的软件 。从而对软件开发行业带来了空前苛刻的用户体验要求 。
这些苛刻的用户期望 。使软件开发人员专注于将越来越小的代码增量越来越快地投入生产 。产生了更多模块化和动态的软件开发和部署方法 。越来越多的开发团队开始采用微服务和容器技术构建云原生应用程序 。软件开发逐渐从传统的瀑布开发模式过渡到敏捷开发 。再到如今的 DevOps 时代 。然而 。无论在哪个时代 。测试都被视为快速交付的瓶颈之一 。
在 GTAC 2011的一场名为《测试已死》的演讲中 。Alberto Savoia 描述了几个测试人员必须要面对的开发趋势:
首先 。所有的checking工作(包括validation和verification)都可以自动化;其次 。随着云计算出现 。部分用户可以在云上对开发版本做出测试;最后 。开发者自己做测试几乎是不可避免的趋势 。
在用传统测试方法中 。测试团队通常采用的实践是:测试管理- 规划测试工作-识别需要的测试-创建手动测试-收集现有测试-执行测试-跟踪和报告测试进度 。
因此 。传统测试需要关注的是:测试工作按计划、延后还是提前完成?
其中的缺点也是显而易见的 。首先 。手动运行所有测试是低效的、无效的 。在许多情况下不可行;其次 。这个方法也并没有服务于软件开发项目 。无法创建稳健且可维护的测试自动化框架 。更加没法实现最终的项目目标 。
而这些问题在DevOps的时代 。得到了足够的重视 。
到了DevOps时代 。“持续测试”的概念涌现 。在这个概念中 。测试应该是开发过程的一部分 。而不是在开发完成时加上“保健”任务 。
持续测试”虽好 。但建立持续测试文化需要投入人员、实践、工具和时间 。
1)持续测试的完整时间 。需要取得公司高层的支持 。制定清晰的转型战略、建立指导团队 。
2)建设内容包括:研发团队测试能力建设、工具与框架建设以及最佳实践落地 。
3)整个过程需要通过合理量化跟踪体系 。去量化持续测试建设的进展和影响 。
其中构建持续测试的关键之一自动化 。是提速降本的利器
执行过程要达到“足够得快” 。以满足整体迭代的效率 。这要求每个阶段都需要引入尽可能多的自动化工具和能力 。比如 。云平台提倡基础设施即代码(IaC)和容器领域的编排技术(以K8s为代表)都在一定程度上实现了环境的自动化部署 。
近来 。国内外也涌现了不少针对测试的自动化工具及平台 。以国内的飞算SoFlu全自动软件工程平台为例 。近期上线的全自动测试平台主要通过创建项目—创建测试用例—编辑测试场景—创建测试计划—接口测试—性能测试这6步流程来实现 。
据了解 。该平台具备三大特性:一是测试生命周期管理 。它提供测试用例管理、测试用例评审、测试计划跟踪和测试报告生成等测试生命周期管理相关功能 。二是测试数据管理 。全自动测试平台基于测试脚本与测试数据分离的思路 。方便研发测试协同、方便自动化测试中的测试数据使用 。支持 UI、接口等自动化工具中快速可重复地使用 。三是精准回归测试 。它在项目测试时 。可以自动识别所有变动的接口 。自动查找接口关联的所有测试用例 。进行精准回归测试 。
此外 。全自动测试平台随其全自动开发平台联动 。开发测试一键关联 。自动生成测试用例完成软件测试 。1 人就即可完成开发、测试整套流程 。

    推荐阅读