Aracılığıyla paylaş


Çalışırken Yeniden Yükleme ile Yürütmeyi Test Et

Visual Studio'daki test çalıştırmaları, testlerinizi yürütmek için Test Platformu'nı kullanmadan önce diskteki ikili dosyaları güncelleştirmek için projeyi derlemeyi içerir. Visual Studio'nun içindeki derleme süresi, kodda yapılan değişikliklerin türüne bağlı olarak değişebilir. Daha büyük çözümler için derlemeler test çalıştırmasının en pahalı kısmı olabilir. Visual Studio 2022 ve sonraki sürümlerde, desteklenen senaryolar için derlemeler atlanarak test yürütmeyi hızlandırmak için sık erişimli yeniden yükleme ile test yürütme etkinleştirilebilir.

Neler desteklenir?

  • .NET 6.0 ve üzerini hedefleyen C# ve VB projeleri
  • DEBUG yapılandırması için oluşturulan projeleri test edin
  • Visual Studio 2022 ve üzeri

Çalışırken Yeniden Yükleme ile Test Yürütmeyi Etkinleştirme

Test>Seçenekleri>"(Deneysel) .NET 6 ve üzerini hedefleyen C# ve VB test projeleri için Çalışırken Yeniden Yükleme Test Çalıştırmalarını etkinleştir"i seçerek bu özelliği etkinleştirin. Screenshot of the Enable Hot Reloaded Test Runs button on the Visual Studio Test Options page. When this is selected, tests execution will use hot reload for supported scenarios

Neden Deneysel?

Bu, yaygın olarak kullanılan bir kod doğrulama yolunu değiştirdiğimiz yeni bir test yürütme yöntemidir. Ayrıca kullanıcılardan daha fazla geri bildirim aldığımızda bu özellikle ilgili kullanıcı deneyiminin değişmesini bekliyoruz. Bu iki nedenle, şu anda bu özelliği "deneysel" olarak etiketledik.

Nasıl çalışır?

Seçenek etkinleştirildikten sonra, Test Gezgini mümkün olduğunda çalışırken yeniden yükleme ile test yürütmeyi otomatik olarak kullanır. Sık erişimli yeniden yükleme mümkün değilse, test oluşturma ve çalıştırmanın normal davranışına geri döner. Testleri çalıştıran bir kullanıcı olarak, iş akışınızda herhangi bir değişiklik yapmanız gerekmez (yani kodu düzenlemeye ve testleri çalıştırmaya devam edin).

Arka planda, yapılan değişiklikleri belirlemek için çalışma zamanında C#/VB kodunu düzenlemek için yeni yayımlanan Çalışırken Yeniden Yükleme deneyiminde mevcut olan Düzenleme ve Devam Et altyapısını kullanıyoruz. Bu nedenle, yalnızca "kaba düzenlemeler" olmadığında yeniden yükleriz, bu durumda testlerinizi yürütmeden önce oluşturmaya geri döneriz. Desteklenen düzenlemeler hakkında daha fazla ayrıntı için Düzenle ve Devam Et belgelerini okuyun

Test yürütme ne kadar hızlı olacak?

Bu özelliğin size ne kadar zaman kazandıracağını tahmin ederken ortaya çıkan birçok değişken vardır. Örneğin:

  • Proje derlemesinin ne kadar sürdüğü.
  • Ne tür bir düzenleme yapıldı?
  • Düzenlemenin yapıldığı dosyanın ne kadar büyük olduğu.
  • Düzenlemenin yapıldığı yer (yaprak proje olup olmadığı).

Sonuç olarak, hız geliştirmeleri doğrudan bu test çalıştırmasında oluşacak derleme süresiyle ilgili olacaktır.

Notlar

  • Seçeneği etkinleştirdikten veya Visual Studio'yu açtıktan sonra ilk test çalıştırması bir proje derlemesine neden olur.
  • Testler çalıştırıldığında düzenleyicideki dosyalar kaydedilemeyebilir. Bunları çözmek için ve iade etmeden önce tam derleme (Ctrl+Shift+B) yaptığınızdan emin olun.
  • Çalışırken yeniden yüklenen test yürütmesi gerçekleştiğinde disk üzerindeki ikili dosyalar güncelleştirilmez.
  • Sık erişimli yeniden yüklenen test yürütme, Test Gezgini'nde "Test>Tüm Testleri Çalıştır", "Tüm Testleri Görünümde Çalıştır" ile çalışmaz ve Çözüm Gezgini çözüm düğümünden Tüm Testleri Çalıştır ile çalışmaz. Şu anda çözümün tamamının oluşturulmasını garanti ettikleri için özellik bu komutlarla çalışmaz.
  • Desteklenmeyen hedef çerçevelere (.NET 6.0'dan düşük) sahip testler çalıştırıldığında bir proje derlemesi gerçekleşir.
  • Diskteki ile Test Gezgini'nin gösterdiği arasında tutarsızlıklar görürseniz lütfen Ctrl+Shift+B tuşlarını kullanarak bir çözüm/proje derlemesi düşünün ve ardından testleri çalıştırın. Açık derlemeler, sık erişimli yeniden yükleme testi sonuçlarını normal tam derleme test sonuçlarıyla değiştirir.

Bilinen sorunlar

  • Çalışırken yeniden yükleme ile test yürütmesi aşağıdaki senaryolarda gerçekleşmez:
    • Kod Kapsamı
    • Live Unit Testing
    • Profil Oluşturma
    • Hata ayıklama
  • Okunamayan belirteçlerin varlığıyla yığın izlemeleri okunamayabilir. Bu sorun burada izleniyor ve .NET 7.0'da bir düzeltme yapılması planlanıyor
    • Bu durumda önerilen geçici çözüm, projenizi oluşturmak ve testi yeniden çalıştırmaktır.

Geri bildiriminiz önemlidir

Daha önce belirtildiği gibi, bu deneysel özelliğin tamamlanması için geri bildiriminiz gerekir. Deneyimin nasıl olması gerektiği konusunda bir öneriniz varsa veya herhangi bir sorunla karşılaşırsanız lütfen sorunları bize bildirmek için bir dakikanızı ayırın. Yalnızca geri bildirimlerinizle kritik sorunların çözümlenmesine ve gelecekteki kararların sizin girdinize göre önceliklendirildiğinden emin olabiliriz.

Bize ulaşmak için lütfen Visual Studio geri bildirim mekanizmasını kullanın.