刚刚遇到一个问题。我正在尝试准备好 wcf 服务 unittest 或更好地使用 unittest 测试所有代码。
Atm 不可能因为我已经连接到每次使用的 crm 2011 服务器。
所以我用接口替换了它。但我想像你使用它一样对 WCF 进行单元测试。
现在我的想法是创建一个公共方法并提供一个虚假的连接。
现在我的问题是是否可以调用此方法(例如:ConnectionHandler),即使它不在界面中?
这看起来像这样:
public interface IWCF
{
[OperationContract]
bool method1();
[OperationContract]
bool method2();
}
public class WCF: IWCF
{
public bool method1(){
...
}
public bool method2(){
...
}
private connection connectionHandler;
public connection ConnectionHandler(Iconnection con){
if(con != null){
connectionHandler = con;
} else {
connectionHandler = takedefault;
}
}
}
编辑
啊,我忘了告诉这一点:我实际上考虑到了安全性,我不希望任何人都可以将不同的连接传递给服务器,仅用于单元测试目的。