代码之家  ›  专栏  ›  技术社区  ›  Michael Barton

使用Cucumber和Webrat测试AuthLogic开放ID的最佳方法是什么?

  •  3
  • Michael Barton  · 技术社区  · 15 年前

    我在使用Cucumber和Webrat在Rails应用程序中测试AuthLogicOpenID身份验证时遇到了问题。跟随Ryan Bates的 excellent screencast 我可以用打开的ID插件安装AuthLogic。当我使用浏览器登录时,OpenID可以工作,但到目前为止,我还无法使用Cucumber和Webrat测试这个应用程序。

    我试过用 rots 作为虚拟的开放ID服务器。同样,当我在浏览器中尝试它的时候,这是可行的,但是Webrat不会正确地按照所需的get/post重定向来验证虚拟的开放ID服务器。

    This answer on SO suggests 重写身份验证方法以始终返回成功的登录,但此方法似乎不像集成测试应用程序。

    功能测试AuthLogic开放ID的最佳方法是什么?我还需要麻烦吗?我是否应该在用户已经登录时测试这些操作,并假定OpenID可以工作?

    2 回复  |  直到 15 年前
        1
  •  2
  •   MatthewFord    15 年前

    你试过测试助手吗 set_session_for(@user) ?我假设这个插件已经测试过了,实际上没有必要再测试它(除非你已经修改了它)。

        2
  •  1
  •   Michael Barton    15 年前

    我在AuthLogic邮件列表上问了同样的问题。我得到了一个很好的答案,指导我使用www:mechanise和一些补丁代码,使webrat遵循所有重定向。这似乎适用于使用AuthLogicOpenID和本地开放ID服务器进行Rails集成测试。

    这里是 discussion thread.