学习软件测试要掌握什么基本知识?
目录
目录
1、软件生命周期(SDLC)的六个阶段
2、软件生命周期模型
3.软件测试概念
4.软件测试目的
5.软件测试原则
6. 软件测试的的重点
7.黑盒测试
8.什么是白盒测试
9.什么是动态测试
10.什么是静态测试
1、软件生命周期(SDLC)的六个阶段
1、问题的定义及规划
此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。
2、需求分析
在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。“唯一不变的是变化本身。”,同样需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。
3、软件设计
此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。
4、程序编码
此阶段是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。
5、软件测试
在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。整个测试过程分单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。
6、运行维护
软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的要求。要延续软件的使用寿命,就必须对软件进行维护。软件的维护包括纠错性维护和改进性维护两个方面。
2、软件生命周期模型
从概念提出的那一刻开始,软件产品就进入了软件生命周期。在经历需求、分析、设计、实现、部署后,软件将被使用并进入维护阶段,直到最后由于缺少维护费用而逐渐消亡。这样的一个过程,称为“生命周期模型”(Life Cycle Model)。
典型的几种生命周期模型包括瀑布模型、快速原型模型、迭代模型。
瀑布模型的特点(文档是主体),很多的问题在最后才会暴露出来。迭代模型比瀑布模型问题暴露的要早;快速原型法比瀑布模型直观。
3.软件测试概念
广义概念:指软件生存周期中所有的检查、评审和确认工作,其中包括了对分析、设计阶段,以及完成开发后维护阶段的各类文档、代码的审查和确认
狭义概念:识别软件缺陷的过程,即实际结果与预期结果的不一致
4.软件测试目的
测试的目的就是发现软件中的各种缺陷
测试只能证明软件存在缺陷,不能证明软件不存在缺陷
测试可以使软件中缺陷降低到一定程度,而不是彻底消灭
以较少的用例、时间和人力找出软件中的各种错误和缺陷,以确保软件的质量
5.软件测试原则
Good-enough:一种权衡投入/产出比的原则
保证测试的覆盖程度,但穷举测试是不可能的
所有的测试都应追溯到用户需求
越早测试越好,测试过程与开发过程应是相结合的
测试的规模由小而大,从单元测试到系统测试
为了尽可能地发现错误,应该由独立的第三方来测试
不能为了便于测试擅自修改程序
既应该测试软件该做什么也应该测试软件不该做什么
6. 软件测试的的重点
测试用例的设计
- 测试用例的设计是整个软件测试工作的核心
- 测试用例反映对被测对象的质量要求,决定对测试对象的质量评
测试工作的管理
- 尤其是对包含多个子系统的大型软件系统,其测试工作涉及大量人力和物力,有效的测试工作管理是保证有效测试工作的必要前题
测试环境的建立
- 测试环境应该与实际测试环境一致
7.黑盒测试
什么是黑盒测试
-又称功能测试或数据驱动测试,是针对软件的功能需求/实现进行测试,通过测试来检测每个功能是否符合需求,不考虑程序内部的逻辑结构
黑盒测试方法
- 功能划分
- 等价类划分
- 边界值分析
- 因果图
-错误推测等
8.什么是白盒测试
- 白盒测试也称结构测试或逻辑驱动测试,必须知道软件内部工作过程,通过测试来检测软件内部是否按照需求、设计正常运行- 白盒测试的主要方法
-对应于程序的一些主要结构:语句、分支、逻辑路径、变量;白盒测试的主要方法是:
- 语句覆盖方法
- 分支覆盖方法
- 逻辑覆盖方法
9.什么是动态测试
动态测试需要在开发/测试环境或实际运行环境中运行软件,并使用测试用例去查找软件缺陷;动态测试包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等
10.什么是静态测试
静态测试不实际运行软件,主要是对软件的编程格式、结构等方面进行评估.静态测试包括代码检查、程序结构分析、代码质量度量等。它可以由人工进行,也可以借助软件工具自动进行
学习软件测试要掌握什么基本知识?相关推荐
- 软件测试培训分享:做软件测试需要掌握数据库的知识吗?
最近几年,学习软件测试的同学越来越多,大家对于"做软件测试需要掌握数据库的知识吗?"这个问题都比较关注,那么下面小编就来为大家做下详细的介绍. 软件测试培训分享:做软件测试需要掌握 ...
- 学习软件测试需要掌握哪些内容?这篇文章告诉你
学习软件测试需要掌握哪些内容,主要取决于该岗位现在需要的技能有哪些,只有掌握了岗位需要的技能才能顺利地找到适合自己的工作,技术在不断更新,我们需要学习在实际工作中能够用到的企业级技术.那么学习软件测试 ...
- 刚入行的软件测试工程师如何自学软件测试?0 基础该怎么学习软件测试
从题干上看,你是已经进入了软件测试行业,有了一份软件测试的工作,那表示你看好这个行业,有意愿在这个行业持续发展. 软件测试相对一些开发的专业来说,需要了解的东西特别多,拿一些招聘简章中的要求来看 ...
- 学习软件测试你不了解这7点你算是白学了...
1. 关于书籍 很多朋友是打算买书学软件测试的,买书的时候,大家通常会有这么一个想法,我多买几本软件测试入门书籍,多看看是不是软件测试会学得比较好呢?其实,你会发现书你买了,但是看没看又是一回事,软件 ...
- 女生学习软件测试好找工作吗?
女生在学习软件测试方面有很大的优势,因为软件测试的主要工作是发现错误.女孩子自然更专心.细心.耐心.这些优势满足了企业的需求,我从事软件测试已经超过10年了.现在,从IT职位的分析来看,大多数公司做测 ...
- 如何从零开始学习软件测试
很多朋友想要入行软件测试,但是都不知道该怎么学. 抽个时间简单的给大家说下,对于0基础的朋友,应该怎么去学习软件测试. 学习软件测试有2条路可以选. 最省事的当然是找个靠谱的培训机构去培训啦,你就什么 ...
- 软件测试难吗?0基础可以学吗?上手时间快吗?如何从零开始学习软件测试?
如何从零开始学习软件测试 很多朋友想要入行软件测试,但是都不知道该怎么学. 抽个时间简单的给大家说下,对于0基础的朋友,应该怎么去学习软件测试. 学习软件测试有2条路可以选. 最省事的当然是找个靠谱的 ...
- 从零开始学习软件测试
如何从零开始学习软件测试 很多朋友想要入行软件测试,但是都不知道该怎么学. 抽个时间简单的给大家说下,对于0基础的朋友,应该怎么去学习软件测试. 学习软件测试有2条路可以选. 最省事的当然是找个靠谱的 ...
- 初步学习软件测试的一些思考
自己开始私下学习软件测试有两年了,进入企业实习累计半年多点,感觉软件测试并没有自己开始设想的那样的简单,即使是黑盒测试技术也不是容易掌握的,它需要我们能静下心去对我们的产品功能去思考.作为一名软件测试 ...
最新文章
- 数据中心服务器机架是什么?
- poj1195 Mobile phones 二维线段树入门
- python field readonly_Python serializers.ReadOnlyField方法代码示例
- 开发工评价程师自我_常见“自我评价”写作范例
- configtx.yaml中文注解
- BETA冲刺(6/7)
- Rockwell AB PLC 控制器EDS 更新下载更新方法
- C#二进制方式(binary、varbinary、blob、longblog等)读写mysql
- 数学对数 log lg ln 简介
- 5G无线关键技术 — 低时延高可靠物联网设计
- IntelliJ IDEA中文汉化教程
- AWS EC2主机类型的区别和联系
- vue脚手架下载及使用
- R语言的四种数据结构---向量
- python的coupon_Python数据分析:拼多多优惠券使用预测
- 通过Fiddler进行抓包并分析
- Android官方技术文档翻译——新构建系统概述
- 保留已经定位区域MATLAB,基于HSV肤色提取与连通区域过滤的人脸定位算法(Matlab)...
- Spring Boot使用websocket实现聊天室
- Matlab算法DSP移植验证,DSP计算机作业 自适应噪声抵消LMS算法Matlab仿真
热门文章
- rs422 rs485 rs232串口转换
- Javacript中父节点、子节点、兄节点的简单用法[0306]
- 气瓶安全云充装V1.0.201604
- 机器视觉检测技术在汽车行业中的应用
- [18调剂]中国地震局工程力学研究所2018年考研调剂信息
- pathon Django的关系映射
- H5页面中调起高德地图app,如果未安装应用,则提示用户安装
- 微软自带杀毒软件Security Essentials占电脑内存很小 推荐使用可以安装下载
- 修改echarts鼠标放上去显示的数据
- 【期权课堂】第3课 如何像交易股票那样交易期权?