Obserwowałem bardzo dziwne zachowanie podczas testów nosa podczas używania obiektu @ mock.patch.object funkcja:Uruchamianie wielu testów powoduje zakłócenia w testach nosa podczas łatania przy użyciu funkcji @ mock.patch.object, a czasami także podczas używania `with mock.patch.object`
Po uruchomieniu wielu testów w tym samym czasie uzyskuję inne wyniki niż wtedy, gdy uruchamiam je pojedynczo. W szczególności zdarza się, że przesłonięcie obiektu @ mock.patch.object wydaje się nie mieć żadnego skutku, w niektórych przypadkach, gdy wykonuję wiele prób naskórka. Po zastosowaniu poprawki z with
ten problem nie występuje.
@patch.object(ObjectToOverride,....)
def test_mytest()
# check the override
Przy wykorzystaniu metody with
zastosować poprawkę, kolejne testy nie są dotknięte przez poprzednich testów.
def test_mytest()
with patch.object(ObjectToOverride,....):
# check the override
Wszelkie sugestie, co może powodować takie zachowanie, są mile widziane.
Po uruchomieniu wielu testów obiekt ObjectOverride zostanie załadowany i użyty w poprzednich testach. Ale nie rozumiem, dlaczego użycie z dekoratorem ma wpływ na to, czy obiekt może być dalej łatany.
W obu przypadkach mogę zaobserwować pewne zakłócenia między testami. Jak można tego uniknąć w teście nosa?
Jeśli mógłbyś podać konkretny przykład kodu, który odtwarza ten błąd, byłoby to pomocne. Ponieważ nie mogę odtworzyć problemu i nie mogę naprawdę pomóc. – Grr