Rails/Devise - 我应该使用 devise 和 rspec 测试什么?

发布于 2024-09-28 23:18:33 字数 170 浏览 3 评论 0原文

许多程序员使用 devise 作为他们的身份验证解决方案,我想得到他们的建议:

Devise 已经经过测试,但我想知道是否有一些东西可以自己测试(集成/单元/功能测试?)以与标准设备集成我的知识 (我不熟悉shoulda和cucumber,但我了解一些rspec和工厂女孩)

谢谢你的建议!

Many programmers use devise as their authentication solution and I would like to get their advice:

Devise is already tested, but I want to know if there is something to test by myself (integration/unit/funtionnal tests?) for a standard devise integration with my knowledge
(I'm not familiar with shoulda and cucumber, but I know a bit of rspec and factory girls)

Thanks for your advices!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

未蓝澄海的烟 2024-10-05 23:18:33

从单元测试的角度来看,devise 提供了 2 个辅助方法,

sign_in @user          # sign_in(resource)
sign_out @user         # sign_out(resource)

您可能需要它们来测试您的控制器操作是否以正确的方式运行,例如不允许您在未登录时创建帖子。

从集成测试的角度来看,定义一堆黄瓜步骤,它们将执行相同的 sign_in & Sign_out 看起来像 When /^I am Sign in as (\w*)$/ do end 并使用它来进行实际导航,而不是使用 rspec 提供的 rspec 帮助程序。

那应该很好。

From the unit testing perspective, devise provides 2 helper methods

sign_in @user          # sign_in(resource)
sign_out @user         # sign_out(resource)

You might be needing them to test if your controller actions are behaving in a proper way such as not allowing you to create a post when you are not logged in.

From the Inegration testing perspective, define a bunch of cucumber steps which will do the same sign_in & sign_out something that looks like When /^I am signed in as (\w*)$/ do end and use that to do the actual navigation instead of using the rspec helpers provided by rspec.

That should be good.

撧情箌佬 2024-10-05 23:18:33

是的,对于这种情况,Cucumber Stories 是最好的,使用 Javascript 场景,我们还测试了 Facebook Connect 和其他 OAuth 服务,工作得很好:)

Yes Cucumber Stories for this case are the best, using the Javascript Scenario's we do also test Facebook Connect and other OAuth Services, work pretty well :)

瀟灑尐姊 2024-10-05 23:18:33

测试集成可能会很棒。因为这是您集成设备的方式,您可能会犯一些错误。定义一些cucumber特征就可以了。

Testing the integration can be great. Because is how you integrate devise where you can do some error. Define some cucumber feature and it's OK.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文