gpt4 book ai didi

c# - 单元测试 WCF 服务正在启动

转载 作者:太空宇宙 更新时间:2023-11-03 13:42:41 24 4
gpt4 key购买 nike

我是 WCF 新手。我创建了一个基本服务,工程师使用调试器和 WCFTestClient 对其进行了测试。我从未编写过自己的 WCF 客户端。现在我需要为服务构建单元测试。

我的类(class):

IXService
CXService
CServiceLauncher

(是的,我知道 C 前缀不符合当前标准,但我客户的标准要求它。)

我的服务功能可以直接针对 XService 进行测试,但我还需要测试 CServiceLauncher。我想要做的就是连接到一个 URI 并发现那里是否正在运行服务以及它提供的方法。

我读到的其他问题:

测试大纲:

    public void StartUiTest()
{
Uri baseAddress = new Uri("http://localhost:8080/MyService");
string soapAddress = "soap";
IUserInterface target = new CServiceLauncher(baseAddress, soapAddress);
try
{
Assert.AreEqual(true, target.StartUi());
/// @todo Assert.IsTrue(serviceIsRunning);
/// @todo Assert.IsTrue(service.ExposedMethods.Count() > 4);
Assert.Inconclusive("This tells us nothing about the service");
}
finally
{
target.StopUi();
}
}

最佳答案

我只需要构建一个简单的客户端。

引用: http://webbeyond.blogspot.com/2012/11/wcf-simple-wcf-client-example.html

  1. 将服务引用添加到测试项目
  2. 添加到测试文件:

    使用 System.ServiceModel;

    使用 MyTests.ServiceReferenceNamespace;

try 中的代码现在是:

            Assert.AreEqual(true, target.StartUi());
XServiceClient client = new XServiceClient();
client.GetSessionID();
Assert.AreEqual(CommunicationState.Opened, client.State, "Wrong communication state after first call");

关于c# - 单元测试 WCF 服务正在启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16469619/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com