.NET程序员项目开发必知必会—Dev环境中的集成测试用例执行时上
来源:未知 责任编辑:责任编辑 发表时间:2015-05-17 20:34 点击:次
Microsoft.NET 解决方案,项目开发必知必会。
从这篇文章开始我将分享一系列我认为在实际工作中很有必要的一些.NET项目开发的核心技术点,所以我称为必知必会。尽管这一些列是使用.NET/C#来展现,但是同样适用于其他类似的OO技术平台,这些技术点可能称不上完整的技术,但是它是经验的总结,是掉过多少坑之后的觉醒,所以有必要花几分钟时间记住它,在真实的项目开发中你就知道是多么的有帮助。好了,废话不说了,进入主题。
我们在开发服务时为了调试方便会在本地进行一个基本的模块测试,你也可以认为是集成测试,只不过你的测试用例不会覆盖到80%以上,而是一些我们认为在开发时不是很放心的点才会编写适当的用例来测试它。
集成测试用例通常有多个执行上下文,对于我们开发人员来说我们的执行上下文通常都在本地,测试人员的上下文在测试环境中。开发人员的测试用来是不能够连接到其他环境中去的(当然视具体情况而定,有些用例很危险是不能够乱连接的,本文会讲如何解决),开发人员运行的集成测试用例所要访问的所有资源、服务都是在开发环境中的。这里依然存在但是,但是为了调试方便,我们还是需要能够在必要的时候连接到其他环境中去调试问题,为了能够真实的模拟出问题的环境、可真实的数据,我们需要能有一个这样的机制,在需要的时候我能够打开某个设置让其能够切换集成测试运行的环境上下文,其实说白了就是你所要连接的环境、数据源的连接地址。
本篇文章我们将通过一个简单的实例来了解如何简单的处理这中情况,这其实基于对测试用来不断重构后的效果。
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace OrderManager.Test
{
using ProductService.Contract;
/// <summary>
/// Product service integration tests.
/// </summary>
[TestClass]
public class ProductServiceIntegrationTest
{
/// <summary>
/// service address.
/// </summary>
public const string ServiceAddress = "http://dev.service.ProductService/";
/// <summary>
/// Product service get product by pid test.
/// </summary>
[TestMethod]
public void ProductService_GetProductByPid_Test()
{
var serviceInstance = ProductServiceClient.CreateClient(ServiceAddress);
var testResult = serviceInstance.GetProductByPid(0393844);
Assert.AreNotEqual(testResult, null);
Assert.AreEqual(testResult.Pid, 0393844);
}
}
}
相关新闻>>
最新推荐更多>>>
- 发表评论
-
- 最新评论 进入详细评论页>>




