1. 基于测试方法的名字,ServletTestCase将在TestCase中寻找并执行名为beginXxx的方法;
2. 在beginXxx方法执行完成之后,ServletTestCase打开一个与转向器servlet的HTTP连接。除了发送在begionXxx中增加的任何请求参数,Cactus发送一些内部参数来指定在服务器上执行哪一个测试(和哪一个方法)。
3. 当转向器servlet收到请求,它检查内部参数并实例化一个服务器中正确测试案例的新拷贝。一旦其类被实例化,转向器servlet使用反射来复制标准的servlet变量request,response等等)到新的测试案例实例中。
4. 一旦服务器端测试案例被完全初始化,服务器端执行即开始。其setUp(),testXxx()和testDown()方法在此时被执行。(注意这些方法只在测试案例的拷贝中才被执行,这些测试案例运行在服务器上。)
5. 一旦测试完成了执行过程,在客户端的测试拷贝向转向器servlet发出另一个请求以询问测试结果。其转向器servlet从应用程序的scope变量中既得结果,并发送到
客户端。如果任何异常或者失败保存在结果中,它们将被重新招聘,使JUnit测试运行器正常地对它们进行日志记录。如果结果返回成功,客户端将执行一个最后的endXxx方法。
endXxx方法得到一个WebResponse参数。WebResponse对象包含了任何写向客户端的响应数据。endXxx能使用WebResponse对象的方法对响应的内容执行断言。测试执行在endXxx返回结果后表示完成。
2. 在beginXxx方法执行完成之后,ServletTestCase打开一个与转向器servlet的HTTP连接。除了发送在begionXxx中增加的任何请求参数,Cactus发送一些内部参数来指定在服务器上执行哪一个测试(和哪一个方法)。
3. 当转向器servlet收到请求,它检查内部参数并实例化一个服务器中正确测试案例的新拷贝。一旦其类被实例化,转向器servlet使用反射来复制标准的servlet变量request,response等等)到新的测试案例实例中。
4. 一旦服务器端测试案例被完全初始化,服务器端执行即开始。其setUp(),testXxx()和testDown()方法在此时被执行。(注意这些方法只在测试案例的拷贝中才被执行,这些测试案例运行在服务器上。)
5. 一旦测试完成了执行过程,在客户端的测试拷贝向转向器servlet发出另一个请求以询问测试结果。其转向器servlet从应用程序的scope变量中既得结果,并发送到
客户端。如果任何异常或者失败保存在结果中,它们将被重新招聘,使JUnit测试运行器正常地对它们进行日志记录。如果结果返回成功,客户端将执行一个最后的endXxx方法。
endXxx方法得到一个WebResponse参数。WebResponse对象包含了任何写向客户端的响应数据。endXxx能使用WebResponse对象的方法对响应的内容执行断言。测试执行在endXxx返回结果后表示完成。