什么是软件测试
概念:检验软件功能是否满足用户需求
- 软件测试的基本操作就是找bug,可以理解为在规定条件下对程序进行操作,以发现程序的错误,衡量软件质量,并对其是否满足设计要求进行评估的过程。
软件测试和研发的区别
研发 | 测试 | |
---|---|---|
难易程度 | 广度小,专业度高 | 广度大,专业度低 |
目的 | 从无到有,从0到1 | 把1变为更好的1 |
参与角色 | 开发人员 | 主要是测试和开发人员,黑盒测试由测试人员,单元/集成测试由开发人员完成 |
执行阶段 | 开发阶段 | 贯穿整个软件开发周期 |
技能要求 | 编码能力 | 业务能力,设计和构架分析能力,测试手段和工具的使用,用户模型分析和理解,编程能力 |
工作环境:基本类似.
发展前景:自动化测试、安全测试等领域发展前景和研发基本一致.
测试与调试的区别
测试 | 调试 | |
---|---|---|
目的不同 | 发现程序的缺陷 | 定位并且解决程序中的问题 |
参与角色 | 主要是测试和开发人员,黑盒测试由测试人员,单元/集成测试由开发人员完成 | 开发人员 |
执行阶段 | 贯穿整个软件开发的生命周期 | 开发阶段 |
为什么要选择软件测试
1.测试和研发是两个关注点不同的工作,开发的目标是实现功能,测试的目标是确定功能是否能够正常运作。我选择测试主要是因为这个过程可以 “发现” 和 “分析”,锻炼我的思维能力,要有逆向思维:开发盖房子,测试拆房子。比如:手机中有两条通话记录,进行删除。删除为0后,继续删除。还要有发散性思维:要探求多项答案。比如:测试一台自动售票机。正向,逆向,边界,压力,性能,耗电量,断电,外观,没零钱…等等都要进行考虑。
2.人们常说兴趣是最好的老师,编程像是一把通往未知世界的钥匙,在学习编程的过程中,编译出错总要通过调试的方式去发现问题,我此后就对测试有了浓厚的兴趣,发现问题,并解决,使其更加的完善。
3. 就性格方面我认为我比较适合软件测试,具有好奇心,并且敏感,善于怀疑,同时考虑问题比较全面,这在测试过程中也必不可少。而且测试可以增强我的成就感,把1变为更完善更强壮的1,能够使我更有动力。
4. 在大学的学习生活中,我不仅仅有快速学习的能力,并且积极参加组织社团,沟通能力也较强,而且通过编程的学习,有一定的文字能力和开发能力。
5. 测试往往是产品的最后一个检验者,所以测试人员要有强烈的责任感,这是必备素质之一。