gpt4 book ai didi

capybara - 如何在 Capybara 步骤中包含 Rails View 助手

转载 作者:行者123 更新时间:2023-12-05 01:09:17 25 4
gpt4 key购买 nike

我有一个步骤定义:

Then(/^I should see the total price of the products$/) do
# assumes all existing products are in the cart
total = Product.find(:all).inject { |sum, p| sum + p.price }
page.find(".total").should have_content number_to_currency(total)
end

这爆炸了 undefined method 'number_to_currency' for #<Cucumber::Rails::World:0xbef8d18> (NoMethodError)
我可以通过模拟 number_to_currency 的行为来模拟“总数” helper,但我更愿意重新使用 Rails 的 helper,因为在这一步中,我对格式不感兴趣,只是计算和呈现总数。

如何在 capybara 中包含 NumberHelper 或任何 View 助手以便从步骤定义访问?

最佳答案

我在这里将 helper 包含到我的 cucumber 测试中的方式:

  • 您在支持文件夹下创建一个文件 world.rb(或您想要的任何名称)。在 my world.rb 中,我定义如下:
    module Helper

    include ProjectHelper
    include ProductBacklogHelper
    include ApplicationHelper
    include Capybara::DSL
    include Prickle::Capybara

    end #end Module
    World(Helper)

  • 您应该在 world.rb 中包含具有“number_to_currency”功能的帮助文件

    我希望这能帮到您

    关于capybara - 如何在 Capybara 步骤中包含 Rails View 助手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16034916/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com