Tek bir birim testi çalıştırmak ve "profil oluşturma" bilgilerini toplamak istiyorum: her yöntemin ne sıklıkta çağrıldığı, belirli sınıfın kaç örneğinin oluşturulduğu, ne kadar zaman yapıldığı Belirli bir yöntemi/iş parçacığı vb. yürütmek için kullanın. Sonra, bu bilgileri beklenen bazı değerler ile karşılaştırmak istiyorum. Java için herhangi bir Profil Oluşturucusu var mıyım, bunu yapmama izin verin (tüm bunlar, GUI veya kullanıcı etkileşimi olmadan, otomatik olarak yapılmalıdır, elbette)?Tek bir birim testi için Java profil oluşturma sonuçlarını otomatik olarak karşılaştırma
Bu ben çalışmak istiyorum nasıl: bilgileri otomatik profil anlık yakalama
public class MyTest {
@Test
public void justTwoCallsToFoo() {
Profiler.start(Foo.class);
Foo foo = new Foo();
foo.someMethodToProfile(); // profiler should collect data here
assertThat(
Profiler.getTotalCallsMadeTo(Foo.class, "barMethod"),
equalTo(3)
);
}
}
Bu soru, diğerlerinden farklı bir şekilde nasıl bir Java uzmanı önerebilir? SO ile ilgili sorularınız mı var? YourKit'i Intellij ile kullanıyorum ve sadece (bireysel) birim testlerini başka bir koşula göre ... – amaidment
Herhangi bir IDE olmadan veya profil oluşturucularla herhangi bir görsel etkileşim olmaksızın bir sınıf/yöntem ** içeri ** bir ünite testi yapmak istiyorum. – yegor256
Birim testinizin profilleyiciyi yürüteceğini, çıktıyı toplayacağını ve birim testinin profil verisine göre (örneğin, bir yöntemin kaç kez çağrıldığı) geçeceğini/başarısız olacağını söylemek ister misiniz? Eğer öyleyse o zaman bir profiler * programlı olarak * çağırmak ve çıktılarını bir API ile almak istediğinizi açıklığa kavuşturmak için sorunun açıklığa kavuşacağına inanıyorum. Örneğin, siz insan olarak yaptığım gibi "karşılaştırmak istiyorum" ifadesini manuel olarak yapıyorum. –