Zostałem przydzielony do testowania bazy danych mongodb z zaplecza Java. Powiedziano mi, że muszę stworzyć bazę danych w całości wykorzystując skrypt do tego zadania.

Ale mam trudności ze zrozumieniem korzyści płynących z tworzenia bazy danych od podstaw za pomocą skryptu, zamiast posiadania stałej testowej bazy danych. Tam, gdzie wyobrażam sobie, dane powinny być wstawiane podczas uruchamiania i czyszczone po zniszczeniu w obu przypadkach.

Dlaczego z perspektywy testowania tworzenie i usuwanie bazy danych podczas testowania jest korzystne?

0
Jonas Grønbek 3 kwiecień 2020, 01:08

3 odpowiedzi

Najlepsza odpowiedź

Czasami testy kończą się niepowodzeniem i dlatego może się zdarzyć, że faza porzucenia nigdy nie zostanie osiągnięta.

Ponadto usunięcie bazy danych jest najszybszym i najskuteczniejszym sposobem jej wyczyszczenia, chociaż być może nie jest to najbardziej efektywny sposób. Ale to gwarantuje, że nie zapomnisz o czymś w rutynowym sprzątaniu.

Szczególnie w przypadku testów wydajnościowych ważne jest, aby baza danych była dokładnie w tym samym stanie dla każdego uruchomienia, w przeciwnym razie czasów wykonywania nie można porównać ze sobą: poprawa w kolejnym uruchomieniu mogłaby zostać spowodowana tylko dlatego, że obszary tabel zostały już zwiększone lub podobne rzeczy, a nie dlatego, że optymalizacja kodu zadziałała…

1
tquadrat 2 kwiecień 2020, 22:46

W większości przypadków test oznacza predefiniowane środowisko i oczekiwaną reakcję tego środowiska na nasze zakładane stany. tak więc do weryfikacji potrzebujemy czystego zautomatyzowanego i powtarzalnego procesu tak bardzo, jak to możliwe, bez ingerencji w ręczną konfigurację lub konfigurację.

W procesie tworzenia oprogramowania staramy się uwzględniać jak najwięcej przypadków testowych dla QA produktu. kiedy mówimy o zbyt wielu przypadkach testowych, każdy z nich powinien być odizolowany od innych. jeśli nie jest dobrze wyizolowany, wynik może się różnić w każdej rundzie wykonania i ostatecznie nieprawidłowy proces testowania.

0
Saeed Alizadeh 2 kwiecień 2020, 23:07

Nie muszą. Jednak:

  1. Tracisz przenośność.
  2. Nie masz znanego stanu początkowego testu.
0
hd1 2 kwiecień 2020, 23:12