2013-02-06 84 views
1

我想做一个冒烟测试,以测试我的网络应用程序和服务器本身之间的连接。有人知道如何去做?另外我想做一个验收测试来测试我的整个应用程序。你推荐哪个工具?如何在Javascript应用程序中进行烟雾测试和验收测试?

我的技术栈是:主干和require.js和jQuery的移动和茉莉花的BDD测试。

Regards

+0

您是手动执行此测试(手动,例如在浏览器中打开页面)还是自动执行(编写代码以测试此功能)? – Uooo

+0

我想在詹金斯做一个运行测试的工作,执行验收和烟雾测试。目前我正在调查水豚,你使用过这个工具吗? – McSas

回答

0

我发现了一篇博文,作者解释了如何在rails应用程序之外使用水豚,黄瓜和硒,因此可用于测试JavaScript应用程序。这里是链接:http://testerstories.com/?p=48

1

在做BDD时,你应该总是嘲笑合作者。测试应该快速运行,并且不依赖于任何外部资源,如服务器,API,数据库等。

您希望在f.e中进行的方式。茉莉花是宣布一个伪装成服务器的间谍。然后,您继续确定特定场景或示例中间谍的反应。

如果您希望自己的应用程序处于环境不受控状态,这是最好的方法。运行詹金斯工作时非常需要 - 在工作周围构建整个基础设施将很难再现。

使表示服务器和规范中的间谍/模拟对象定义外部源的行为方式 - 这样您可以专注于在特定情况下应用程序提供的行为。

+0

非常感谢您回答karolsojko。不过,我不想做单元测试,我想做一个与詹金斯合作的验收测试。我认为最好的选择是水豚,你有没有使用这个工具?你推荐哪种工具进行验收测试? – McSas

+1

对于验收测试(或真实的StoryBDD),一个好的选择是Cucumber.js(https://github.com/cucumber/cucumber-js)或Kyuri(https:// github。com/nodejitsu/kyuri)挑选你的毒药;) – karolsojko

+0

谢谢karolsojko,一小时前我可以设置一个ruby +水豚+黄瓜应用程序,以便在jenkins中运行并成为部署管道的一部分:) – McSas

0

这不是一个完整的答案,但我们用于我们非常类似的堆栈的一个工具是mockJSON。这是一个jQuery插件,做了很好的工作,既:

  1. 拦截的URL调用,而是发回模拟数据和
  2. 因此很容易产生基于模板的随机模拟数据。

最好的部分是它完全是客户端,所以你不需要设置任何外部的东西来获得体面的测试。它不会测试到您的服务器的实际网络连接,但它可以做一个非常好的工作来验证您的服务器将会反弹的那种类型的数据。 FWIW,我们使用Mocha作为我们的测试框架,并且没有任何麻烦将它与我们的BDD工作集成在一起。

original mockJSON repo仍然不错,虽然它有一段时间没有更新。我和我的同事一直试图通过my own fork中的补丁和功能继续进行。

相关问题