* 摘要
。ASP.NET系统课程回顾
。软件开发流程
。测试
。产品化
。其他ASP.NET补充
* 软件测试概述
。软件测试就是在软件交付用户使用或投入运行前,对软件需求规格说明,设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发理错误而执行程序的过程。
。什么是测试?
1、测试是为了发现程序中的错误而执行程序的过程;
2、好的测试方案是极可能发现至今为止尚末发现的错误的测试方案;
3、成功的测试是发现了至今为止尚末发现的错误的测试。
。测试分为单元测试,集成测试,系统测试,用户测试几个阶段。
* 单元测试
。单元测试:(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的很明确的功能是否正确
。一般认为,在结构化程序时代,单元测试所说的单元是指函数,在当今的面向对象时代,单元测试所说的单元是指类。
。经验表明一个尽责的单元测试方法将会在软件开发的某个阶段发现很多的Bug,并且修改它们的成本也很低。
* 集成测试
。集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。它是最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。
。自底向上的集成(Bottom-Up Integration)方式是最常用的方法。自底向上集成方式从程序模块结构中最底层的模块开始组装和测试。因为模块结构是自底向上进行组装的,对于一个给定层次的模块,它的子模块(包括子模块的所有下属模块)事前已经完成组装并经过测试,所以不再需要编制桩模块(一种能模拟真实模块,给待测模块提供调用接口或数据的测试用软件模块)。
* 系统测试
。是将经过测试的子系统装配成一个完整系统来测试。它是检验是否确实能提供系统方案说明书中指定功能的有效方法。
* 性能,压力和负载测试
。性能测试就象人在无风情况下跑步(正常情况下的性能指标);
-主要的性能指标:服务器的各项指标(CUP,内存占用率等),后台数据库的各项指标,网络流量,响应时间。
。压力测试就象人在微风中跑步(在正常的基础上加大多少百分比压力的性能指标);
。负载测试就象人在强风中跑步(不断加压,直到系统崩溃)。
* 测试方法
。白盒法又称结构测试或逻辑驱动测试,它不管程序的功能,而是根据程序的内部结构设计测试用例,检验程序中每条通路是否都能按预定的要求正确工作。
。黑盒法又称功能测试或数据驱动测试,它完全不管程序内部的结构和处理,把程序看成一个黑盒子,只按程序需求说明书规定的功能和性能测试程序能否正常使用,是否能接收输入数据,产生正确的输出信息。
* 测试用例
。测试用例:测试用例是按一定的顺序执行的与测试目标相关的测试活动的描述,是确定“怎样”测试。测试用例被看作是有效发现软件缺陷的最小测试执行单元,也被视为软件的测试规格说明书。
。设计测试用例,也分为白盒设计方法和黑盒设计方法。白盒设计方法又分为逻辑覆盖法和基本路径覆盖法,或者分为语句覆盖,判定覆盖,条件覆盖方法,而黑盒设计方法分为等价类划分法,边界值分法,错语推测法,因果图法等。
* 白盒测试
。白盒的测试用例需要做到:
-保证一个模块中的所有独立路径至少被使用一次
-对所有逻辑值均需测试true和false
-在上下边界及可操作范围运行所有循环
-检查内部数据结构以确保其有效法
。六种覆盖方法:
-语句覆盖
-判定覆盖
-条件覆盖
-判定/条件覆盖
-组合覆盖
-路径覆盖
* NUint
。NUnit是为.NET框架生成的开放源代码单元测试框架。NUnit使你可以用你喜欢的语言编写测试,从而测试应用程序的特定功能。
。当你首次编写代码时,单元测试是一种测试代码功能的很好的方法,它还提供了一种对应用程序进行回归测试的方法。
。NUnit应用程序提供了一个用于编写单元测试的框架,以及一个运行这些测试和查看结果的图形界面。
。可以在http://www.nunit.org下载。
* 测试属性
。[TestFixture]:Test class's attribute.NUint根据这个attribute来判断这个类是否是用来测试的。
。[Test]:Test method's attribute. NUint根据这个 attribute来判断这个方法是否用来测试的。
。[ExpectedException]:Test method's attribute.如果你要测试一个方法在运行出错时是否能正确抛出异常,使用这个attribute.
。[Ignore]:Test method's attribute.对测试方法暂时不执行测试。比如想暂时不执行一部分的test case
* 产品化
。安装盘制作
-VS.NET
-InstallShield
。软件加密:
-加密狗方法
-序列号方法
。说明书制作
-书籍版说明书:Word?
-电子说明书制作:CHM? Html?其他
-Help制作