Akıllı Kimlik Doğrulama QTP/UFT Örnek ile
⚡ Akıllı Özet
Akıllı Kimlik Doğrulama, bir yedekleme mekanizmasıdır. UFT Nesnenin öğrenilen tanımı test edilen uygulamayla artık eşleşmediğinde, temel ve isteğe bağlı filtre özelliklerini kullanarak aday listesini tek bir eşleşmeye kadar daraltarak bir nesneyi bulmak için kullanılan bir yöntem.
Akıllı Kimlik Tanımlama Nedir? QTP/UFT?
Akıllı Tanımlama nesne tanıma için kullanılan yedek bir mekanizmadır. OpenText UFT Birincisi, eskiden HP QuickTest Professional olarak bilinen araç (QTPNormal tanımlama süreci, bir nesnenin öğrenilmiş tanımına benzersiz bir eşleşme bulamazsa, UFT Bu özellik, ilgili nesnenin sınıfına ait Nesne Tanımlama ayarlarında etkinleştirilmiş olması koşuluyla Akıllı Tanımlama özelliğini tetikler.
Öğrenilmiş tanımlamanın aksine, Akıllı Tanımlama, depolanan her özellikte tam eşleşme gerektirmez. Aday nesne havuzunu tam olarak bir taneye indirgemek için iki özellik kategorisini değerlendirir:
- Temel Filtre Özellikleri. Bir test nesnesi sınıfının en temel özellikleri; değerleri orijinal nesnenin özünü değiştirmeden değiştirilemeyen özellikler.
- İsteğe bağlı filtre özellikleri. Bir nesneyi tanımlamaya yardımcı olan ancak zaman içinde değişme olasılığı daha yüksek olan destekleyici özellikler.
Akıllı Kimlik Doğrulama çalıştırıldığında, UFT Öğrenilen açıklamayı "unutur" ve Temel Filtre Özelliklerinin tümüyle eşleşen her nesneyi içeren yeni bir aday listesi oluşturur. Ardından, tek bir nesne kalana kadar İsteğe Bağlı Filtre Özelliklerini tek tek kontrol ederek bu listeyi daha da daraltır.
Çalıştırma oturumu sırasında Akıllı Tanımlama etkinleştirilirse, test sonuçları ağacı, mekanizmanın kullanıldığını doğrulayan bir uyarı mesajı kaydeder ve öğrenilen açıklamadan sapmanın görünür kalması için sonuçlara bir Akıllı Tanımlama adımı eklenir.
Akıllı Kimliklendirme üçüncü sırada yer alıyor. UFTÖğrenilen açıklamadan ve herhangi bir Görsel İlişki Tanımlayıcısından sonra ve son çare olarak kullanılan sıralı tanımlayıcıdan önce, nesne tanımlama hiyerarşisinde yer alır. Bunun nerede yer aldığını anlamak, altta yatan özellikleri düzeltmek yerine onu tamamen devre dışı bırakmanın, sık çalışan bir komut dosyası için nadiren en iyi uzun vadeli seçim olmasının nedenini açıklar.
Temel Filtre Özellikleri ve İsteğe Bağlı Filtre Özellikleri
Her iki filtre de birlikte çalışır, ancak yukarıda açıklanan eleme sürecinde farklı roller üstlenirler. Aşağıdaki karşılaştırma, her birinin ne zaman kullanıldığını ve her birinin ne kadar eleme gücüne sahip olduğunu açıklığa kavuşturmaktadır.
| Görünüş | Temel Filtre Özellikleri | İsteğe Bağlı Filtre Özellikleri |
|---|---|---|
| Rol | İlk aday listesini oluşturun. | Aday listesini tek bir nesneye indirgeyin. |
| istikrar | Nesnenin kimliğini değiştirmeden neredeyse hiçbir zaman değişiklik olmaz. | Nesnenin kimliğini değiştirmeden periyodik olarak değişebilir. |
| Eşleştirme kuralı | Her adayın tüm temel özelliklere sahip olması gerekir. | Her seferinde yalnızca bir mülk kontrol edildi; bir mülk, tüm adayları elemek anlamına geliyorsa atlandı. |
| Tipik örnek | HTML etiketi, nesne sınıfı, indeks | Ad, HTML kimliği, alternatif metin, resim kaynağı |
| Nerede yapılandırılmıştır? | Nesne Tanımlama > Yapılandır > Temel Filtre Özellikleri | Nesne Tanımlama > Yapılandır > İsteğe Bağlı Filtre Özellikleri |
Aynı özellik iki listede birden bulunamayacağı için, bölme işlemini dikkatlice planlayın. Bir nesnenin temel olarak ne olduğunu tanımlayan özellikler temel listede; onu benzer nesnelerden ayırt etmeye yardımcı olan özellikler ise isteğe bağlı listede yer almalıdır.
Akıllı Kimlik Tanımlama Nasıl Çalışır: Adım Adım Süreç
Akıllı Tanımlama, yalnızca öğrenilen açıklama ve herhangi bir Görsel İlişki Tanımlayıcısı tek bir nesneyi belirleyemediğinde etkinleşir. Tetiklendiğinde, UFT Öngörülebilir, dört aşamalı bir eleme süreciyle çalışır:
- Aday listesini yeniden oluşturun. UFT Öğrenilen açıklamayı göz ardı eder ve nesnenin üst öğesini tarayarak Temel Filtre Özelliklerinin tümüyle eşleşen her nesneyi bulur.
- İlk isteğe bağlı özelliği uygulayın. UFT İsteğe bağlı filtre özellikleri listesindeki ilk özellikle eşleşmeyen tüm adayları kaldırır.
- Sonucu değerlendirin. Birden fazla aday kalırsa, UFT Önceki adımı bir sonraki isteğe bağlı özellik ile tekrarlar. Eğer bir filtre kalan tüm adayları ortadan kaldıracaksa, UFT Bu özelliği atlayıp bir sonrakine geçer.
- Tek bir maçta durun. UFT Filtreleme ve değerlendirme döngüsü, tam olarak bir nesne kalana kadar veya kontrol edilecek isteğe bağlı özellikler tükenene kadar tekrarlanır.
Eleme işlemi hala tek bir nesneyi izole edemiyorsa, UFT Öğrenilen açıklamaya ek olarak, indeks, konum veya oluşturma zamanı gibi sıralı bir tanımlayıcı kullanılır. Bu kombinasyon bile nesneyi tanımlayamazsa, çalışma oturumu duraklatılır ve çalışma zamanı hatası görüntülenir.
Akıllı Kimlik Doğrulamasını Etkinleştirme veya Devre Dışı Bırakma
Akıllı Tanımlama, her test nesnesi sınıfı için yapılandırılır. Araçlar > Nesne TanımlamaOrtamı ve nesne sınıfını seçin, etkinleştirin. Akıllı Kimlik Doğrulamasını Etkinleştirin, Ardından yapılandırma Bu sınıf için Temel ve İsteğe Bağlı Filtre Özelliklerini seçmenizi sağlar. Aynı iletişim kutusu, her zaman öğrenilen tanımını kullanması gereken bir sınıf için bu seçeneği kapatmanıza da olanak tanır.
Akıllı Kimlik Doğrulama Nasıl Çalışır (Video Anlatımı)
Aşağıdaki video, canlı bir örnek üzerinden temel ve isteğe bağlı filtre eleme sürecini adım adım göstermektedir.
Tıkla okuyun videoya erişilemiyorsa
Akıllı Kimlik Doğrulama Kullanımının Avantajları ve Dezavantajları
Akıllı tanımlama, dayanıklılığı artırır ancak bu dayanıklılığın bir çalışma zamanı maliyeti vardır. Bir nesne deposunun tamamında varsayılan olarak etkin bırakmadan önce her iki tarafı da değerlendirin.
- ✅ Küçük arayüz değişikliklerinden etkilenmez: Artık bir özniteliğin adının değiştirilmesi veya sayfadaki konumunun kaydırılması, nesneye dokunan her komut dosyasını bozmaz.
- ✅ Nesne deposu bakımını azaltır: Test uzmanları, küçük çaplı ön uç güncellemelerinden sonra nesneleri yeniden kaydetmek için daha az zaman harcarlar.
- ✅ Sonuçlarda görünür kalır: Her çağrı bir uyarı kaydı tutar, böylece ekipler yedekleme mekanizmasına ne sıklıkla gerçekten ihtiyaç duyulduğunu denetleyebilir.
- ⚠️ Testlerin daha yavaş yürütülmesi: Aday listesi oluşturmak ve filtrelemek, doğrudan mülk eşleştirmesine kıyasla ölçülebilir derecede daha uzun sürer ve maliyet büyük bir dairede katlanarak artar.
- ⚠️ Gerçek kusurları gizleyebilir: Akıllı Tanımlama sessizce benzer bir nesne bulursa, gerçek bir kullanıcı arayüzü hatası fark edilmeden geçebilir.
- ⚠️ Periyodik olarak gözden geçirilmesi gerekiyor: Uygulama geliştikçe, Temel ve İsteğe Bağlı Filtre Özelliklerinin zaman zaman gözden geçirilmesi gerekmektedir.
Çoğu ekip, keşif amaçlı ve düşük frekanslı komut dosyaları için Akıllı Tanımlama özelliğini etkin bırakır, ardından nesnenin tanımlama özellikleri istikrarlı hale geldikten sonra performans açısından kritik nesneler için bu özelliği seçici olarak devre dışı bırakır.
Akıllı Tanımlamadan Kaçınmak için Nesne Özelliğini Değiştirin
Akıllı Kimliklendirme'nin esnekliği, yukarıda açıklanan çalışma zamanı maliyetiyle birlikte gelir; bu nedenle birçok ekip, tekrar tekrar yedek mekanizmaya güvenmek yerine nesne kimliklendirme özelliklerini kendileri düzeltmeyi tercih eder. Bir özellik düzeltmesinin çalışma zamanı yedek mekanizmasından daha iyi olduğunu gösteren iki işarete dikkat edin: neredeyse her çalıştırmada görünen bir Akıllı Kimliklendirme uyarısı ve yedek mekanizma çalışmaya başladığından beri fark edilir derecede yavaşlayan bir komut dosyası. Her ikisi de, tek seferlik bir kullanıcı arayüzü hatasından ziyade, varsayılan kimliklendirme özellikleri artık uygulamaya uygun olmayan bir nesneye işaret eder. Aşağıdaki video, gerçek bir giriş formunda düzeltmeyi göstermektedir.
Tıkla okuyun videoya erişilemiyorsa
Video Metni: Önemli Noktalar
- Akıllı tanımlama, komut dosyası yürütmesini yavaşlatır; bu da büyük veya sık çalıştırılan test paketleri için istenmeyen bir durumdur.
- Bunu tamamen önlemek için, yedek mekanizmaya güvenmek yerine varsayılan nesne tanımlama özelliklerini değiştirin.
- In Nesne Tanımlama"Ad" özelliğini zorunlu özellikler listesinden kaldırın ve yerine "HTML kimliği" ekleyin; böylece test, ad değişikliklerinden bağımsız hale gelir.
- Zorunlu mülk listesi güncellendikten sonra aynı adımları yeniden kaydedin.
- Eğer isim daha sonra "Gönder"den "Giriş"e değişirse, komut dosyası artık Akıllı Kimlik Doğrulama tetiklenmeden çalışır.
- Benzer şekilde, test edilen bir nesne üzerindeki zorunlu veya yardımcı özelliklerden herhangi biri sık sık değişiyorsa, komut dosyasının hızlı çalışmasını sağlamak için onu daha istikrarlı bir özellikle değiştirin.
- Özellik ayarlama becerisi, deneyimle kazanılan bir yetenektir; araçla ne kadar çok çalışırsanız, o kadar gelişir.
VBScript Kullanarak Akıllı Kimlik Doğrulamasını Devre Dışı Bırakma
Akıllı Kimlik Doğrulama, nesne deposuna dokunmadan, aşağıdaki yöntem kullanılarak tüm çalışma oturumu boyunca da kapatılabilir. Algoritma Kullanarak Tekrar Oynatmayı Devre Dışı Bırak Çalışma zamanı ayarı. Bu, bir komut dosyasının herhangi bir özellik uyuşmazlığında sessizce eleme işlemine geri dönmek yerine hemen başarısız olması gerektiğinde kullanışlıdır.
' Disable Smart Identification for this run session Setting("DisableReplayUsingAlgorithm") = 1 Browser("Mercury Tours").Page("Find Flights").WebEdit("userName").Set "mercury" ' Re-enable Smart Identification once the strict steps are done Setting("DisableReplayUsingAlgorithm") = 0
Devre dışı bırakılan pencereyi mümkün olduğunca kısa tutun. İçinde çalıştırılan adımlar, öğrenilen tanımlarıyla tam olarak eşleşmelidir; bu nedenle, test edilen uygulamadaki herhangi bir meşru sapma, sorunsuz bir geri dönüş yerine anında bir hataya neden olur.
Kaynaklar
Yukarıdaki eğitimde kullanılan web sayfalarını indirerek kendi kendinize pratik yapabilirsiniz.


