【测试】——软件测试科普篇
本文将带你初步了解软件测试的基础知识。我们将探讨软件测试的定义、测试与开发的区别、调试与测试的区别,以及常见的面试问题和测试人员应具备的素质。
📖 前言:本文将带你初步了解软件测试的基础知识。我们将探讨软件测试的定义、测试与开发的区别、调试与测试的区别,以及常见的面试问题和测试人员应具备的素质。
🕒 1. 什么是软件测试
最常见的理解是:软件测试就是找BUG,发现缺陷。
软件测试就是验证软件产品特性是否满足用户的需求。
软件测试特点:软件测试只是一个样本试验,具有不可穷尽性。
🕒 2. 测试和开发的区别
测试和开发的区别:
① 难易程度:开发广度小,专业度高;测试广度大,专业度低
② 工作内容:开发:通过不同的编程语言,最终做出软件(Coding);测试:写测试用例、执行、发送测试报告,编写自动化测试用例,开发相关的测试工具。
③ 发展前景:自动化测试、安全测试等领域发展前景和研发基本一致
④ 繁忙程度:敏捷模式下差距不大,产品发布前压力比较大
⑤ 技能要求:测试要求更广泛:业务能力,设计和架构分析能力,测试手段和工具使用,用户模型分析和理解,编程能力等。
测试工程师:功能测试比较多,设计测试用例,执行测试用例,涉及到的开发工作内容较少的。
测试开发工程师:测试工程师的工作内容上加了一些开发工作(开发测试用例,开发测试工具,开发出来的测试工具让测试人员用,提高测试效率)。
🕒 3. 调试和测试的区别
区别 | 调试 (Debug) | 测试 (Testing) |
---|---|---|
目的 | 发现问题并解决问题 | 发现问题 |
参与角色 | 开发人员 | 测试人员和开发人员 |
执行阶段 | 一般在编码阶段 | 贯穿整个软件开发生命周期 |
手段 | debug,分析代码逻辑 | 等价类划分法,边界值法… |
🕒 4. 常见面试题
1、走测试岗位为什么还要学习开发知识?
- 自动化测试:许多测试任务需要通过编写代码实现自动化,从而节省时间并提高效率。
- 更好地理解开发人员的工作:掌握开发知识有助于更好地理解系统架构与代码结构,识别潜在的边界情况和问题区域,从而设计更有效的测试用例。
- 调试和定位问题:有开发知识的测试人员能够更精确地定位问题,并给开发人员提供更有效的反馈。
2、为什么不走开发岗位而走测试岗位呢?
- 兴趣和热情:对发现问题、优化系统、提升用户体验充满热情。善于从用户的角度去思考,确保产品在功能性、稳定性和安全性方面达到高标准。
- 系统化思维和细致的工作方式:测试工作需要关注细节,找出可能被忽略的错误,而这恰好是你的强项。
- 多样化的工作内容:测试工作不仅涉及手动测试、自动化测试,还可能包括性能测试、安全测试等,能够接触到更多不同领域的知识和技术。
- 职业规划:测试岗位提供了独特的视角和挑战,可以更深入地了解整个软件开发生命周期,并为将来可能的角色转型(如测试架构师)奠定基础。
3、你认为测试和测试开发的区别是什么?
共同点:都是为了保证产品的质量。
侧重点:
- 测试(QA):主要侧重于执行测试用例、手动测试、发现问题和确保产品符合质量标准。
- 测试开发(SDET):更侧重于编写测试工具、自动化脚本,参与开发整个测试框架。测试开发工程师不仅仅执行测试,还要开发相应的测试系统和工具,来提升整个测试过程的效率。
4、你认为你为什么做测试?/怎样才可以成为一个好的测试人员?
答案即测试人员应具备的素质,如下。
🕒 5. 测试人员具备的素质
综合能力:
- 表达能力:无论是测试还是开发方向,都需要具备良好的表达能力和沟通能力(情商)。
- 文字表达能力:测试人员需编写测试用例(包括测试内容和方法)、提交bug,以及在项目完成后撰写测试报告(包括项目测试中的风险、上线中及上线后的注意事项)。
- 开发能力:较强的开发能力有助于提高测试质量,并更好地协助解决问题。
- 快速学习能力:入职后需要快速学习新的知识和技能(如新的编程语言),并在工作中持续学习以掌握新知识。
- 责任感:测试作为产品质量的重要把关者,需对产品质量负责。
- 压力管理:需承受压力,并将其作为自我提升和向上攀升的动力。
优秀的测试用例设计能力:
测试用例是测试人员执行测试的重要依据。测试用例设计得越好,对应的测试质量就越有保障。
掌握自动化测试技术:
自动化测试是中大厂企业中必不可少的技术事务之一。它可以解放部分手工测试的工作量,提高效率。
探索性思维:
探索性思维指测试工程师在执行测试过程中,结合自身经验、知识和直觉,持续学习被测系统,通过系统的错误猜测和逻辑推理,整理和分析出更多有针对性的测试关注点。关键在于验证产品功能是否实现了应有的功能,而未实现不应该出现的功能。
兴趣、产品思维和技术思维
OK,以上就是本期知识点“软件测试科普篇”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~
❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)