Flaky testlerini yönetme
Azure DevOps Services
Geliştiriciler için üretkenlik, geliştirme aşamasındaki kodla ilgili gerçek sorunları bulmak veya zamanında ve güvenilir bir şekilde güncelleştirmek için test özelliğini kullanır. Hatalar genellikle test edilen değişikliklerle ilgili olmadığından, hatalı testler gerçek sorunları bulma konusunda 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 kullanılabilir. Genellikle yeni özellikler önce bulut hizmetinde kullanıma sunulur ve ardından Azure DevOps Server bir sonraki ana sürümde veya güncelleştirmesinde şirket içinde kullanılabilir hale getirilir. Daha fazla bilgi edinmek için bkz. Azure DevOps Özellik Zaman Çizelgesi.
Ürün içinde yanıcı test yönetimi getirmenin amacı, yanıcı testlerden kaynaklanan geliştirici acısını azaltmak ve iş akışının tamamına hizmet etmektir. 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 - Test flaky olarak işaretlendikten sonra veriler söz konusu dalın tüm işlem hatlarında kullanılabilir
Yanıcı testlerle ilgili rapor - Hatalı testlerden kaynaklanan derleme hatalarını önlemek isteyip istemediğinizi seçebilme veya flaky etiketini yalnızca sorun giderme için kullanma olanağı
Çözüm - El ile hata oluşturma veya el ile işaretleme ve analizinize göre testin işaretlerini kaldırma
Döngünün kapatılması - Hata çözümlemesi / el ile giriş sonucu yanıcı testi sıfırlayın
Flaky test yönetimini etkinleştirme
Flaky test yönetimini yapılandırmak için Proje ayarları'nı seçin 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, VSTest görevinin başarısız test özelliğini yeniden çalıştırması veya işlem hattındaki aşamayı yeniden denemesi yoluyla kullanılmaktadır. Projede, yanıcı testleri algılamak istediğiniz belirli işlem hatlarını seçebilirsiniz.
Not
Bir test flaky 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, yanıcı 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, test raporlamada flaky testlerinin nasıl kullanılabilir olduğunu ve çözüm özelliklerini belirtir.
Flaky test yönetimi ve raporlama
Test yönetimi sayfasında , Flaky test seçenekleri'nin altında, flaky testlerinin Test Özeti raporuna nasıl dahil olduğuyla ilgili seçenekleri ayarlayabilirsiniz. Hem başarılı hem de başarısız test için flaky test verileri Test sonuçlarında kullanılabilir. Flaky etiketi, flaky testlerini 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 dahil etmemeyi 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 Testler raporlanmaz bölümünde gösterilmesini sağlar.
Not
Test özet 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ı test hatasını engellemek için özel bir betik eklemeniz gerekebilir.
Flaky olarak işaretlenmiş testler
Flaky (veya Testin zaten flaky olarak işaretlenip işaretlenmediğine bağlı olarak UnFlaky) seçeneğini belirleyerek, 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
İlgili makaleler:
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin