Rails 6.1에 올리면 undefined method `file_fixture_path' for FactoryBot::SyntaxRunner:Class가 되었습니다.
2400 단어 Rails6RSpecRailsFactoryBot
배경
Rails 버전을 6.0 계에서 6.1 계에 올렸을 때 spec이 대량으로 fail
Failure/Error: sample_image { fixture_file_upload("fixtures/sample.png") }
NoMethodError:
undefined method `file_fixture_path' for FactoryBot::SyntaxRunner:Class
# ./spec/factories/**.rb:**:in `block (3 levels) in <main>'
확인
Rails의 릴리스 노트를 확인하면 아래의 설명을 발견.
분명히 fixture_file_uploaded가 사용하는 *_path가 변경된 것 같습니다.
https://魏Tub. 작은 m/온 ls/오리 ls/레 땀 s/그 외 g/V6.1.0
파일을 찾을 수 없으며 NoMethodError가 발생한 배경을 보면 FactoryBot 내부에서 file_fixture_path가 해결되지 않았습니다.
↓Rails의 PR은 이쪽
htps : // 기주 b. 코 m/라이 ls/라이 ls/푸 l/39086
대처
rails_helper.rb
로 ActiveSupport::Testing::FileFixtures
를 include 하는 것으로 해결할 수 있었습니다.
FactoryBot::SyntaxRunner.class_eval do
include ActionDispatch::TestProcess
include ActiveSupport::Testing::FileFixtures
end
Reference
이 문제에 관하여(Rails 6.1에 올리면 undefined method `file_fixture_path' for FactoryBot::SyntaxRunner:Class가 되었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tatematsu-k/items/1cdd946cd38e69d16340
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Failure/Error: sample_image { fixture_file_upload("fixtures/sample.png") }
NoMethodError:
undefined method `file_fixture_path' for FactoryBot::SyntaxRunner:Class
# ./spec/factories/**.rb:**:in `block (3 levels) in <main>'
Rails의 릴리스 노트를 확인하면 아래의 설명을 발견.
분명히 fixture_file_uploaded가 사용하는 *_path가 변경된 것 같습니다.
https://魏Tub. 작은 m/온 ls/오리 ls/레 땀 s/그 외 g/V6.1.0
파일을 찾을 수 없으며 NoMethodError가 발생한 배경을 보면 FactoryBot 내부에서 file_fixture_path가 해결되지 않았습니다.
↓Rails의 PR은 이쪽
htps : // 기주 b. 코 m/라이 ls/라이 ls/푸 l/39086
대처
rails_helper.rb
로 ActiveSupport::Testing::FileFixtures
를 include 하는 것으로 해결할 수 있었습니다.
FactoryBot::SyntaxRunner.class_eval do
include ActionDispatch::TestProcess
include ActiveSupport::Testing::FileFixtures
end
Reference
이 문제에 관하여(Rails 6.1에 올리면 undefined method `file_fixture_path' for FactoryBot::SyntaxRunner:Class가 되었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tatematsu-k/items/1cdd946cd38e69d16340
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
FactoryBot::SyntaxRunner.class_eval do
include ActionDispatch::TestProcess
include ActiveSupport::Testing::FileFixtures
end
Reference
이 문제에 관하여(Rails 6.1에 올리면 undefined method `file_fixture_path' for FactoryBot::SyntaxRunner:Class가 되었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tatematsu-k/items/1cdd946cd38e69d16340텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)