edit: uwaga, pytanie 288805 jest podobna, ale ja pytam konkretnie w jaki sposób wybrać MSTest domyślny testowego zamówienia. Zobacz resztę tego pytania. Dziękuję Eilon za the link.W jaki sposób MSTest określa kolejność uruchamiania metod testowych?
Przyglądałem się starszemu projektowi MSTest. Testy zawsze trwały w tej samej kolejności. Porządek nie był alfabetyczny i podskakiwał między metodami w dwóch plikach * .cs TestMethod.
Nie zmieniłem fizycznej kolejności dotychczasowego kodu . Zrobiłem dla mojej wygody dołączenie "MSTest01" do nazwy metody pierwszego testu, "MSTest02" do nazwy metody drugiego testu, et cetera, .
Ku mojemu zdziwieniu zmieniła się kolejność wykonywania funkcji TestMethod ; # 3 pierwszy, # 6 sekunda, # 5 trzeci, et cetera.
Kiedy usunięte „MSTestnn” ciągi z nazwy funkcji TestMethod z , ich kolejność wykonywania zmienił z powrotem do poprzedniego zamawiającego, czyli jeden test z pierwszego pliku .cs, dwa testy z drugi .CS plik, pięć testów z pierwszego pliku .cs, , i tak dalej.
Wydaje się, że lokalizacja pliku nie może być czynnikiem podczas TestMethod nazwy funkcji może być czynnikiem.
PYTANIE: czy ktoś może wyjaśnić, w jaki sposób MSTest decyduje o kolejności wykonywania funkcji TestMethod?
Zazwyczaj nie należy przejmować się kolejnością przeprowadzania testów jednostkowych. Biorąc to pod uwagę, jest to intrygujące pytanie. – Mathias
@ Mathias Zgadzam się. Podoba mi się sposób, w jaki xUnit.net uruchamia testy w losowej kolejności. Losowa kolejność jest najlepszym wyborem, ponieważ może ujawnić zależności sekwencyjne, które nie powinny istnieć. Zobacz moje komentarze do Troya. – gerryLowry
? dziwne, moje komentarze do Troja wydają się zniknąć wraz z jego pytaniem. – gerryLowry