İşverenlerim aylık birim test günü yarışması düzenliyor. Tüm bir gün, birim testleri yazmaya adanmıştır - açıkçası ay boyunca daha fazla test yapıyoruz, ancak bu bütün bir gün - ve yarışmanın "kazananına" bir ödül verildi. Ancak kazananın kim olduğunu belirlemekte zorlanıyoruz.
Her test vakası için puan veriyoruz. Eğer böyle bir birim testi yazdıysanız ...
for (int i = 0; i < 100; i++) {
assertTrue(i*i, square(i));
}
size 100 puan verilecek. Açıkçası bu basit bir örnektir, ancak her test senaryosuna "puan" atama ile ilgili sorunları göstermektedir.
Biz öncelikle bir Java ve Javascript mağazasıyız. Bu yüzden metrik olarak test edilen kod dalı sayısını saymayı önerdim. Test edilen dalları bir kod kapsamı aracı (EclEmma gibi) ile kolayca sayabiliriz. Ancak, bunu Selenyum testlerimizle ve Javascript kaynaklarında kod kapsamı (herhangi bir fikir?) Almakla nasıl yapacağımızdan emin değilim.
Bu yarışmanın galibini nasıl daha iyi belirleyebileceğimiz konusunda herhangi bir öneriniz var mı?
Düzenle
Birim testleri yazmayı biliyorum, etkili birim testleri yazmayı biliyorum, neyi test edeceğimi belirlemek için yardıma ihtiyacım yok. Bu yarışma üzerinde hiçbir kontrolüm yok - yarışma devam edecek. Bu yüzden ya daha iyi hale getirmek için bazı girdiler ekliyorum ya da testleri oynamaya devam ediyorum (evet, onları oynuyorum. Tabii ki onları oynuyorum. Kazanacak ödüller var)
Düzenle
Bu soru burada , besbelli bir kopya değil iyi test durumları nasıl bulunacağı hakkında yararlı bilgiler içermektedir olsa da, rekabeti değerlendirmek için herhangi bir yararlı ölçümleri sağlamaz.