PHPUnit testy funkcjonalne

0

Witam

Proszę o wyrozumiałość i nie odsyłanie do google bo tam już spędziłem kawał czasu :(
Mam problem mam przetestować odczyt/zapis na bazie i tu moje pytanie jak usunąć po testach zmiany w bazie danych w pliku z testami?

PHPUnity+Symfony

0

robić testy na bazie testowej a nie produkcyjnej

0

tylko testy zapisują zmiany w bazie, po każdym teście trzeba robić rebuild bazy a chciałbym to ominąć

0

no to jeśli robią insert to po prostu usuń te wpisy, a jak robią update to albo zostaw jak jest albo wcześniej pobierz stare wartości i do nich wróć.
Rozumiem, że commit danych w teście musi być? Bo jeśli nie to po prostu na końcu zrób roolback i po sprawie

0

testy sa ?funkcionalne?, klient testowy wypelnia formularz ktory jest przesylany do kontrolera nastepnie nastepuje przekierowanie na inny adres
nie wiem o jaka metode sie zaczepic, czytalem cos o pdo, rollback, setUp(i jej podobnych metodach) ale tak jak pisalem jestem zielony w tych sprawach, nie wychodzi mi to

0

Powiem szczerze nie dokładnie rozumiem, co robisz. Czy chodzi Ci o:

  • testy funkcjonalne, czyli w największym skrócie "przeklikiwanie" aplikacji - testowanie jej funkcjonalności bez odnoszenia się do kodu;
  • testy jednostkowe (PHPUnit), czyli automatyczne testowanie na bieżąco kodu aplikacji.

Symfony posiada ponadto nakładkę (klasę WebTestCase rozszerzającą PHPUnit), umożliwiającą zasymulowanie akcji użytkownika - wysłanie żądania GET-em i sprawdzenie, czy wyrenderowana strona lub element odpowiada oczekiwaniom.

Napisz coś więcej, to postaram Ci się udzielić dokładniejszej odpowiedzi.

[Mirek]

0

Są to testy funkcjonalne lub integracyjne nie jestem pewny - przeklikiwanie aplikacji
tworzę klienta ->przekierowanie na strone z folmularzem dodania produktu -> formularz jest przesłany do kontrolera i dane są zapisywane w bazie danych.
I teraz problem w tym że drugi raz testy nie przejdą ponieważ dane się zapisały w bazie. Nie bardzo wiem jak przywracać po testach pierwotny stan bazy. Baza danych testowa czy może jest jakaś klasa do tego. Z webtestcase korzystam.

0

W takim razie proponuję zainteresować Ci się snapshotami w bazie. Używając ich, w ciągu kilku sekund przywracasz określony, wcześniej zapamiętany stan bazy i możesz kontynuować testy.

[Mirek]

1 użytkowników online, w tym zalogowanych: 0, gości: 1