[RUBY] Ich habe in RSpec den Fehler "undefined method` create '" erhalten

Für mich, als ich lernte, RSpec auf einem Controller mit Alltagsschienen zu testen - Erste Schritte mit Schienen Testen mit RSpec Ich habe etwas Neues gelernt und möchte es daher ausgeben.

Problem

Als ich heute über RSpec studierte,

reviews_spec.rb


 review = FactoryBot.create(:review)

Die Beschreibung

reviews_spec.rb


  review = create(:review)

Ich wusste, dass es abgekürzt werden kann, also habe ich es selbst versucht.

Nach dem Ausführen von "bundle exec rspec" wurde jedoch der folgende Fehler angezeigt.

Terminal


Failure/Error: review = create(:review)
     
     NoMethodError:
       undefined method `create'für …… (unten weggelassen)

"Ich frage mich, ob das Setup nicht gut gelaufen ist ..." Ich dachte, also lass mich auf Junichi Itos Blog verweisen ( Link hier ). Ich habe das Rails-Setup überprüft und andere Nachforschungen angestellt.

Lösung

Als Ergebnis fand ich heraus, dass rails_helper die folgende Beschreibung benötigt. (<a href="https://qiita.com/jonakp/items/0f70eece4fe7980f81a6" "target="_blank" rel="noopener noreferrer"> Klicken Sie hier für Referenzartikel )

rails_helper.rb


 #Bitte schreiben Sie unten

 RSpec.configure do |config|
    config.include FactoryBot::Syntax::Methods
  end

Es scheint, dass ein Fehler wie dieser ausgegeben wurde, weil diese Beschreibung weggelassen wurde.

Das war am Anfang

reviews_spec.rb


 review = FactoryBot.create(:review)

Die Beschreibung

reviews_spec.rb


  review = create(:review)

Ich konnte es zu einer Abkürzung machen.

Diesmal war es die Erstellungsmethode, aber es ist dasselbe, wenn Sie eine Abkürzung mit der Erstellungsmethode schreiben möchten.

Recommended Posts

Ich habe in RSpec den Fehler "undefined method` create '" erhalten
[Mockito] 3.2.4 → Nach dem Update auf 3.3.x ist ein Fehler aufgetreten (obwohl Iketenai)
Beim Verschlüsseln mit Node + Docker wurde eine Fehlermeldung angezeigt
Ich blieb in File stecken
Bei der Verwendung von nextInt, nextLine und substring ist ein Fehler aufgetreten.
Ich habe einen Fehler bekommen! * Es gibt keine interaktive Anforderungsvorlage
[RSpec] Als ich die Ansichtsdatei getestet habe, die die Hilfsmethode verwendet hat, habe ich ActionView :: Template :: Error: erhalten. ..
Ich habe eine E-Mail in Java gesendet
Undefinierter lokaler Variablen- oder Methodenfehler mit teilweiser Vorlagenerfassungsoption
Ich habe eine Anmerkung in Java gemacht.
Ich sehe keinen Fehler bei der Installation des Rails-Bundles ... der Lösung
Ich möchte bei der Registrierung in der Datenbank eine Fehlermeldung anzeigen
Ich war süchtig nach Spring's @Transactional
In WSL2, als ich "Docker-Compose Up" machte, bekam ich eine Fehlermeldung, dass die sh-Datei nicht gefunden wurde.
Nuxt.js × Erstellen Sie eine Anwendung im Rails-API-Modus
Wo ich im heutigen "Rails Tutorial" (2020/10/08) stecken geblieben bin
Ich möchte eine E-Mail in Java senden.
Wo ich im heutigen "Rails Tutorial" (2020/10/05) stecken geblieben bin
Beliebige Suchmethode in einem Array mit binärer Suche
Wo ich im heutigen "Rails Tutorial" (2020/10/06) stecken geblieben bin
Wo ich im heutigen "Rails Tutorial" (2020/10/04) stecken geblieben bin
Ich habe versucht, eine Anwendung in 2 Sprachen zu entwickeln
Ich habe versucht, Alexa-Fähigkeiten mit Java zu erstellen
Rails-Fehler undefinierte Methode `image_name'for nil: NilClass-Behandlung
Überprüfen Sie die Argumente für Methodenaufrufe in Blöcken mit RSpec
Wo ich im heutigen "Rails Tutorial" (2020/10/07) stecken geblieben bin
Eine Geschichte über einen Fehler während der Migration in Docker PHP Laravel
Ich habe eine Frage. Beim Abspielen eines Videos in Listview mit Android tritt ein Fehler auf.
Beim Versuch, sbt zu installieren, um eine Scala-Entwicklungsumgebung zu erstellen, ist ein Fehler aufgetreten
[Rails] Lösung, wenn bei Verwendung von Capybara mit Rspec der Fehler "undefined method` visit '" angezeigt wird
[JUnit] Im JUnit-Test, der bis zum Vortag normal funktionierte, trat plötzlich ein Initialisierungsfehler auf. Hintergrund und Lösungsmemorandum