gpt4 book ai didi

testing - 功能无法访问 Rspec 帮助程序方法

转载 作者:行者123 更新时间:2023-11-28 20:40:07 26 4
gpt4 key购买 nike

我正在学习 TDD 并运行一些功能测试,但在使用辅助方法时遇到了问题。

我从功能测试中提取了以下方法:

todo_helper.rb

module Features
def create_todo(todo_title)
click_on "Add a new todo"
fill_in "Title", with: todo_title
click_on "Submit"
end
end

但是,当我运行功能测试时出现以下错误。

Failures:

1) User creates todo successfully
Failure/Error: create_todo 'Buy Milk'

NoMethodError:
undefined method `create_todo' for # <RSpec::ExampleGroups::UserCreatesTodo:0x007fb1f351b150>
# ./spec/features/user_creates_todo_spec.rb:8:in `block (2 levels) in <top (required)>'

Finished in 0.34992 seconds (files took 2.01 seconds to load)
1 example, 1 failure

Failed examples:

rspec ./spec/features/user_creates_todo_spec.rb:5 # User creates todo successfully

我有两个正在使用此方法的测试,但都失败了。这是上面的:

user_creates_todo_spec.rb

require "rails_helper"

feature "User creates todo" do
scenario "successfully" do
sign_in

create_todo 'Buy Milk'

expect(page).to have_css '.todos li', text: 'Buy Milk'
end
end

这很奇怪,因为我创建了另一个用于上述 sign_in 方法的助手,它工作正常,但无法弄清楚为什么第二个助手不起作用。我在原始功能中隔离了 create_todo 方法,它在每个功能中传递,但不是作为助手。感谢您的帮助。

最佳答案

确保在 RSpec 配置(spec_helper.rbrails_helper.rb)中需要并包含包含辅助方法的模块:

require "todo_helper"

RSpec.configure 中:

config.include Features

关于testing - 功能无法访问 Rspec 帮助程序方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36817469/

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