/ / Testowanie ORM dla RethinkDB - python, testowanie jednostkowe, testowanie, orm, rethinkdb

Testowanie ORM dla RethinkDB - python, testowanie jednostkowe, testowanie, orm, rethinkdb

Jestem bliski ukończenia ORM dla RethinkDB w Pythonie i utknąłem w testach pisania. Szczególnie w tych, w których uczestniczą save(), get() i delete() operacje. Jaki jest zalecany sposób sprawdzenia, czy mój ORM robi to, co ma robić podczas zapisywania, usuwania lub uzyskiwania dokumentu?

Obecnie dla każdego testu w moim pakiecie tworzę bazę danych, zapełniam ją wszystkimi tabelami potrzebnymi modelom testowym (zajmuje to dużo czasu, prawie 5 sekund / test!), Uruchom operację na moim modelu (np .: save()), a następnie ręcznie uruchom zapytanie do bazy danych (używając sterownika Python RethinkDB), aby sprawdzić, czy wszystko zostało zaktualizowane w bazie danych.

Teraz czuję, że to nie jest właściwe, może jestinny sposób na napisanie tych testów, a może mogę zaprojektować testy bez uruchamiania wielu zapytań do bazy danych. Każdy pomysł na to, jak mogę to poprawić lub zasugerować, jak to musi być naprawdę Gotowe?

Odpowiedzi:

3 dla odpowiedzi № 1

Możesz utworzyć wszystkie bazy danych / tabele tylko raz dla wszystkich testów.

Możesz także użyć katalogu surowych danych: - Uruchom RethinkDB - Utwórz wszystkie swoje bazy danych / tabele - Zatwierdź to.

Przed każdym testem skopiuj katalog danych, uruchom RethinkDB na kopii, a następnie po zakończeniu testu usuń skopiowany katalog danych.