Node.js和coffeescript - 使用Mocha和Zombie测试应用程序

joq*_*que 1 bdd mocha.js node.js coffeescript zombie.js

我正在尝试测试我已经开始使用Mocha和Zombie的node.js webapp.但有些事情我仍然不理解,并希望得到一些帮助.请注意我使用快递

假设我正在测试用户身份验证.显然有两个部分:1 - 用户界面2 - 行为,涉及控制器和模型所以,我决定将两个部分分开.对于UI,我决定使用僵尸.以下链接包含我为用户身份验证编写的UI测试:https://gist.github.com/7e45d6884ce2d32e933d 基本上,我的用户身份验证表单包含用户名和密码输入字段以及登录按钮.我对四种情况感兴趣:当至少有一个输入字段为空时以及两者都是由用户提供时.虽然现在四个测试通过,但我仍然不相信它们是正确的测试,或者它是否足够或做对了.你们(BDD专家)怎么想?谢谢何塞

fen*_*ent 6

  1. 由于您的测试似乎是异步的,因此您应该调用done函数回调it函数

    it 'should do something', (done) ->
      browser.visit 'somepage', {debug: true}, ->
        done()
    
    Run Code Online (Sandbox Code Playgroud)
  2. 您可能还希望在发生错误身份验证时检查应用程序打印的错误消息.

  3. 除了检查所有字段之外,如果您的应用程序提供了该错误消息,您还应该测试有效的身份验证,错误的密码和现有的用户名.如果你每隔几分钟只允许一些尝试登录,那么也要测试一下.