问题标签 [shoulda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3051 浏览

ruby-on-rails - 单元测试rails时的ActiveSupport::TestCase vs Test::Unit::TestCase

我最近注意到,如果我的测试子类 Test::Unit::TestCase 在我的测试运行后没有清理我的测试数据库。如果我的测试是 ActiveSupport::TestCase 的子类,则所有内容都已正确清理。

谁能解释为什么,和/或提供使用一个与另一个的解释?

我正在使用 shoulda 和 factory_girl。

谢谢。

0 投票
4 回答
6217 浏览

ruby-on-rails - 在 Rails 控制器测试中,有没有办法模拟特定的远程 IP?

根据客户端的 IP 地址,我的应用程序中的某些功能会有所不同。有没有办法在 Rails 功能测试中进行测试?我正在使用 Test::Unit 和 Shoulda。

0 投票
3 回答
994 浏览

ruby-on-rails - 打印 Rails 应用程序中所有测试的列表

是否有一个简单的 ruby​​ 或 rails 命令来获取应用程序中所有测试的列表?我主要使用Shouda,但如果有一个红宝石解决方案,不管测试套件也可以工作。

0 投票
2 回答
192 浏览

ruby-on-rails - 我应该在哪里放置 Rails 单元测试的通用设置代码?

我想在所有单元测试之前存根一个 Web 服务代理。我可以在每个单元测试中调用一些共享代码,但我想知道是否有更好的方法。

我正在使用应该。

谢谢

0 投票
1 回答
503 浏览

ruby-on-rails - 应该在 Rails 上 - 应该延迟 render_with_layout

如果有人可以帮助/解释以下内容,我将不胜感激。

我正在尝试使用 shoulda 测试控制器以查看是否使用了正确的布局。

方法 should_render_with_layout 抛出 NoMethodError 而应该 render_with_layout 通过但表示该函数被延迟。

任何帮助将不胜感激。谢谢马特

0 投票
1 回答
425 浏览

ruby-on-rails - Authlogic:在同一个测试中登录两次

使用 Authlogic 进行测试时,有什么方法可以注销并登录另一个用户?

以下测试用例失败

疯狂的是请求会话参数看起来不错......

0 投票
2 回答
593 浏览

ruby - 从 Shoulda 方法访问断言方法

我有一个应该测试 XPath 条件的控制器响应的宏/方法,如下所示:

XPath 匹配和内置断言效果很好。但是,我有一个测试用例,我希望存在一个匹配元素。这是可选块的工作:向调用者公开 XPath 匹配,以便它可以执行附加的/特定于上下文的断言。

不幸的是,当我真正通过一个街区时:

...我收到此错误:

NoMethodError:未定义的方法“assert_equal”为用户::会话控制器测试:类

这是(据我所知)是因为 Shoulda 的工作方式:传递给“should”调用(包括块)的参数是在测试类的上下文中定义的,而不是在测试类的实例中定义的。Test::Unit::Assertions.assert* 是模块实例方法,所以我不能方便地访问它们。

所以,我的问题是:是否有一种方便/惯用的方法可以轻松地从 Test::Unit::Assertions 访问 assert* 方法?该解决方案必须与 Shoulda 一起使用,尽管它不一定需要依赖于 Shoulda;直接的 Ruby 方式就可以了。

0 投票
1 回答
2406 浏览

ruby-on-rails - Rspec + Shoulda + FactoryGirl = 未定义方法 `reflect_on_association'

我有 Rspec + Shoulda + FactoryGirl 并且在尝试调用 Shoulda 的 have_many 或 belongs_to 方法时收到以下错误。“验证”组中使用的所有 Shoulda 方法都可以正常工作:

提前致谢

规范/spec_helper.rb

规格/模型/project_spec.rb

0 投票
1 回答
634 浏览

ruby-on-rails - 如何在没有重复代码的情况下重复测试用例?

我将 shoulda 与 Ruby on Rails 一起使用,并且我有以下测试用例:

它运行良好,但我讨厌我在这里编写的重复代码。所以我希望写一个像下面这样的测试用例。这个测试用例应该运行多次,每次都将 some_bird 的值设置为不同的值。那可行吗?

谢谢,

布莱恩

0 投票
1 回答
223 浏览

ruby-on-rails - 与工厂进行 Rails 测试。事务唯一性问题

由于字段的唯一性限制,我在运行工厂时不断收到验证错误。我正在将 shoulda 与 factory_girl 一起使用。我有一个单元测试和一个功能测试,在数据库中创建了 2 个产品。我可以以任何顺序一遍又一遍地运行“rake test:units”和“rake test:functionals”,一切都是绿色的,但是当我运行“rake test”运行单元后跟函数时,由于唯一性而出现错误.

我还尝试创建模型来打破 2 个不同单元测试中的唯一性,然后我也得到了错误。

我一直在 test_helper.rb 中使用这些设置,但无法正常工作

transactional_fixtures 设置是否对工厂产生任何影响。在测试之间清理数据库的最佳方法是什么?