本文就软件测试基础理论的内容,来和大家讲解一下,软件测试需要掌握哪些知识?感兴趣的小伙伴赶紧看下去吧!
一、什么是软件测试?
为了发现软件产品中的各种缺陷,而对软件产品进行验证和确认的活动过程,此过程贯穿整个软件开发生命周期。简单的说,软件测试是以发现错误为目的而执行的一个程序或系统的过程。
二、什么是软件缺陷?
软件未达到产品说明书要求的功能;
软件出现了产品说明书指明不应该出现的错误;
软件实现了产品说明书未提及到的功能;
软件未实现产品说明书虽为明确提及但应该实现的目标;
软件难以理解,不易使用,运行缓慢,或者从测试人角度看,最终用户会认为不好。
三、软件测试的目的
验证软件需求和功能是否得到完整实现;
验证软件是否可以发布;
尽可能早的发现软件中的bug;
尽可能多的发现软件中的bug;
对软件质量进行合理评估;
预防下一个版本可能出现的问题;
发现开发过程中的问题与风险。
四、软件测试原则
所有测试的标准都是建立在用户需求之上 。
合理控制测试深度与广度,完全测试不可能,测试的投入与产出要均衡。
80-20原则,软件中80%的bug可以在分析、设计与评审阶段就能被发现与修正,16%的缺陷在系统的软件测试中发现,最后剩下的4%是用户长期使用的过程中才能暴露出来。
尽可能早的开展测试,越早发现错误,修改的代价越小。
发现错误较多的程序段,应进行更深入的测试。
软件项目一启动,软件测试也就是开始,而不是等程序写完,才开始进行测试 。
软件开发人员即程序员应当避免测试自己的程序。
严格执行测试计划,排除测试的随意性,以避免发生疏漏或者重复无效的工作。
五、软件开发流程(软件生命周期)
计划——需求分析——设计——程序编写——测试——运行/维护
六、软件测试流程
测试计划——需求分析——测试用例——测试用例执行——提交bug——回归测试
七、软件开发模型
瀑布模型:适用于需求很明确的项目,分阶段向下进行,无法回溯。
迭代模型:需求不明确,迭代版本系统。
敏捷开发模型:是一种以人为核心、迭代、循序渐进的开发方法。 在敏捷开发中,软件项目被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
测试驱动开发模型:先编写测试代码,再写开发代码。
八、软件测试模型
V模型:反映了测试与开发阶段之间一一对应的特点,测试在开发之后,出错后回归测试量大。
W模型(双V模型):双V模型并不是在V模型上增加一个V模型,而是测试伴随整个开发周期,测试与开发同步进行,有利于尽早发现问题。
H模型:软件测试活动完全独立,与其他流程并行。
以上就是软件测试需要掌握的全部基础理论知识,都是干货,大家可以多复习几遍。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
为什么要采用自动化测试,自动化测试有什么优势?
很多人都在说软件自动化测试,作为非测试行业的小白来说,甚至还不明白自动化测试是什么。学过软件测试的同学都了解,在学习过程中肯定会接触到手动测试和自动化测试来各种形式。那为什么要采用自动化测试呢?自动化测试有什么优势?
4795
2019-08-14 10:19:41
软件测试工程师薪水平均是什么水平?前景发展如何?
如今,软件测试工程师已然成为了香饽饽职业。从短期看,从事这份岗位的工程师,薪资待遇确实远远高于其他行业的同龄人。从长期来看,软件测试职业发展可期,无论是向技术还是管理岗位发展,都能有极大的上升空间。那么,软件测试工程师薪水平均是什么水平呢?前景发展究竟如何?
2039
2019-09-12 16:56:00
自动化测试工具有哪些?好用的自动化测试工具推荐
为了提高工作效率和节省人力资源,自动化测试应运而生。正如古语说的那样,工欲善其事必先利其器。对于许多软件测试者来讲,好用的自动化测试工具是必不可少的。本文为大家总结了几款自动化测试工具,有Appium、Selenium、Robot、QTP,并详细地介绍了它们的优势和特点,希望对大家能够有所帮助。
1668
2019-12-24 10:16:24
百度cookie使用方法分析
百度cookie使用方法分析,cookie是网站给你的已登陆证书,理论上拥有BDUSS这个COOKIE可以在任何位置跳过百度登录认证访问账号。
2909
2020-01-07 11:08:07
自动化测试的测试模型有哪些?优缺点分别是什么?
自动化测试的测试模型有哪些?测试行业从业者需要掌握的测试模型有线性测试、模块化驱动测试、数据驱动测试以及行为驱动测试 ,这些测试模型的优缺点也十分鲜明。下面我们一起来详细分析一下吧!
1123
2020-07-15 11:47:58
热门文章
- 大数据专业毕业后职业前景如何?
- Python if语句多层嵌套使用方法介绍
- 学习Python可以做什么工作?选什么方向?
- 计算机网络通信协议有哪些?作用是什么?
- 怎么判断软件测试培训班课程质量好不好?
- PHP培训需要多少费用?贵不贵?
- Python基础包含哪些内容?学习什么?
- 机器学习在线学习网站哪个好?
- 女生学软件测试还是前端好?怎么选?
- 产品经理岗位职责及工作内容有哪些? 查看更多
扫描二维码,了解更多信息
