0

我正在尝试使用IntelliTestIntelliTest在测试项目中创建的单元来测试我的 WCF 服务端点,但我需要指定服务器地址和端口,以便远程测试甚至可以工作。

这是其中之一PexMethods

public ICredentials CredentialsTest()
{
    ICredentials result = Service.Credentials();
    return result;
    // TODO: add assertions to method ServiceTest.CredentialsTest()
}

我已经添加

Service.ServiceEndPointAddress = "net.tcp://localhost:51010/WCFService";

但是当我运行测试时,我得到一个InvalidProgramException.

我想做的是分配一次 ServiceEndPointAddress,因为它是 Service 中的静态属性。有谁能给点指导意见吗?

4

1 回答 1

0

这里有几个问题:

  1. 获取 InvalidProgramException 表明 IntelliTest 已以导致底层 CLR 引发异常的方式检测您的代码。那将是 IntelliTest 中的一个错误。我要求您使用 Visual Studio 中的“发送微笑”来提交此文件。
  2. 您不应使用 IntelliTest 直接探索您的 WCF 代码。相反,您应该使用模拟来隔离与 WCF 相关的外部依赖项(就像您手动编写单元测试时所做的那样),然后运行 ​​IntelliTest 来探索生成的代码。对于模拟,您可以考虑使用 Fakes。
于 2016-03-13T15:00:59.710 回答