我有WebAPI控制器Method(HTTPPost),它进一步调用了一个私有方法,该方法用于从WCF服务获取一些数据。
在为HTTPPost方法编写单元测试时,私有方法由于服务而崩溃。它们是任何方式,因此我可以为测试用例为private方法定义新定义。
我曾想过重新定义私有方法,问题是我不能更改代码中除单元测试项目以外的任何内容。
public class SController : ControllerBase
{
[HttpPost()]
public IActionResult X()
{
Y();
}
private bool Y()
{
Z z = new Z(); // WCF Partial class object
bool b = z.GetInfoAsync(a,b,c) ; // WCF method calling
}
}
有什么方法可以使用控制器的X方法,但是当X尝试调用Y时,它应该在测试用例中返回定义值,而不是服务调用。