自动化测试省时省力,一劳永逸,是否可以完全解放测试人员?是否可以替代手工测试? 下面我们就来概述一下: - 手工测试和自动化测试其实都是一条一条的执行测试用例,只不过自动化测试是由程序代替人的手工操作。
- 手工测试可能需要重复机械操作,耗时费力,劳心费神。自动化测试可以替代一部分机械性的重复的手工测试。
- 手工测试永远无法被自动化测试取代。在整个软件开发周期中,手工测试发现Bug的比例更大(大约占80%);同时自动化测试不是适合所有项目的。
- 对于一些需求不经常变化(版本不会经常变化)的项目做自动化测试不会提高效率,反而会降低效率,浪费时间。(?博主存疑)
- 自动化测试主要用于**“回归测试”**,测试已经有的功能,而非新功能。
假设开发了一个全新的软件,每隔一段时间软件版本升级一次,结合软件开发周期,如何开展手工测试和自动化测试呢?
软件首次发布 - 功能测试,由QA手工完成测试;
- 自动化测试脚本设计与开发,针对软件的现有功能,由自动化测试人员完成;
软件升级发布 - 功能测试,由QA手工完成新增特性的功能测试;
- 回归测试,由QA通过上次开发的自动化测试脚本完成;
- 自动化测试脚本维护,设计和开发针对新增功能的脚本(供下次回归测试使用);
(PS:博主认为他文中QA指的是测试人员)
测试人员和QA有什么区别? 前者是从事技术层面工作的职位,后者则是过程控制和管理层面的工作。两者是两个完全不同的职位。 软件测试人员的职责是尽可能早的找出软件缺陷确保得以修复。而质量保证人员QA主要职责是创建或者制定标准和方法提高促进软件开发能力和减少软件缺陷。测试人员的主要工作是测试,质量保证人员日常工作重要内容是检查与评审,测试工作也是测试保证人员的工作对象。 软件测试和质量是相辅相成的关系,都是为了提高软件质量而工作。
|