Nesne Tanımlama Nasıl Çalışır? QTP/UFT?

⚡ Akıllı Özet

Nesne tanımlama QTP/UFT Bu ayar, test çalışması sırasında aracın her bir GUI öğesini nasıl tanıdığını belirler; depolanmış Test Nesnesi özelliklerini canlı Çalışma Zamanı Nesnesi özellikleriyle karşılaştırarak, ekran düzeni değişse bile komut dosyalarının çalışmaya devam etmesini sağlar.

  • 🎯 Test Nesnesi Modeli: UFT Her adımda, ekran konumundan bağımsız kontrolleri belirlemek için depolanmış bir Test Nesnesini canlı Çalışma Zamanı Nesnesiyle karşılaştırır.
  • 🗂️ Zorunlu özellikler: UFT Nesne deposunda her nesne sınıfı için varsayılan bir özellik kümesi her zaman kaydedilir.
  • 🧩 Yardımcı özellikler: UFT Yalnızca zorunlu özellikler kümesi tek başına benzersiz bir açıklama oluşturamadığında yedek özellikleri tek tek ekler.
  • ⚙️ Nesne Tanımlama iletişim kutusu: Araçlar > Nesne Tanımlama, test uzmanlarının ortam ve nesne sınıfına göre özellikleri eklemesine, kaldırmasına veya yeniden sıralamasına olanak tanır.
  • 🇧🇷 Nesne Casusu: Hangi kontrolleri kullanacağınıza karar vermeden önce, test nesnesi ve çalışma zamanı özelliklerini incelemek için herhangi bir kontrolün üzerine gelin.
  • 🔢 Sıralı tanımlayıcılar: Dizin, Konum ve Oluşturma Zamanı, her özellik kontrolünden sonra aynı kalan nesneler arasındaki bağları koparır.
  • ???? Akıllı Kimlik Doğrulama: Bu yedekleme mekanizması, sıralı tanımlayıcılardan önce çalışır ve genellikle öğrenilen tanımı bozulmuş bir nesneyi kurtarır.

Nesne Tanımlama nedir? UFT/QTP?

Nesne tanımlama mekanizmasıdır. UFT/QTP Ekrandaki bir GUI öğesini tanımak ve böylece bir komut dosyasının her çalıştırmada güvenilir bir şekilde işlem yapmasını sağlamak için kullanılır. Bir kayıt oturumu sırasında, UFT Fare imlecinin altındaki nesneye ait küçük bir özellik kümesini inceler ve saklar; tekrar oynatma sırasında, saklanan bu değerleri ekranda gerçekten bulunan her nesnenin özellikleriyle karşılaştırır ve nesnenin ekranda nerede bulunduğuna bakılmaksızın benzersiz şekilde eşleşeni seçer.

Saklanan nesne, özellikleriyle birlikte UFT Bunu hatırlar, buna denir. Test NesnesiTest çalışırken ekranda bulunan ilgili öğe şudur: Çalışma Zamanı Nesnesiİki yöntemi her adımda karşılaştırmak, Micro Focus'un "karşılaştırmalı analiz" olarak adlandırdığı yaklaşımın temelini oluşturuyor. Test Nesnesi Modelive bu yüzden bir UFT Buton birkaç piksel hareket etse veya sayfa yeniden tasarlansa bile komut dosyası çalışmaya devam eder.

Nesne Deposu ve Eklentiler

UFT Öğrenilen her Test Nesnesini, saklanan özellikleriyle birlikte, içinde tutar. Nesne Deposu. Add-ins söylemek Hızlı test Ekranın hangi teknolojiye ait olduğunu önceden bilmek, aracın hangi özellik setinin geçerli olduğunu önceden bilmesini ve tahmin yürütmesine gerek kalmamasını sağlar; bu da bir nesneyi öğrenme süresini kısaltır.

Tıkla okuyun videoya erişilemiyorsa

Her nesne UFT Kayıtlar düzinelerce özellik içerebilir. Yalnızca bir web ortamında bile, tek bir düğme adını, HTML etiketini, türünü, sınıfını, indeksini ve daha fazlasını gösterebilir. Her nesne için bunların hepsini kaydetmek teknik olarak mümkün olsa da, bir sonraki resimde tipik bir Nesne Deposu girdisi için gösterildiği gibi nadiren faydalıdır.

