Yükleme Testlerinde Kodlanmış UI Testleri Kullanmak
Bu konu şunlar için geçerlidir:
Visual Studio Ultimate |
Visual Studio Premium |
Visual Studio Professional |
Visual Studio Express |
---|---|---|---|
Yazılımınızın çeşitli kullanım seviyelerine ne kadar iyi yanıt verdiğini belirlemek için yükleme testleri yapabilirsiniz. Yük testi, aynı anda programa erişen birden çok kullanıcıyı taklit ederek bir yazılım programının beklenen kullanımını örnekler. Daha fazla bilgi için bkz. Yükleme Testleri Oluşturma ve Düzenleme.
Yük testleri öncelikli olarak bir dizi Web başarım testinden ya da belirli bir süre boyunca birden fazla benzetilmiş kullanıcı altında çalışan birim testlerinden oluşur. Yük testleri, otomatik kodlanmış UI testlerine de eklenebilir. Kodlanmış UI testlerinin dahil edilmesi yalnızca belirli durumlar altında yapılmalıdır. Yük testlerinde kodlanmış UI testlerini kullanan tüm senaryolar arasında kodlanmış UI testlerini performans testleri olarak kullanmak vardır. Kodlanmış UI testleri UI katmanında performansı yakalamaya izin vereceğinden, bu yararlı olabilir. Örneğin, istemciye veri döndürmesi 1 saniye ancak tarayıcıdaki verileri işlemesi 8 saniye süren bir uygulamanız varsa, bu tür bir performans sorununu Web performans testini kullanarak yakalayamazsınız.
Bir yük testinde kodlanmış UI testleri kullanmak için başka bir senaryo da, protokol katmanında komut satırı kullanmanın zor olduğu bir uygulamaya sahip olmanızdır. Bu durumda, protokol katmanında doğru biçimde komut dosyası çalıştırana kadar geçici bir süre kodlanmış kullanıcı arabirimi kullanarak yük sürmeyi düşünebilirsiniz.
Kodlu UI Testlerinde Zamanlama Ölçümleri için Kod Uygulama
Varsayılan olarak, çağrılar zaman uyumsuz olduğundan, yük testlerinde kullanılan kodlanmış bir UI testinden doğru zamanlama ölçümleri almayacaksınız. Doğru zamanlama ölçümleri elde etmek için kodlu UI testleriniz doğru uygulamalıdır. Bu WaitForControlReady yöntemi kullanılarak gerçekleştirilebilir. Aşağıdaki örnek kod parçacıkları bunu bir oturum açma sayfası için gösterir.
Not
Bu basitleştirilmiş bir örnektir. Oturum açma başarısız olursa gerçek bir testin zamanlamayı da ele alması gerekebilir.
Bir yükleme testinde kullanılan UI testini doğru bir şekilde uygulamak için
giriş sayfasının ne kadar sürede yüklendiğini zamanlayın.
TestContext.BeginTimer("UI Login Page Load");
Bu çağrı giriş sayfasını yükler.
UIMap.LoginPage();
Bir Web testinde alınan herhangi bir zamanlama, WaitForReady kullanmalıdır. Bu form görüntülenene kadar bekleyecektir.
UIMap.UIHttpteamtestweb1STORWindow1.UIHttpteamtestweb1STORDocument.UIEmailEdit.WaitForControlReady(); TestContext.EndTimer("UI Login Page Load");
Uyarı Formu doldurmaya harcadığınız zamanın zamanlayıcıya dahil edilmediğinden emin olun. Kayıt sırasında, kodu kaydedicide formu doldurduktan sonra ama göndermeden önce oluşturun.
Bu işlev, oturum açma formunu doldurur.
UIMap.FilledInLoginForm();
Giriş işlemini zamanlayın.
TestContext.BeginTimer("UI Login"); UIMap.LoggedIn();
Bir Web testinde alınan herhangi bir zamanlama, WaitForReady kullanmalıdır. Bu, giriş onay sayfası görüntülenene kadar bekler.
UIMap.UIHttpteamtestweb1STORWindow.UIHttpteamtestweb1STORDocument.UIWelcomeJamesBondwellPane.WaitForControlReady(); TestContext.EndTimer("UI Login");
Yükleme Testlerindeki Kodlanmış Kullanıcı Arabirimi Test Sınırlamaları
Kodlanmış Kullanıcı Arabirimi Testleri fare ve klavyeyi kullanır. Bu yüzden, aracı başına yalnızca 1 sanal kullanıcı kodlu UI testlerini çalıştırabilir. Bunu denetlemenin en iyi yolu, yük testinde ayrı bir senaryo kurmak ve kullanıcı yükünü 1 kullanıcıya ayarlamaktır. Birden fazla UI testiniz varsa, test karışımını Ardışık olarak yapılandırın. Daha fazla bilgi için bkz. Varolan Yükleme Testi için İlave Senaryolar Oluşturma ve Testi Çalıştıran Sanal Kullanıcı Olasılığını Belirlemek için Test Karışımı Modellerini Düzenleme.
Ayrıca, yükleme aracılarını hizmet yerine etkileşimli bir işlem olarak çalışacak şekilde yapılandırmanız gerekir. Daha fazla bilgi için bkz. Visual Studio Aracıları ve Test ve Yapı Denetleyicileri Yükleme ve Yapılandırma.
Ayrıca bkz.
Başvuru
Kavramlar
Kullanıcı Arayüzü ile Otomatik UI Testlerini Test Etme