Flaky testlerini yönetme
Azure DevOps Services
Geliştiriciler için üretkenlik, geliştirme veya güncelleştirme aşamasındaki kodla ilgili gerçek sorunları zamanında ve güvenilir bir şekilde bulmak için testlerin yeteneğine dayanır. Hatalar genellikle test edilen değişikliklerle ilgili olmadığından, hatalı testler gerçek sorunları bulmada bir engel oluşturur. Flaky test, kaynak kodunda veya yürütme ortamında değişiklik olmasa bile başarılı veya başarısız gibi farklı sonuçlar sağlayan bir testtir. Flaky testleri, gönderilen kodun kalitesini de etkiler.
Not
Bu özellik yalnızca Azure DevOps Services'ta kullanılabilir. Genellikle yeni özellikler önce bulut hizmetinde kullanıma sunulur ve ardından Azure DevOps Server'ın bir sonraki ana sürümünde veya güncelleştirmesinde şirket içinde kullanılabilir hale getirilir. Daha fazla bilgi için bkz . Azure DevOps Özellik Zaman Çizelgesi.
Ürün içinde flaky test yönetimi getirmenin amacı, yanıcı testlerin geliştiricinin acı nedenini azaltmak ve iş akışının tamamını karşılamaktır. Flaky test yönetimi aşağıdaki avantajları sağlar.
Algılama - Kendi özel algılama yönteminizi takmak için yeniden çalıştırılabilirlik veya genişletilebilirlik ile flaky testinin otomatik olarak algılanması
Flakiness yönetimi - Bir test flaky olarak işaretlendikten sonra veriler söz konusu dalın tüm işlem hatlarında kullanılabilir
Flaky testleri hakkında rapor verme - Hatalı testlerden kaynaklanan derleme hatalarını önlemek isteyip istemediğinizi seçebilir veya yalnızca sorun giderme için flaky etiketini kullanabilirsiniz
Çözüm - Analizinize bağlı olarak el ile hata oluşturma veya el ile işaretleme ve testin işaretlerini kaldırma
Döngünün kapatılması - Hata çözümlemesi / el ile giriş sonucu olarak flaky testini sıfırlayın
Flaky test yönetimini etkinleştirme
Basit test yönetimini yapılandırmak için Proje ayarları'nı ve İşlem Hatları bölümünde Test yönetimi'ni seçin.
Açık/Kapalı düğmesini Açık olarak kaydırın.
Tüm projeler için varsayılan ayar, sorun giderme için flaky testleri kullanmaktır.
Flaky test algılama
Flaky test yönetimi, sistem ve özel algılamayı destekler.
Sistem algılama: Ürün içi flaky algılama test yeniden çalıştırma verilerini kullanır. Algılama, başarısız test özelliğinin VSTest görevini yeniden çalıştırma veya işlem hattındaki aşamayı yeniden deneme yoluyla yapılır. Projede, yanıcı testleri algılamak istediğiniz belirli işlem hatlarını seçebilirsiniz.
Not
Bir test gevşek olarak işaretlendikten sonra, her işlem hattında sorun gidermeye yardımcı olması için söz konusu dalın tüm işlem hatlarında veriler kullanılabilir.
Özel algılama: Azure Pipelines ile kendi esnek algılama mekanizmanızı tümleştirebilir ve raporlama özelliğini kullanabilirsiniz. Özel algılama ile, gevşek testler için test sonuçları meta verilerini güncelleştirmeniz gerekir. Ayrıntılar için bkz . Test Sonuçları, Sonuç Meta Verileri - REST API'yi güncelleştirme.
Flaky test seçenekleri
Flaky test seçenekleri , aşağıdaki bölümlerde açıklandığı gibi, flaky testlerinin hem test raporlamasında hem de çözüm özelliklerinde nasıl kullanılabilir olduğunu belirtir.
Flaky test yönetimi ve raporlama
Test yönetimi sayfasında, Flaky test seçenekleri'nin altında, test özet raporuna nasıl flaky testleri dahil edilir seçeneklerini ayarlayabilirsiniz. Test sonuçlarında hem başarılı hem de başarısız test için flaky test verileri bulunur. Flaky etiketi, hatalı testleri belirlemenize yardımcı olur. Varsayılan olarak, flaky testleri Test Özeti'ne eklenir. Ancak, hatalı test hatalarının işlem hattınızda başarısız olmadığından emin olmak istiyorsanız, bunları test özetinize eklememeyi ve test hatasını gizlemeyi seçebilirsiniz. Bu seçenek, aşağıdaki ekran görüntüsünde gösterildiği gibi hatalı testlerin (hem başarılı hem de başarısız) geçiş yüzdesinden kaldırılmasını ve Bildirilmeyen testler bölümünde gösterilmesini sağlar.
Not
Test özeti raporu yalnızca Visual Studio Test görevi ve Test Sonuçlarını Yayımla görevi için güncelleştirilir. Diğer senaryolarda hatalı testi engellemek için özel bir betik eklemeniz gerekebilir.
Flaky olarak işaretlenmiş testler
Flaky'yi (veya testin zaten flaky olarak işaretlenip işaretlenmediğine bağlı olarak, UnFlaky) öğesini seçerek testi analize veya bağlama göre flaky olarak işaretleyebilir veya işaretini kaldırabilirsiniz.
Bir test işlem hattında flaky veya unflaky olarak işaretlendiğinde, geçerli işlem hattında hiçbir değişiklik yapılmaz. Yalnızca bu testin gelecekteki yürütmelerinde, değiştirilen flaky ayarı değerlendirilir. Flaky olarak işaretlenen testlerin kullanıcı arabiriminde İşaretli flaky etiketi vardır.
Yardım ve destek
- Sorun giderme sayfamıza bakın
- Stack Overflow hakkında öneri alın ve Geliştirici Topluluğu aracılığıyla destek alın