Nesne Deposu

If UFT Her nesne için mevcut tüm özellikleri hatırlamaya çalışırsanız, Nesne Deposu çok büyür ve komut dosyası yürütmesi gözle görülür şekilde yavaşlar. Bunu önlemek için, QTP Varsayılan olarak her özelliği kaydetmez; her nesne türü için küçük, tipik bir özellik kümesi kaydeder; bu küme, kullanım kolaylığı sağlamak amacıyla seçilmiştir. benzersiz tanımlama Ek yük olmadan mümkün. Her ortam ve nesne sınıfı için ayrı ayrı belirlenen bu özellikler listesi, bir sonraki bölümde ele alınan Nesne Tanımlama ayarlarında yapılandırılır.

nesne Descriptİyon: Zorunlu ve Yardımcı Özellikler

Bir nesnenin özelliği ve değeri birlikte neyi oluşturur? UFT çağırır nesne Descriptiyon — aracın sayfadaki diğer tüm nesnelerden bir öğeyi seçmek için kullandığı tam kombinasyon. Örneğin, bir WebButton için bu özellik isim değeri ile Oturum aç Tek başına çoğu zaman kullanılabilir bir nesne oluşturmak için yeterlidir. Descriptiyon.

Bu davranışı gözden geçirmek veya değiştirmek için açın. Araçlar > Nesne Tanımlama içeride UFTNesne Tanımlama iletişim kutusu, şu anda yüklü olan her ortamı listeler; bunlardan birini seçmek, nesne sınıflarını otomatik olarak doldurur. UFT Bunu destekler ve sağdaki panel, o sınıfa ait nesneler için hangi özelliklerin saklandığını tam olarak gösterir. Liste iki gruba ayrılmıştır:

  1. Zorunlu özellikler Bu sınıfa ait her nesne için varsayılan olarak, komşularından ayırt etmek için gerçekten gerekli olup olmadıklarına bakılmaksızın, bu bilgiler saklanır.
  2. Yardımcı özellikler Yalnızca zorunlu özellikler tek başına benzersiz bir açıklama oluşturmaya yetmediğinde saklanırlar. UFT Nesne benzersiz hale gelene kadar bu listedeki özellikleri tek tek inceler.

Bir web görseli, kuralın pratikte daha kolay anlaşılmasını sağlar.

nesne Descriptİyon, Zorunlu ve Yardımcı Özellikler

  • UFT Web görselleri için, alt metni tek başına zaten benzersiz olsa bile, her zaman alt metni, HTML etiketini ve görsel türünü saklar.
  • Zorunlu özellikler benzersiz bir açıklama oluşturamıyorsa, UFT Yardımcı özellikler listesinden sınıf özelliğini ekler.
  • Bir özellik, açıklamasını benzersiz hale getirdikten sonra, UFT Daha fazla eklemeyi durdurur; eğer sınıf zaten yeterliyse dosya adını ve yüksekliği atlar, dosya adı gerekiyorsa yüksekliği atlar vb.
  • Kayıt sırasında yalnızca sınıf özelliğinin kaydedildiğini varsayalım. Çalışma zamanında, UFT Artık hangi özelliklerin zorunlu, hangilerinin yardımcı olduğunu ayırt etmiyor; kaydedilen açıklamadaki her özelliği çalışma zamanı nesnesiyle karşılaştırıyor.
  • Kaydedilen özelliklerden tek biri bile eşleşmezse, adım başarısız olur; benzersiz bir açıklama ikili bir değerdir, en iyi çaba eşleşmesi değildir.
Görünüş Zorunlu Özellikler Yardımcı Özellikler
saklandığında Her zaman, o sınıfa ait her nesne için Yalnızca zorunlu özellikler benzersiz bir açıklama oluşturamadığında
Yapılandırıldı Nesne Tanımlama iletişim kutusu, Zorunlu liste Nesne Tanımlama iletişim kutusu, Yardımcı liste
kullanım sırası Önce koşulsuz olarak öğrenildi. Nesne benzersiz olana kadar teker teker eklenir.
Çalışma süresi tedavisi Yardımcı özelliklerle aynı şekilde karşılaştırıldı. Zorunlu özelliklerle aynı şekilde karşılaştırılır.

