Хотя есть целая куча вещей, чтобы узнать о том, что магия за Rake
, Rails
, Minitest
при запуске rake test
, но в основном, если вы пытались получить некоторые фундаментальные понять из ООП и Руби, прежде чем попасть до Rails, вы не сделаете этого в своей консоли.
При запуске assert true
непосредственно в консоли Rails, это означает, что вы звоните assert
метод объекта под названием main
. Однако метод assert
определяется в assertions.rb
под Assertions
модуля (можно проверить, запустив gem open minitest
или найти его там, где ваши драгоценные камни расположены), который входит в Test
класса. Это означает, что метод assert
должен вызываться в экземпляре класса Test
, что на самом деле происходит, когда вы запускаете тесты в Rails. main
- это всего лишь экземпляр класса Object
, где метод не определен.
Но странно то сообщение, которое вы получили от консоли, она должна быть
NoMethodError: undefined method 'assert' for main:Object
Пожалуйста вывесить весь блок кода и полный стек ошибок трассировки. –
Эта ошибка не имеет ничего общего с этой строкой кода. Можем ли мы увидеть остальное? – sevenseacat
Пожалуйста, напишите больше информации, чтобы мы могли помочь. – Beengie