上篇博客介绍了使用XML存储测试用例,流处理模式的自动化测试程序的编写,这篇将介绍使用XML存储测试用例,缓存处理模式的自动化测试程序的编写。即先将所有测试用例读取出来放到一个ArrayList中,执行的时候从这个ArrayList中拿测试用例,并把测试结果统一放到另一个ArrayList中,最后将第二个ArrayList中的测试结果保存到外部XML文件中。
参考上篇博客
1、 准备被测应用程序
2、 准备XML格式的测试用例
3、 准备TestCase类和TestCaseResult类
下面就开始自动化测试套件的设计了。
上篇博客代码写得有点乱,没做任何整理。其实任何测试的执行都会包括读取测试用例、执行测试、保存测试结果这几个步骤。因此在此例子中我会将代码封装到方法中。
4、 编写自动化测试代码
上篇博客好像忘记说要添加被测应用程序的引用了。
在上篇博客创建的那个TestHarnessDesignPartterns项目下创建一个XMLBufferedHarness类。
该类中封装了三个方法,ReadData()方法读取测试用例,RunTests()方法执行测试,SaveResults()方法将测试结果存储到外部XML中。我通过该类的构造函数将测试用例文件和测试结果文件传递给该类。即该类有个这样签名的构造函数:
public XMLBufferedHarness(string testCaseFile,string testResultFile)
XMLBufferedHarness类的全部代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using MathLib;
using System.Collections;
using TestHarnessDesignPartterns;
namespace TestHarnessDesignPartterns
{
class XMLBufferedHarness
{
private XmlTextReader xtr = nu