Dev环境中的集成测试用例执行时上下文环境检查
作者:网络转载 发布时间:[ 2014/9/28 15:45:48 ] 推荐标签:软件测试技术 测试用例
我们加入了一个很重要的测试实例运行时方法InitTestInstance,该方法会在测试用例每次实例化时先执行,在方法内部有一个用来检查当前测试用例运行的环境
this.CheckCurrentTestCaseIsRun(this.serviceInstance);//check current test case .,我们转到基类中。
1 using System;
2 using Microsoft.VisualStudio.TestTools.UnitTesting;
3
4 namespace OrderManager.Test
5 {
6 public abstract class ProductServiceIntegrationBase
7 {
8 /// <summary>
9 /// service address.
10 /// </summary>
11 protected const string ServiceAddressForDev = "http://dev.service.ProductService/";
12
13 /// <summary>
14 /// get service address.
15 /// </summary>
16 protected const string ServiceAddressForPrd = "http://Prd.service.ProductService/";
17
18 /// <summary>
19 /// service address.
20 /// </summary>
21 protected const string ServiceAddressTest = "http://Test.service.ProductService/";
22
23 /// <summary>
24 /// Test context .
25 /// </summary>
26 public TestContext TestContext { get; set; }
27
28 /// <summary>
29 /// is check is run for current test case.
30 /// </summary>
31 protected void CheckCurrentTestCaseIsRun(ProductService.Contract.ProductServiceClient testObject)
32 {
33 if (testObject.ServiceAddress.Equals(ServiceAddressForPrd))// Prd 环境,需要小心检查
34 {
35 if (this.TestContext.TestName.Equals("ProductService_DeleteProductSearchIndex_Test"))
36 Assert.IsTrue(false, "当前测试用例连接的环境为PRD,请停止当前用例的运行。");
37 }
38 else if (testObject.ServiceAddress.Equals(ServiceAddressTest))//Test 环境,检查约定几个用例
39 {
40 if (this.TestContext.TestName.Equals("ProductService_DeleteProductSearchIndex_Test"))
41 Assert.IsTrue(false, "当前测试用例连接的环境为TEST,为了不破坏TEST环境,请停止用例的运行。");
42 }
43 }
44 }
45 }
在检查方法中我们使用简单的判断某个用例不能够在PRD、TEST环境下执行,虽然判断有点简单,但是在真实的项目中足够了,简单有时候是一种设计思想。我们运行所有的测试用例,查看各个状态。

一目了然,更为重要的是它不会影响你对其他用例的执行。当你在深夜12点排查问题的时候,你很难控制自己的眼花、体虚导致的用例执行错误带来的大问题,甚至是无法挽回的的错误。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。

sales@spasvo.com