|
11
|
| Steven Behnke · 技术社区 · 16 年前 |
|
|
1
24
我通常做的不是直接测试Web服务,而是尝试在服务中尽可能少地输入代码,并调用一个完成所有实际工作的不同类。然后我为另一个类编写单元测试。事实证明,在Web服务上下文之外,类有时是有用的,因此,通过这种方式,您可以获得两倍的收益。 |
|
|
2
8
如果您正在编写Web服务,请尝试将所有逻辑放在另一个(可测试)层中。每个Web方法都应该有尽可能少的代码。然后您将没有理由直接测试Web方法,因为您可以测试底层。
如果正在使用Web方法,请将生成的调用者包装在类包装器中,并实现类包装器的接口。然后,只要您需要调用Web服务,就可以使用接口调用该方法。您希望使用该接口,以便在测试期间(使用Rhino Mock、MoQ或TypeMock)交换类包装器。 |
|
|
3
1
您可以向单元测试项目添加服务引用,或者生成客户机存根并将类放入单元测试项目中。 |
|
|
4
1
|
|
|
5
0
在我的Web方法单元测试之上,我有以下内容:
除通常情况外:
此代码来自使用Visual Studio 2008单元测试向导。 |
|
6
0
知道有两种类型的Web服务。那些你自己写的,想要测试的,以及那些你消费的。前者适用上述规则。但是,我会说,有时我看到开发人员针对外部Web服务进行测试。逻辑指示第三方服务不可靠,因此需要更多的测试。在面向对象编程中,最好理解MartinFowler和其他人都告诉我们的关注分离。这意味着我们不应该测试我们自己外部的系统。 但是,我喜欢编写包装类来针对服务提供有用的功能。例如,必应地图具有许多惊人的强大功能。我编写这些测试只是为了确保它们给了我期望的值。虽然不是很广泛,但它们的要点是,如果Web服务因任何原因(身份验证密钥过期等)而死亡,那么可以通过测试服务器通知我。 |
|
|
A B · C#Excel自动调整列避免长文本时出错 9 月前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 9 月前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 9 月前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 9 月前 |