【问题标题】:How to render a Rails view into a string in a feature spec如何将 Rails 视图呈现为功能规范中的字符串
【发布时间】:2018-12-07 16:05:20
【问题描述】:

在 Rails 5.2.2 应用程序的 RSpec 功能规范(集成测试)中,我想将视图呈现为需要进一步处理为 PDF 文件的字符串(使用 wkhtmltopdfwicked_pdf宝石)。

我正在努力将 Rails 视图呈现为字符串。

我试过这个:

something = create :something # A FactoryBot factory
controller = SomeThingsController.new
view = controller.render_to_string '/some_things/show.pdf.haml',
    locals: { :@something => something }

这种方法有效,但在我的视图尝试使用未定义为没有有效 HTTP 请求的 root_url 时失败。

有许多模糊相关的问题,但它们(据我所知)要么是指古老的 Rails 版本,要么与功能测试无关。

【问题讨论】:

    标签: ruby-on-rails rspec integration-testing wicked-pdf


    【解决方案1】:

    自己找到了解决方案...如果其他人有同样的问题,我会在这里发布。

    在 RSpec 和 Capybara 的功能测试中,页面内容可通过 page.html 访问,在我的例子中包含有效的 PDF。

    something = create :something # A FactoryBot factory
    visit something_path(something)
    pdf = page.html
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-19
      • 1970-01-01
      • 2023-03-20
      • 2016-10-10
      • 2013-09-28
      相关资源
      最近更新 更多