- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9讲软件测试
《实用软件工程》陆惠恩编著 第9讲 软件测试 本章内容 l??软件测试目标 l??测试方法步骤 l??设计测试、方案 l??测试原则和测试策略 l??软件调试、验证与确认 l??软件测试文档 软件测试目标 软件测试的目的是通过人工或计算机执行程序来有意识地发现程序中的设计错误和编码错误。 (1)软件测试是为了发现程序中的错误而执行程序的过程; (2)好的测试方案能够发现尚未发现的错误; (3)成功的测试是发现了尚未发现的错误的测试。 软件测试方法 按照测试过程是否执行程序来分: 静态分析与动态测试 按照测试数据的设计依据来分: 黑盒法与白盒法 软件测试方法 静态分析与动态测试 静态分析 静态方法是指不运行被测程序本身,仅通过分析或检查源程序的文法、结构、过程、接口等来检查程序的正确性。 静态方法通过程序静态特性的分析,找出欠缺和可疑之处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并为测试用例选取提供指导。 软件测试方法 静态分析与动态测试 2. 动态测试 以执行程序并分析程序来查错。 为了进行软件测试,需要预先准备好两种数据: ①输入数据; ②预期的输出结果。 我们把以发现错误为目标的用于软件测试的输入数据及与之对应的预期输出结果叫测试用例。 黑盒法与白盒法 1. 黑盒法: (Black Box Testing) 又称功能测试,其测试用例完全是根据程序的功能说明来设计的。 2. 白盒法 (White Box Testing) :又称结构测试,其测试用例是根据程序内部的逻辑结构和执行路径来设计的。 常把黑盒法和白盒法联合起来进行,这也称为灰盒 法。 软件测试步骤 一般软件测试有以下几个步骤: 模块测试 集成测试 程序审查会 人工运行 确认测试 平行运行 软件测试步骤 模块测试 也称单元测试,其目的是检查每个模块是 否能独立、正确地运行。 模块测试通常在程序设计时进行。 驱动程序(驱动模块)代替主程序,用来测试子程序。 存根程序(桩模块)也称“虚拟子程序”,测试主模块。 写驱动模块 例 为下面的子程序写驱动模块进行测试 int Max(int *pVector, int Len) { int iMax=pVector[0];//定义最大值初始为第一个 for(int i=1;iLen;i++) { //把最大值和每个值比较,如果iMax比数组的值小,则用大的值替换 if(iMaxpVector[i]) iMax=pVector[i]; } return iMax;//返回最大值 } 驱动模块 void main() { int a[]={12,2,3,4,121,43,6,8}; int L=8; int maxval=Max(a, L); printf(“%d”, maxval); } 集成测试 软件在集成时应该考虑以下问题: 在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失; 各个子功能组合起来,能否达到预期要求的父功能; 一个模块的功能是否会对另一个模块的功能产生不利的影响; 全局数据结构是否有问题; 单个模块的误差积累起来,是否会放大,从而达到不可接受的程度。 集成测试 子系统的组装称为集成化。 集成测试分为子系统测试和系统测试两种。 子系统测试也叫做部件测试,是把经过模块测试运行正确的模块集成一个子系统后再进行测试。 系统测试是测试整个硬件和软件系统 集成测试的方法有: 渐增式测试 非渐增式测试 渐增式测试 1、自顶向下集成 渐增式测试 2、自底向上集成 程序审查会和人工运行 确认测试 1. 确认测试必须有用户积极参与,或以用户为主进行。 2. 软件配置复审 为了保证软件配置的所有成分都齐全,各方面的质量都符合要求,文档与程序一致,要编排好目录,有利于维护。 3. Alpha测试和Beta测试 Alpha测试和Beta测试 Alpha测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。Alpha测试发现的错误,可以在测试现场立刻反馈给开发人员,由开发人员及时分析和处理。目的是评价软件产品的功能、可使用性、可靠性、性能和支持。尤其注重产品的界面和特色。?? Beta测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Bet
文档评论(0)