我仍然试图完全理解BDD,我面临一些疑问。 根据我的小经验,我一直在使用它来自动化用户验收测试,我想知道是否可以使用它来测试没有UI的Web API。
在过去,我使用了给定时间的行话来使用BDD,并将步骤映射到UI交互。我用ASP.NET中的Specflow或rails上的ruby中的cucumber / capybara完成了这个。 例如,我们可以有这样的场景:
Given I am in the home page
When I click login button
Then I should see the login page
我目前正在开展的项目有所不同。我们正在实现一个基于Web服务的API,它将由不同类型的客户端使用。像一个iPhone应用程序,Android应用程序和基于asp的Web客户端。因此,我们的主要关注点是后端,而且只是基于。
在这种情况下,从UI的角度来看,不能面对测试。因此,我们的端到端测试基于我们的服务端点。我们将一些输入参数传递给服务调用并检查输出。 我们可以使用BDD做到这一点吗?这是正确的吗? 或者使用像FitNesse这样的其他东西会更好吗? 嗯..正在使用FitNesse做BDD吗?
答案 0 :(得分:4)
我认为你可以在BDD中做你的写作。我不确定那些关于使用SpecFlow测试web服务的2个链接是否会对你有所帮助,但如果你还没有看到它们,请看看它们。
http://codedetective.blogspot.co.uk/2012/10/testing-webservices-with-specflow.html
http://www.creamdog.se/blog/2011/02/24/webservices-automated-tests-using-specflow-and-babelfish/
答案 1 :(得分:0)