ruby-on-rails - 使用 Capybara 从 select 中选择任何项目

标签 ruby-on-rails tdd capybara

我正在尝试为我正在开发的一个小 Rails 应用程序编写测试。用户模型与其他用户有 has_many 关系(双向),用户与分配有 has_many 关系。在 UI 端,用户可以选择另一个用户来附加新的任务。我希望能够对此进行测试。现在的问题是,我不知道如何使用 Capybara 从我不知道文本的项目列表中进行选择。我编写了一个 rake 任务来随机生成我的测试数据库,虽然我可以查看数据库并以这种方式编写我的测试,但它当然会在我重置数据库时中断。

我只是测试测试数据库中的分配数量更改为 1。我将 Rspec 与 Capybara 一起使用。

最佳答案

<select>元素的 ID 为“foo”。那么以下应该工作。

option = first('#foo option').text
select option, from: 'foo'

关于ruby-on-rails - 使用 Capybara 从 select 中选择任何项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16774486/

相关文章:

ruby-on-rails - 将 Angular JS 与 Rails 集成

rspec - 使用 capybara 检查可见性

html - 获取 capybara 的属性值

ruby-on-rails - 可以避免 Heroku 上的 ActiveRecord::ConnectionTimeoutError 吗?

ruby-on-rails - ActiveRecord::Base.connection.execute 与 Postgres 受影响的行

iphone - iOS 测试驱动开发 : Testing a method that uses UIVIew animateWithDuration:animations:completion:

javascript - Karma webpack - 无法处理 js 中的 css 导入

ruby-on-rails - RSpec 和 capybara : how to determine if a select control has a specific option selected?

ruby-on-rails - 避免 current_user 每次都点击数据库? ruby on Rails

tdd - TDD 所需的基础设施?