自动化测试相对于手工测试有以下优点 a.Speed--快速地进行成千上万个测试用例; b.Accuracy--不受人为的因素的干扰,例如记录错误的结果; c.Precision--每次都以同样的方式运行; d.Efficiency--晚上白天都可以进行测试; e.Skill-Building--培养技能,手工测试非常枯燥乏味,提高不了技能。 我们知道API(Application Programing Interface)测试是软件自动化测试的基础,API测试用来验证组成软件的那些单个方法的正确性;API测试也称为单元测试-Unit Test、模块测试-Module Test、组件测试-Component Test和元件测试-Element Test。 不管怎么叫,背后的意思是:必须确定系统中每个单独的模块必须正常工作。 待测方法的代码如下: View Code
好了,下面来介绍API自动化测试的流程: 1、准备测试用例数据,最好是独立于测试套件,可以存放在txt文件 ,XML文件和数据库,以便多个测试套件重复使用。这里我准备好了 测试ID 待测方法 测试输入 期望值 0001:ArihthmeticMean:4 8:8 实际测试时,需要成千上万个测试用例数据,包括边界值,空值,无效输入。有些自动化测试工具可以自动产生测试用例数据。 2、读入测试用例数据 a.如何从测试用例文件中读入读入每条测试用例数据? b.设计--通过while循环遍历测试用例的每一行。 c.方案 View Code
3、解析测试用例 a.如何解析出用字符串隔开的测试用例的各个字段 b.设计-使用string.Split()方法,该方法返回一个字符数组。具体使用去查查api c.具体实现方案看接下来的代码 4、把数据转换为合适的类型 a.读入的是字符串类型,在这里必须转为整型 b.看下面的整理代码 5、判定测试用例通过与否 a.如何判定API测试用例是否通过 b.设计--调用待测方法,传给它测试用例的输入,得到返回值,然后比较实际结构和测试用例中读入的期望值是否一致 c.具体代码看下面 6、记录测试用例结果 a.如何把测试用例的结果存入独立于测试程序的简单文本文件 b.设计--在处理测试用例的主循环中,使用System.IO.StreamWriter对象把测试用例ID和测试结果写到一个文本文件。当然可以记录到XML文件或者数据库中,看需要 c.代码实现看下面 7、给测试用例结果文件加上实际戳
View Code
8、通过计算对测试结果进行总结 9、获得测试的总运行时间
用DateTime TimeSpan可以实现
10、处理输入为空或者期望值为空的情况--NULL
11、处理“方法抛出异常”的情况 12、处理输入参数为空字符串的情况 13、在测试用例失败时发送警告邮件 System.Net.Mail下的MailMessage类实现,很简单
14、自动运行测试套件
用.BAT文件可以实现,用System.Diagnosis.Process命名空间下的Start()方法 (责任编辑:admin) |