我们有一个提供功能的 .Net 组件。我们有一个 Restful Web API 服务,世界将使用它来调用该功能。我们编写了使用 OWIN 调用我们的 Web API Controller 的测试。
过去,我一直将这些称为“集成测试”,因为服务是一个单独的组件。但是,我尊敬的另一位开发人员告诉我,这不是集成测试,而是“功能测试”。
我查看了 Defintion of Functional Testing和 Definition of Integration Test 的定义对于应该调用 RESTful 服务测试的测试,没有一个是我的明显赢家。
它是集成的还是功能性的?是否有任何权威来源可以用来明确回答这个问题(因为我不希望我的问题因“征求意见”而被关闭)?
最佳答案
功能测试是一个黑盒练习,如您发布的功能测试定义链接中所述。这意味着测试是在不了解系统内部工作原理(例如代码)的情况下进行的。您可能会对 API 是否按预期端到端工作感兴趣;用户在使用 API 时是否收到正确的响应?如果 REST API 在您的系统之外进行测试,那么它就是功能测试。
如果 API 是从您的代码库中测试的,那么这是在测试两个或多个模块之间的集成,因此归类为集成测试。这可能涉及测试依赖模块是否以正确的格式发送正确的数据、接收预期的数据。
有关更多信息,请查看 ISTQB 的任何信息,ISTQB 是公认的软件测试机构。这是 ISTQB 词汇表的链接:http://www.software-tester.ch/PDF-Files/ISTQB%20Glossary%20of%20Testing%20Terms%202.4.pdf
关于testing - 测试服务是功能测试还是集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35301330/