- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件测试基础知识
一、软件测试的描述:
测试能提高软件的质量,但是提高质量不能依赖测试;
测试只能证明错误存在,不能证明错误不存在;
测试的主要困难是不知道该如何进行有效地测试,也不知道什么时候能够放心的结束测试;
每个程序员都应当测试自己的程序(份内事),但不能作为程序已通过测试的依据(所以项目需要独立的测试人员);
80-20原则:80%的错误聚集在20%的模块中,经常出错的模块改错后还是会经常出错;
测试应当循序渐进,不要企图一次性做完。欲速则不达。
一个好的测试用例是指很可能找到迄今为至尚未发现的错误的测试用例
一个成功的测试是指揭示了迄今为至尚未发现的错误的测试
二、软件分类:
1)按功能分:
系统软件(OS、硬件驱动程序)
应用软件(Office、QQ)
2)按技术架构分:
单机版软件(Office、画图工具)
C/S结构软件(客户端Client/服务器端Server,QQ、MSN)
B/S结构软件(浏览器Browser/服务器Server,WEB项目) 现在软件的主流
3)按用户分:
产品软件:目标用户是大众用户(win 8)
项目软件:目标用户是具体用户
4)按开发的规模分:
类别
参与人数
开发时间
小型
10人以下
1—4个月
中型
10—100人
1年以下
大型
100人以上
1年以上
软件测试的目的:为了发现错误,不能证明程序正确,设计合适的测试用例,用尽可能少的测试用例,来发现尽可能多的软件错误。
测试人员的主要工作:
1)规划测试任务
2)设计测试(包括编写测试用例等等)
3)建立一个合适的测试环境
4)评估、获取、安装和配置自动测试工具
5)执行测试
6)撰写适当的测试文档
软件测试与软件质量:
QA(Quality Assurance),(关注的是过程);QC(Quality Control),即质量控制(关注的是结果)。
软件能力成熟度模型(CMM)
CMM将软件组织的过程能力成熟度级别分为5个级别:初始级、可重复级、已定义级、已管理级、优化级。
SQA(Software Quality Assurance,软件质量保障)
测试是在发现问题,SQA是在预防问题
ISO/IEC9126国际标准所定义的软件质量包括六个部分,分别为功能性、可靠性、可用性、有效性、可维护性和可移植性。
软件测试有两个基本的功能:验证(Verification)和确认(Validation)。
验证:指保证软件正确地实现了特定功能的一系列活动。(保证产品的正确性)
确认:指保证最终的产品满足系统需求。(保证生产了正确的产品)
对于软件缺陷的精确定义,通常全球软件业界普遍认同下列5条规则
软件未达到产品说明书中已经标明的功能;
软件出现了产品说明书中已经指明不会出现的错误;
软件未达到产品说明书中虽未指出但应当达到的目标;
软件功能超出了产品说明书中指明的范围;
测试专业人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良
软件测试的原则:
1) Zero bug和Good enough
2)不要试图穷举测试
3)开发人员不能既是运动员又是裁判员
4)软件测试要尽早执行
5)软件测试应该追溯需求
6)缺陷的二八定理——缺陷的集群现象或是虫子窝现象
7)缺陷具有免疫性
软件测试对象概念:
软件测试不等于程序测试
软件测试贯穿于软件定义和开发的整个过程
软件开发过程中所产生的需求规格说明书、概要设计说明、详细设计规格说明以及源程序都是软件测试的对象
软件测试分类:
1、按照开发阶段划分:
单元测试→集成测试→系统测试→验收测试
2、按照测试实施组织划分:
开发方测试→第三方测试→用户测试
3、按照测试技术划分:
白盒测试→黑盒测试→灰盒测试
软件测试过程模型: V型和W型
软件开发过程的八个阶段:
制定计划→②需求分析定义→③软件设计→④程序编写→⑤软件测试→⑥软件运行→
⑦ 软件维护→⑧软件停用
搭建软件测试环境还应注意以下几点:
真实(尽量模拟用户的真实使用环境)
干净(测试环境中尽量不要安装其它与被测软件无关的软件)
无毒(测试环境没有中毒,最好安装杀毒软件,以确保系统没有病毒)
独立(测试环境和开发环境独立)
软件测试工具的使用:
软件测试的具体分类:
从是否需要执行被测试软件的角度分(是否运行程序):
静态测试和动态测试。
从测试是否针对软件结构和算法的角度分类分(是否查看源代码):
白盒测试和黑盒测试。
从测试的不同阶段分:
单元测试、集成测试、系统测试和验收测试四个阶段。
其他情形划分:
回归测试、冒烟测试、确认测试、恢复性测试、探究性测试
功能测试:
逻辑功能测试、界面功能测试、易用性测试、安装测试、兼容性测试
性能测试:
性能测试、稳定性测试、负载测试、压力(强度)测试、安全测试
其中
文档评论(0)