1、调试和测试的区别
(1)执行阶段:
调试:一般在开发完成之后或者边开发边调试(有代码才能调试)。
测试:在开发前就已经介入,测试在软件需求阶段就已经开始,会伴随着软件的整个生命周期,有产品的地方就一定有测试。
(2)目的:
调试:发现问题,解决问题。
测试:发现问题,提供解决方案。
(3)人员区别:
调试:开发进行调试。
测试:开发+测试执行,通常情况下黑河测试由测试工程师完成,部分白盒测试和系统测试由开发完成。
(4)手段区别:
调试:断点调试、分析代码逻辑等。
测试:等价类划分、边界值、判定表、语句覆盖、条件覆盖、语句条件覆盖等。
2、为什么要进行测试
软件测试就是找 bug 、发现缺陷,即验证软件产品特性是否满足用户的需求。软件测试只是一个样本试验,具有不可穷尽性。
PS:可参考:http://t.csdn.cn/ZpS1U
3、优秀的测试人员应具备的素质
软实力相关:良好清晰的沟通能力、文字表达能力、思维模式(逆向思维(不走寻常路)、发散性思维(探索多种答案)、批判性思维)、责任担当、抗压能力等。
技术相关:编码能力、设计测试用例能力、快速学习的能力(业务学习)、掌握自动化测试技术、有扎实的基础知识(如操作系统、计算机网络、数据库等)等。
4、软件测试和软件开发的区别
(1)工作内容:
开发:通过各种编程语言等专业技能开发软件(投入到市场给用户使用),开发人员改 bug 。
测试:设计测试用例,编写自动化测试工具。
(2)技术要求:
开发:技术深度要求,要写出高效的代码。
测试:技术广度要求,编码能力、业务能力、设计和架构分析能力,测试手段和工具的使用,用户模型分析和理解等。
(3)薪资:大厂基本差不多,中小厂研发较高。
(4)发展前景:
(5)工作环境:基本差不多。