经过手工或自动化的手段来运行或测定某个软件产品系统的过程,目的在于检测软件产品是否知足规定的需求,或者弄清楚预期结果与实际结果之间的差异。程序员
测试软件各个功能模块处理是否正确,业务逻辑是否正确,数据流转、呈现、处理和存储是否正确。数据库
测试用户界面是否美观,界面设计是否人性化、易操做,提示是否友好完善,不一样屏幕分辨率下各界面显示是否正确、美观,软件支持的不一样语言版本下,各界面显示的文字是否正确、美观等。浏览器
主要测试浏览器兼容性、操做系统兼容性、硬件兼容性。安全
正常状况下软件安装完成后能够正常运行,能够彻底卸载;
用户无权限、硬件资源不知足等异常状况下可以给出准确的提示信息。服务器
分应用程序级别、系统级别两个层次数据结构
包括负载测试、压力测试、并发测试、可靠性测试、失效恢复测试等。并发
测试软件产品附带的各类说明书、帮助文档等。工具
站在用户的角度,从需求出发,对软件进行全面的、深刻的测试,尽早、尽可多地发现Bug,并跟踪和分析软件中存在的问题,对不足之处提出质疑和改进意见。性能
经过主观意识借助实体或者虚拟表现、构成客观阐述形态、结构的一种表达目的的物件。在软件行业来讲就是:对系统实现步骤或系统知识的抽象表示。单元测试
1.参与构造软件的人员之间沟通的基础
2.指导具体的软件实现过程
3.管理者制定相关工做计划的基础
经常使用的软件测试模型
软件测试的阶段划分
单元模块内的功能测试、边界测试、容错测试、界面测试、控制流和数据流测试,以及模块内的业务流程测试等。
系统集成之后的相关接口测试、功能测试、容错测试、约束测试,跨模块的业务流程测试等。
系统性的初始化测试、功能测试、业务处理和数据处理测试、性能测试、压力测试、安装卸载测试等。
在用户现场和用户一块儿对系统进行功能确认、用户需求确认、备份恢复测试、安全性测试等。
系统使用过程当中发现问题修改完成之后,测试对应的问题是否修改好了,测试新修改的功能是否引起新的缺陷,测试与修改代码相关的其它程序功能是否依然正确。
为了特定的测试目的而设计的具备测试输入、测试执行条件、预期结果及结果验证方法的文档。
Bug就是程序的缺陷,是指软件程序运行过程当中因为程序自己有问题致使的功能不正常、体验不佳、数据丢失、死机、非正常中断等现象。
描述简明扼要,最好附带错误截图,尽可能抓取错误日志,说清错误发生场景,可附带本身对错误的推测分析。
就是对输入或输出域的边界值进行测试的一种黑盒测试方法。一般边界值分析法是做为对等价类划分法的补充,这种状况下,其测试用例来自等价类的边界。
若是输入或输出条件规定了取值范围,则应该以该范围的边界值及边界附近的值做为测试数据。
例1.1 工人的工龄范围是大于等于0,小于等于50的整数。
边界值:-1,0,50,51
例1.2 用户登陆软件系统时,软件根据用户的权限加载相关模块功能。
边界值:没有权限,有一个模块的权限,有全部模块的权限。
若是输入或输出条件规定了值的个数,则用最大个数、最小个数、比最小个数少一、比最大个数多1的数做为测试数据。
例2.1 报表定义中限定报表字段至少有两个字段,至多不能超过10个字段。
边界值:1,2,10,11
例2.2 查询结果多于15条记录时须要提供翻页功能。
边界值: 0,1,15,16
若是程序规格说明书中提到的输入或输出是一个有序的集合,应该注意选取有序集合的第一个和最后一个元素做为测试数据。
例3.1 下拉列表选择控件的测试。
边界值:下拉列表第一个选项,下拉列表最后一个选项
例3.2 系统在编号从1-100的拓扑图中定位包含网元A的拓扑图,将含有网元A的拓扑图名称按照编号从小到大的顺序显示出来,在单击拓扑图名称后定位出网元A在拓扑图中的位置。
边界值:在包含网元A的编号最小的拓扑图中定位,在包含网元A的编号最大的拓扑图中定位。
若是程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值做为测试数据。
例4 程序根据用户近三个月的消费情况给用户评级,月均消费超过3000元的用户或至少一个月消费超过5000的用户为优级用户,月均消费超过1500元或至少一个月消费超过3000元的为良级用户,月均消费超过800元的为潜力用户。
边界值:月均消费为 {3000,3001,1500,1501,799,800},不知足月均消费数据但某月消费{5000,5001,3500,3501}
就是根据经验和直觉推测程序中可能存在的各类错误,从而有针对性地设计测试用例的方法。
列举出程序中全部可能有的错误和容易发生错误的特殊状况,根据它们选择测试用例。