I może być czegoś brakuje, ale siedzę w tym scenariuszu:Ruby on Rails: testowanie jednostkowe modele non ActiveRecord i nadal załadować osprzętu
mam non modelu ActiveRecord, które chcesz przetestować. Otrzymałem jego klasę przypadków testowych od: Test :: Unit :: TestCase.
Jednak klasa przypadków testowych dla modelu, używa w sobie innych klas modeli klasy activerecord i chcę załadować dla nich urządzenia. Moim problemem jest to, że metoda klasy Oprawy jest dostępna tylko wtedy, gdy podklasy klasy przypadków testowych z ActiveSupport :: TestCase (jest zdefiniowany w ActiveRecord :: TestFixtures który zostanie włączonych ActiveSupport :: TestCase).
Każda pomoc, która uruchamia testy daje mi błąd: niezdefiniowana metoda "urządzenia" (co jest zrozumiałe) iw przypadku, gdy wyprowadzam moją klasę przypadków testowych z ActiveSupport :: TestCase, skarży się, że nie ma odpowiedniej tabeli DB. Ponadto nie chcę tworzyć obojętnej tabeli do tworzenia kopii zapasowej mojej klasy modelu.
Dziękuję za tonę!
Dzięki za tonę! Właściwie skomentowałem wszystkie urządzenia (: wszystkie) w test_helper, a następnie jawnie zadeklarowałem urządzenia, które chcę załadować w klasie testowej niezwiązanej z modelem AR, i to teraz działa. Odpowiednie urządzenia (: wszystkie) próbował połączyć się z odpowiednią tabelą DB, której tam nie było, a więc zgłaszał błąd. –
W jaki sposób zadeklarowałeś urządzenia, które chcesz załadować w klasie testowej modelu innej niż AR? – barelyknown
@VaibhavGumashta Tak, wszystkie urządzenia (: wszystkie) również powodowały u mnie problemy. Równie dobrze możesz je zadeklarować w klasach, w których ich potrzebuję. +1 dla was obojga. – Ben