我正在尝试使用UNIT TEst测试WCF数据服务(ODATA服务),但我无法这样做。
任何人都可以帮忙吗?
答案 0 :(得分:2)
您可以通过直接调用数据服务类本身的函数(内部/白盒测试)来单元测试数据服务,也可以通过构建进程内服务并通过http请求调用数据服务来进行单元测试。
直接调用数据服务类将在那里运行逻辑,但风险在于数据服务可能对使用网络堆栈状态作为处理请求的一部分有假设/依赖性。如果是这样,那么直接调用数据服务的单元测试可能会失败,因为测试环境没有正确反映运行时环境。
将数据服务设置为进程内服务并通过单元测试中的http请求访问它可以更好地表示实际运行时环境,因为调用实际上是通过网络堆栈并被分派到数据服务就像它们在运行时一样。如果数据服务真正独立于网络状态,这可能是过度的,但它更好地代表了现实世界的运营。