Aşağıdaki video, zorunlu ve yardımcı süreçler arasındaki bu iş akışını baştan sona ayrıntılı olarak ele almaktadır.

Nesne Tanımlama Diyaloğu Box ve Nesne Casusu

Nesne Tanımlama iletişim kutusu sadece bir görüntüleyici değil; test uzmanının testin ne kadar agresif yapılacağını ayarladığı yerdir. UFT Bu, tüm ortam için nesneleri tanımlar. Burada bir özelliği yeniden sıralamak, eklemek veya kaldırmak, o andan itibaren o sınıfa ait her nesne için öğrenilenleri değiştirir; sadece o anda kaydedilen nesne için değil. Tipik iş akışı şu şekildedir:

  1. Açılış UFT Ve git Araçlar > Nesne Tanımlama.
  2. Bir ortam seçin (Web, Windows, Java(ve benzeri) açılır menüden seçin.
  3. Soldaki listeden WebButton veya WinEdit gibi bir nesne sınıfı seçin.
  4. Özellikleri Zorunlu ve Yardımcı listeler arasında taşıyın veya hangi özelliğin kullanılacağını kontrol etmek için Yardımcı listenin sıralamasını değiştirin. UFT Önce dene.
  5. Panelin üst kısmındaki onay kutusunu kullanarak ilgili sınıf için Akıllı Tanımlama özelliğini etkinleştirin veya devre dışı bırakın.

Burada yapılan değişiklikler bir sonraki seferde geçerli olacaktır. UFT Bu sınıfa ait bir nesne öğrenir; Nesne Deposu'na önceden kaydedilmiş girdiler, nesne yeniden kaydedilene veya manuel olarak güncellenene kadar orijinal açıklamalarını korur.

Object Spy kullanarak özellikleri inceleme

Çoğu test uzmanı, zorunlu veya yardımcı listeyi düzenlemeden önce bir nesnenin özelliklerinin gerçekte nasıl göründüğünü kontrol eder. Nesne CasusuTest edilen uygulamadaki herhangi bir denetim üzerine casus imlecini getirdiğinizde, hem test nesnesi hem de çalışma zamanı özellikleri, yöntemleriyle birlikte yan yana listelenir. UFT Bu özellik, zorunlu bir özelliğin yapılar arasında sürekli değiştiği ve daha istikrarlı bir özellikle değiştirilmesi gerektiği durumlarda kullanışlıdır.

Sıralı Tanımlayıcılar: İndeks, Konum ve Oluşturulma Zamanı

Bazen tüm zorunlu ve yardımcı özellikler bile iki veya daha fazla nesnenin birbirinin aynı görünmesine neden olabilir; örneğin, aynı ada, sınıfa ve etikete sahip üç onay kutusu. Tam da bu durum için UFT bir şeye geri dönüyor sıralı tanımlayıcıBu, birbirine özdeş nesneleri özelliklerine göre değil, konumlarına göre sıralayan bir yedek değerdir.

Sıra Tanımlayıcı Varlığınızı Sipariş Atandı Şunlar için geçerlidir:
indeks indeks Nesnenin temel kaynak kodunda görünme sırası, 0'dan başlayarak. Herhangi bir nesne sınıfı
Konum Konum Ekran üzerinde yukarıdan aşağıya, sonra soldan sağa doğru, 0 noktasından başlayarak konum. Herhangi bir nesne sınıfı
Oluşturma Zamanı Oluşturma Zamanı Tarayıcı penceresinin açılma sırası 0'dan başlayarak Yalnızca tarayıcı nesneleri

UFT Yalnızca zorunlu ve yardımcı özellikler iki nesneyi gerçekten ayıramadığında sıralı bir tanımlayıcı öğrenir, çünkü değer görecelidir ve nesnenin kendisi değişmese bile sayfa düzeni değişirse kayabilir. Aşağıdaki VBScript kod parçası, aynı ada sahip iki bağlantıdan ikincisine tıklamak için Index'i kullanır.

Dim objBrowser, objPage
Set objBrowser = Browser("title:=Guru99 Bank")
Set objPage = objBrowser.Page("title:=Guru99 Bank")
' Index:=1 clicks the second Link named "Manage Order" (index starts at 0)
objPage.Link("name:=Manage Order", "index:=1").Click

Index ve Location değerleri, ifadede adı geçen nesne sınıfına özgüdür, bu nedenle İndeks:=3 WebEdit üzerinde yapılan arama yalnızca WebEdit nesneleri arasında yapılırken, genel bir WebElement üzerinde yapılan aynı arama, türüne bakılmaksızın sayfadaki her web nesnesi üzerinde geçerlidir.

Akıllı Kimliklendirme Nerede Yer Alıyor?

Nesne tanımlama UFT Öğrenilen açıklama ile sınırlı kalmaz. Benzersiz bir eşleşme bulunamadığında, UFT İşlem, belirli bir sırayla ilerler: önce öğrenilen zorunlu ve yardımcı özellikleri, ardından görsel ilişki tanımlayıcılarını kontrol eder, sonra da... Akıllı Tanımlama Bu mekanizma sınıf için etkinleştirilmişse ve yalnızca son çare olarak sıralı bir tanımlayıcı kullanılır.

Akıllı Tanımlama, öğrenilen açıklama ile sıralı tanımlayıcı arasında kasıtlı olarak yer alır. Bir sınıfın temel özelliklerini kullanarak aday listesini yeniden oluşturur ve isteğe bağlı özelliklerle daraltır; böylece öğrenilen açıklaması bozulmuş bir nesneyi (örneğin, yeniden adlandırılmış bir düğme) Nesne Deposu'na hiç dokunmadan kurtarabilir. Bu ek arama adımı zaman aldığı için, çoğu ekip bunu tanımlama açısından hassas sınıflar için etkinleştirir ve yalnızca konumun gerçekten tek ayırt edici özellik olduğu durumlarda (örneğin, etiketlenmemiş radyo düğmeleri grubu gibi) sıralı tanımlayıcılara güvenir.

SSS

Nesne Deposu, öğrenilen her Test Nesnesini ve kaydedilmiş özelliklerini saklar. Araçlar > Nesne Tanımlama menüsünden açılan Nesne Tanımlama ayarları, hangi özelliklerin kaydedileceğini kontrol eder. UFT Öncelikle her nesne sınıfı için kayıtları o depoya kaydedin.

UFT Görsel ilişki tanımlayıcıları, Akıllı Tanımlama ve son olarak sıralı bir tanımlayıcı aracılığıyla çalışır. Bunlardan hiçbiri tek bir eşleşme üretmezse, hiçbir nesne depolanan her özelliği karşılamadığı için adım çalışma zamanında hata verir.

Mevcut her özelliği kaydetmek, Nesne Deposu'nu şişirir ve komut dosyası yürütmesini yavaşlatır. UFT Bunun yerine, her nesne sınıfı için küçük, tipik bir küme kaydeder ve yalnızca zorunlu özellikler benzersiz bir açıklama oluşturamadığında yardımcı özellikler ekler.

Evet. Yapay zeka destekli araçlar, kayıt öncesinde daha istikrarlı ve daha az kırılgan özellikler önermek için üretim trafiğini veya DOM yapısını inceleyebilir ve zorunlu özellikleri derlemeler arasında sık sık değişen nesneleri işaretleyebilir; test uzmanları yine de önerileri doğrular.

Tam olarak değil. Kendi kendini onaran konum belirleyiciler, yeniden adlandırılmış veya taşınmış öğelerden kaynaklanan hataları azaltır, ancak sıralı tanımlayıcılar yine de her özelliğinde gerçekten aynı olan nesneleri, örneğin art arda etiketlenmemiş birkaç onay kutusunu çözümleyebilir.

Bu yazıyı şu şekilde özetleyin: