Bir JUnit raporuna bakın. JUnit zaten pakete göre düzenlenmiştir. Her paketin her biri birden fazla TestCas çalıştıran TestSuite sınıflarına sahiptir (veya sahip olabilir). Her TestCase, formun public void test*()
her biri ait oldukları TestCase sınıfının bir örneği olacak birden çok test yöntemine sahip olabilir . Her test yönteminin (TestCase örneği) bir adı ve başarılı / başarısız ölçütü vardır.
Yönetimimin gerektirdiği , her biri kendi başarılı / başarısız kriterlerini bildiren ayrı TestStep öğeleri kavramıdır . Herhangi bir test adımının başarısız olması, sonraki test adımlarının yürütülmesini engellememelidir.
Geçmişte, konumumdaki test geliştiricileri TestCase sınıflarını, test edilen ürünün parçalarına karşılık gelen paketler halinde organize ettiler, her test için bir TestCase sınıfı oluşturdular ve her test yöntemini testte ayrı bir "adım" haline getirdiler, JUnit çıktısında kendi başarılı / başarısız kriterleri ile tamamlanır. Her TestCase bağımsız bir "test" tir, ancak TestCase içindeki ayrı yöntemler veya test "adımları" belirli bir sırada gerçekleşmelidir.
TestCase yöntemleri TestCase'in adımlarıdır ve test tasarımcıları test adımı başına ayrı bir başarılı / başarısız ölçütüne sahiptir. Şimdi test adımları karıştı ve testler (elbette) başarısız oldu.
Örneğin:
Class testStateChanges extends TestCase
public void testCreateObjectPlacesTheObjectInStateA()
public void testTransitionToStateBAndValidateStateB()
public void testTransitionToStateCAndValidateStateC()
public void testTryToDeleteObjectinStateCAndValidateObjectStillExists()
public void testTransitionToStateAAndValidateStateA()
public void testDeleteObjectInStateAAndObjectDoesNotExist()
public void cleanupIfAnythingWentWrong()
Her test yöntemi kendi ayrı başarılı / başarısız kriterlerini belirtir ve raporlar. Sipariş için bunu "tek bir büyük test yöntemi" olarak daraltmak, JUnit özet raporunda her "adım" ın başarılı / başarısız ölçütleri ayrıntı düzeyini kaybeder. ... bu da yöneticilerimi üzüyor. Şu anda başka bir alternatif talep ediyorlar.
Herkes şifreli test yöntemi siparişi ile bir JUnit yukarıda örnek ve yönetimi tarafından gerekli her ayrı test adım ayrı ayrı / başarısız kriterleri nasıl destekleyebilir açıklayabilir?
Dokümantasyondan bağımsız olarak, bunu JUnit çerçevesindeki birçok test geliştiricisi için hayatı zorlaştıran ciddi bir gerileme olarak görüyorum.