• WCF单元测试


         本示例使用的单元测试工具为VS2010自带的单元测试工具,Mock工具为WCFMock:使用及下载地址为:http://wcfmock.codeplex.com/

         WCFMock主要提供两个DLL,WCFMock和Moq,均可下载获得
        

        WCF服务端:
            需要引入:WCFMock.dll
            在提供服务接口的类开头添加(用于mock WebOperationContext ):using WebOperationContext = System.ServiceModel.Web.MockedWebOperationContext;

         测试项目:(更多使用方式可参考WCFMock项目)
            

    [TestClass]
        public class UnitTest1
        {
            [TestMethod]
            public void TestMethod1()
            {
                string requestXml = "请求数据";
    
                Mock<IWebOperationContext> mockContext = new Mock<IWebOperationContext> { DefaultValue = DefaultValue.Mock };
              
                string ret = string.Empty;
                using (new MockedWebOperationContext(mockContext.Object))
                {
                    //调用服务器端接口方法
                    ReportService sampleService = new ReportService();
                    ParseUtil pu = new ParseUtil();
                    Stream s = sampleService.LoginPost(string.Empty, pu.StringToStream(loginXml));
                    ret = pu.StreamToString(s); //接口返回数据
                }
    
                //Mock返回类型,否则服务器端调用WebOperationContext.Current.OutgoingResponse.ContentType是回报null异常
                mockContext.VerifySet(c => c.OutgoingResponse.ContentType, "text/xml");
    
                string retXml = "预期的数据";
    
                Assert.AreEqual(retXml, ret);
            }
        }

  • 相关阅读:
    DataGrid数据格式设置表达式
    删除确认按钮
    获取CpuID
    R0~R31寄存器
    动态改变asp.net网页的标题
    使用"Infragistics"问题集
    Read Cpu Id
    操作DataRow记录
    用Javascript创建"后退"按钮
    日历控件的“星期几”变为“几”
  • 原文地址:https://www.cnblogs.com/gossip/p/2469561.html
Copyright © 2020-2023  润新知