Тестване на ActiveRecord?

  1. Здравейте, ако някой го е направил, нека сподели: как да си тестваме ActiveRecord класовете? Става въпрос за използване на AR без Rails.

    • Две отделни бази данни - една production и една за тестове. Всеки път тази за тестовете се създава наново и после се изтрива.
    • Чрез ръчно мокване на ActiveRecord::ConnectionAdapters::Column (показано тук)
    • Чрез използване на gem от рода на Mocha
  2. Не мисля, че можеш да го направиш с Mocha. Не мога да си го представя въобще. Обикновено се ползва когато тестваш нещо, от което ActiveRecord зависи. Тогава мокваш AR обектите.

    Това с колонките не ми харесва. Или трябва да е поддържано от библиотеката, или трябва някой да го търкаля и поддържа сериозно. Каубойските изпълнения изпадат в риск (1) да бъдат счупени на следваща версия и (2) да не са добра идея.

    Аз лично тествам с първия вариант - както Митьо каза. Ползвам factory_girl, щото е по-яко от fixture-и.

    Иначе, можеш да пробваш nulldb, обаче вероятно предполага определени pattern-и на употреба на ActiveRecord. Аз лично не съм го ползвал, макар че някой ден би ми било интересно.

Трябва да сте влезли в системата, за да може да отговаряте на теми.