初识-软件测试

1: 什么是软件测试

这个问题也是我们经常遇到的一个问题,可能很多人都会说:软件测试就是找BUG,发现里面有什么缺陷…

其实我们可以想一想我们生活中的测试场景有哪些?
例如:刚买一部手机,我们需要测试他的功能是否完善,买一件衣服是否合身,一场考试做完后在检查做过的题等等…

再说说什么是软件: web系统(教务系统,办公系统…),APP(QQ,微信),CSDN,小程序,公众号…这些软件的功能都是开发人员来实现的,软件测试:就是测试人员来验证软件的功能是否能够满足用户的需求,而用户就是那些使用人员(购买软件/甲方,流量用户…)

在这里插入图片描述软件测试人员不仅仅要看出软件符不符合用户的需求,并且不符合的地方要找出来,要验证软件的功能:(是否正常运行,是否能够满足用户的需求)软件测试的特点:就是软件测试只是一个样本试验,具有不可穷尽性,是没有办法进行一个完整的测试的,软件测试人员要保证主要(常用)功能和核心流程的正确性

2: 软件测试和开发的区别

1:首先就是技能和难易方面:
开发他是要求技能集中,专业度高的(深度)(就像java开发工程师,他要求掌握java语言底层的实现,各种框架(spring springboot(AOC IOC Mybatis Redis…)))
而测试他要求技能广泛,专业度低(会熟练运用一些工具就行,不需要了解底层)

接口: soupUI postman jmeter…
自动化测试: java python untittest testNG robotFramework selenium工具…
性能测试工具: loadrunner jmeter…
抓包: Charles fiddler(模拟弱网)…
APP测试: appium Macaca…

2:薪资,工作环境,压力,发展前景:

工作环境:基本类似
薪水: 中小企业总体比研发低,自动化等专业测试领域和研发基本无差距。大厂研发测试基本无差别
发展前景: 自动化测试、安全测试等领域发展前景和研发基本一致。
繁忙程度: 敏捷模式下差距不大,产品发布前压力比较大

3:软件测试和软件开发的调试有什么区别:

1:目的:
软件调试: 程序员验证软件是否实现了他想让软件实现的功能(站在自己的层面上)
软件测试: 测试人员验证软件是否实现了用户的需求(站在用户的层面上)
2:角色:
软件调试: 开发人员
软件测试: 测试人员 + 开发人员(白盒测试,代码相关)
3:阶段:
软件调试: 开发阶段
软件测试: 贯穿了整个软件的开发过程,处处都有软件测试

3: 软件测试岗位

软件测试工程师:工程师的主要工作一般包含需求分析、编写测试计划和测试方案、设计测试用例、执行测试用例、跟踪BUG、编写测试报告等;
测试开发工程师:根据项目的特点来开发一些自动化测试的脚本,或自动化测试的工具,或者是软件测试工作中用到的提高工作效率的小工具什么的,从而能够更有效地进行测试,提高软件产品的质量。测试开发工程师工作的目的就是为了更高效,更快捷地让测试工程师进行测试工作;测试开发岗位一般要求一定的开发能力,解决问题的能力尤为重要。
性能测试工程师:针对系统进行性能测试,包括使用工具和编写性能自动化测试脚本。
安全测试工程师:主要分析产品可能会出现的安全问题,做各个方面的渗透测试,提高产品的安全性
其它:系统测试工程师,嵌入式测试工程师,硬件测试工程师。

4: 目前 IT 公司的部门团队人员架构

在这里插入图片描述
一个项目团队中的测试人员组成:
1:手工测试人员
2:自动化测试用例开发人员(自动化)
3:自动化工具开发(测试提效)(2 和 3 统称为测试开发人员)

5: 一个优秀的软件测试人员应该具备的素质

我们面试的时候可能经常被问到,你为什么要选择软件测试?
1:综合能力:
有良好的沟通能力 (测试工程师的沟通能力会直接影响事务开展的效率。良好清晰的沟通能力,是一个技术优秀的测是工程师是否可以获得更好发展的“敲门砖".)
有快速学习的能力 (对不同业务需求和功能的快速学习与理解能力。 对于测试新技术和新方法的学习能力)
开发能力 (多学点java方面的知识)
文字描述能力 (编写个文档,描述出你找到的BUG在哪里)
2:掌握自动化测试技术:
掌握自动化测试技术,可以把你从大量重复性的手工劳动中解放出来,这样可以把更多的精力花在更多类型的测试上。
3:优秀的测试用例设计能力:
测试用例设计能力是指,无论对于什么类型的测试,都能够设计出高效地发现缺陷,保证产品质量的优秀测试用例。
如何提高测试用例设计的能力?
1),掌握设计测试用例的方法
2),积累,总结
3),阅读好的测试用例设计案例
4:探索性思维:
探索性思维是指,测试工程师在执行测试的过程中不断学习被测系统,结合自己的经验,知识,直觉,进行系统的错误猜测和逻辑推理,整理和分析出更多有针对性的的测试关注点。(不被条条框框束缚,发散性思维,能够结合实际想问题)
举例: 自动售票机的功能的测试:
在这里插入图片描述
5:兴趣
6:有责任感和抗压力强:
责任感是任何工作的都需要的,对于测试工作者而言:
测试往往是产品质量的最后个把关者;由于测试工作成效很难衡量,测试用例执行、bug数目的多少都无法说明产品的质量是否合格;所以,责任感是最重要的测试必备素质之一。
压力,测试工作者,特别是属于互联网行业需要能够抗住各种压力。

猜你喜欢

转载自blog.csdn.net/chenbaifan/article/details/125402096