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.

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.
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:
- 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.
- 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.
- 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:
- Açılış UFT Ve git Araçlar > Nesne Tanımlama.
- Bir ortam seçin (Web, Windows, Java(ve benzeri) açılır menüden seçin.
- Soldaki listeden WebButton veya WinEdit gibi bir nesne sınıfı seçin.
- Ö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.
- 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.


