我应该如何使用visual studio 2012对Web服务(asmx)进行自动化单元测试?。我的Web服务包含许多方法(108),其中某些函数的依赖性在执行其他函数之前执行。其次,相同的单元测试将来会用于单元测试WCF服务(几乎相同)。那么在编写单元测试时如何注意?
答案 0 :(得分:2)
这里有一个定义问题。您正在谈论'单元测试WCF服务',这是不可能的,因为单元测试 - 通过定义 - 单独运行,因此不能调用Web服务。换句话说,您正在使用集成测试。
你不应该有重复的测试。创建直接测试业务逻辑的单元测试,两者之间不进行任何WCF或asmx交互。这样你只需要测试一次。除此之外,您还可以创建一些集成测试来测试是否可以对Web服务进行调用,而无需真正测试业务逻辑(因为您已经测试过了)。
Web服务包含许多方法(108)
看看this article。它描述了一个模型,您可以将每个操作定义为对象,使您的Web服务可以包含单个方法。这使得Web服务非常灵活,可维护且易于测试。