qtp tutorial 7 qtp s object identification paradigm how qtp identify objects uniquely
QTP Nesneyi Nasıl Benzersiz Bir Şekilde Tanımlar? - Bu, QTP eğitim serimizdeki 7. QTP Öğreticisidir.
Yazmamızı sağlayacak tüm temel kavramlarla kendimizi donatıyoruz sağlam QTP testleri . QTP'yi ele aldık Ayarları Kaydet ve Çalıştır , Anahtar Kelime görünümüyle çalışma ve diğer ilgili konular.
=> QTP Training Tutorials Series İçin Buraya Tıklayın
Bu, QTP'nin çok önemli bir yönünden bahseden dizideki bir sonraki makale - Bir nesneyi benzersiz şekilde tanımlamak için kullandığı mekanizma . Aşağıdaki ekrana baktığınızda:
Bu iletişim kutusunda çeşitli diğer öğelerle birlikte 3 düğme ve 2 metin kutusu vardır.
Önceki örneklerde kullanıcı adı ve şifreyi girdiğimizde QTP'nin aynı işlemleri programatik kod ve anahtar kelime görünümündeki bir tablo açısından nasıl kaydettiğini gördük. Şimdi, oynatma sırasında QTP, Aracı Adı veya Parola olarak sağladığımız değerin sırasıyla bu düzenleme kutularında olması gerektiğini nasıl biliyor? Veya girilen değerleri göndermek için hangi düğmeyi tıklayacağını nasıl biliyor?
Buna bir cevap bulmaya çalışalım.
bir dizi dize java oluştur
QTP'nin bir şekilde hangi nesne üzerinde hareket edeceğini hatırladığı açıktır. Bunu yapma şekli, nesneyi AUT'de bir test nesnesi olarak saklar. Daha sonra özelliklerini inceler ve nesneyi sınıflandırır. Örneğin, OK butonu ile karşılaştığında özelliklerini inceler ve bunlara göre nesneyi 'WinButton' olarak sınıflandırır.
QTP, tanımladığı her nesne sınıfı için öğrendiği / sakladığı önceden belirlenmiş bir özellikler kümesine sahiptir. Bunun 3 yönü var:
- Zorunlu özellikler : Bu, QTP'nin her zaman depoladığı belirli bir sınıf için özelliklerin listesidir. Bunun nesne açıklaması olduğunu söyleyebiliriz. Ayrıca, tanımın nesneyi benzersiz bir şekilde tanımlamak için yeterli olup olmadığını görmek için bunu ana nesneyle birlikte kontrol eder.
- Yardımcı özellikler : Zorunlu özelliklerin açıklamasının Nesneyi tanımlamak için yetersiz olması durumunda, nesneyi tanımlamak için yeterli veri olana kadar açıklamaya bir dizi zorunlu olmayan özellik birbiri ardına eklenecektir.
- Sıra Tanımlayıcı : Yardımcı özellikler de bir nesnenin benzersiz bir tanımlamasına neden olmazsa, nesnenin sayfadaki veya kaynak kodundaki konumu gibi özel bir sıra tanımlayıcı QTP tarafından eklenir.
QTP, Test Nesnelerini bu şekilde oluşturur. Bu Test Nesnesi açıklamasını, bir çalıştırma oturumu sırasında üzerinde işlem yapılacak nesneleri aramak için kullanır. İçerdiği tanıma tam olarak uyan nesneleri seçer. Bu nesnelere denir Çalışma Zamanı nesneleri.
Uygulamanız önemli ölçüde değişmedikçe, QTP'nin sahip olduğu Test Nesnesi açıklaması bir nesneyi bulmak için yeterlidir.
Flight uygulamamızda bulunan WinButton nesnesi için, QTP'nin hangi özellikleri depoladığını görelim. Bu bilgi Nesne Deposunda mevcuttur. 'Kaynaklar-> Nesne Deposu' menü seçeneği bizim için OR'yi başlatacak. Alternatif olarak, CTRL + R kullanabilir veya simgeye tıklayabilirsiniz.
Yukarıdaki pencerede fark ederseniz, çalışma zamanında bu düğmeyi tanımlamak için WinButton'daki 'metni' açıklaması olarak sakladı.
Daha karmaşık uygulamalar için, test cihazı, açıklamayı çalışma zamanında nesneyi daha kesin olarak tanımlayacak kadar sağlam hale getirmek için belirli özellikler ekleyebilir veya kaldırabilir. Bunu yapmak için, '+' simgesine tıklamanız yeterlidir.
Nesnenin diğer tüm özellikleri görüntülenecektir. Kullanıcı bu özelliklerden birini veya birkaçını eklemeyi seçebilir.
Ayrıca ' Görsel İlişki Tanımlayıcı WinButton özellikleri için OR ekranında '.
Bu, AUT'deki komşu nesnelere göre nesne tanımayı daha da destekleyen bir özelliktir. Bir kez ayarlandığında, bu, AUT'nizdeki daha az kararlı bileşenler için daha benzersiz şekilde tanımlanabilir nesnelerle bir tür bağlantı oluşturur. QTP, bu benzersiz nesnelere göreceli konumlarını korudukları sürece bu nesneleri tanımlayacaktır.
Bir tür konumsal bağlantı kurmak için, ameliyathanede bu sütuna tıklamamız gerekecek ve aşağıdaki ekran belirecektir:
Bu ekranda, test nesnenizin konumsal bir bağlantıya sahip olmasını istediğiniz bir nesneyi eklemek için '+' işaretini seçin.
'Temsilci Adı' nı seçeceğim ve bu nesnenin 'Tamam' düğmesinin üzerinde olması gerektiğini söyleyeceğim.
Ben bunu böyle ayarladım:
Şimdi, gelecekte Tamam düğmesinin bazı özelliklerinin değişmesi durumunda, QTP, 'Ajan Adı' nın üzerinde olup olmadığını belirleyecektir.
Akıllı Tanımlama
teknik destek mülakat soruları ve cevapları pdf
Bu, QTP tarafından bu iki durumdan birinde kullanılan mekanizmadır. QTP'nin sahip olduğu bir nesnenin açıklaması:
- Herhangi bir çalışma zamanı nesnesiyle eşleşmiyor
- Birden çok nesneyle eşleşir
Bu biraz ileri düzey bir kavramdır, bu nedenle daha sonra kolay ve ayrıntılı bir anlayış için bazı örneklerle buna değineceğiz.
Sıra Tanımlayıcı
Bu, benzer bir açıklamaya sahip nesnelerle nesnenin göreli sırasını gösteren sayısal bir değerdir. Bir nesne 1 ve Nesne 2 aynı zorunlu ve yardımcı özelliklere sahipse, sıralı tanımlayıcı nesneyi benzersiz şekilde tanımak için kullanılacaktır.
Bu değer, ekranın diğer nesneleriyle ilgilidir, bu nedenle ekranda herhangi bir değişiklik olması durumunda bu tanımlayıcı işe yaramayabilir. Zorunlu ve yardımcı özellikler yeterliyse, kayıt için sıralı bir tanımlayıcının atanmayacağına dikkat edilmelidir. Ameliyathanedeki nesne için ilgili sütuna tıklanarak daha sonra eklenebilir.
3 tür Sıra Tanımlayıcı vardır:
- Dizin: bu, bir nesnenin uygulama kodunda görünme sırasına bağlıdır
- Yer: bir ekran veya iletişim kutusu veya sayfadaki konuma göre
- Oluşturma Zamanı: Bu yalnızca tarayıcı nesneleri için kullanılır. Benzer özelliklere sahip 2 tarayıcının mevcut olması durumunda, önce ve sonra oluşturulan tarayıcı dikkate alınır.
Örneğin, Uçuş uygulamaları giriş ekranımızda 'dizin' tanımlayıcısının nasıl çalıştığını anlayalım:
Bunlar aşağıdaki bileşenlerdir:
Gördüğünüz gibi, statik metin ve düzenleme kutuları aynı 'metin' özelliğine sahiptir.
Birinin statik metin ve diğerinin WinEdit nesnesi olduğunu bilirsem, o zaman sorun yok demektir. Diyelim ki tüm bunlar WinObject olarak değerlendiriliyorsa, o zaman hangi nesne üzerinde işlem yapacağımı belirtmem gerekecek. Bu yalnızca zorunlu, yardımcı ve akıllı tanımlama başarısız olduğunda gerçekleşecektir. Yani QTP'ye hangisinin ne olduğunu söylemek için, bir 'Dizin' sıra tanımlayıcısı atayacağım. Bunu ameliyathaneden yapacağım.
Aracı adı statik metin tanımlayıcısını 0 olarak ayarlayacağım ve düzenleme kutusu için 1 olarak ayarlayacağım.
Şöyle görünüyor:
Dolayısıyla, statik metne erişmem gerekirse, bunu aşağıdaki gibi yapacağım:
WinObject ('metin: = Ajan Adı:', dizin: = 0) - Bu statik metne atıfta bulunacaktır
WinObject ('metin: = Aracı Adı:', dizin: = 1) - Bu, Düzenleme kutusuna atıfta bulunacaktır
Aynı teori Konum tanımlayıcısı için de geçerlidir, tek fark, belirli bir nesneye uygulanabilecek sayısal değeri belirlemek için penceredeki konumu seçeceğiz.
Nesne Tanımlama özelliklerini yapılandırma:
Belirli bir sınıftaki bir nesnenin tanınması için dikkate alınması gereken zorunlu, yardımcı özellikler ve sıralı tanımlayıcılar “Araçlar-> Nesne Tanımlayıcı” kullanılarak yapılandırılabilir. Akıllı tanımlama özelliklerini de bu pencereden ayarlayabiliriz.
Pencere aşağıdaki gibi görünür:
Yukarıdaki görüntüde de görülebileceği gibi, açılır kutudan ortam seçilebilir. Bu seçildikten sonra, ilgili ortamlardaki nesnelerin sınıfları listede gösterilir. Bir nesne seçildikten sonra, zorunlu ve yardımcı özellikler görüntülenir. Kullanıcı bu listeye ek özellikler Ekleyebilir / Kaldırabilir.
Ayrıca, gerektiğinde belirli bir nesne sınıfı için akıllı tanımlama etkinleştirilebilir / devre dışı bırakılabilir. Sıralı tanımlayıcıyı ayarlamak için, nesneyi Konum, Dizin veya Oluşturma Zamanı kullanarak tanımlamak üzere seçilebilecek bir açılır menü vardır (yalnızca tarayıcı türü için).
Tam teşekküllü QTP programlarına geçmeden önce temel kavramları toparlayacağız. Bir sonraki QTP makalesi farklı kayıt modlarına, Object Spy, Object Repository vb. Detaylara sahip olacaktır.
=> QTP Training Tutorials Series İçin Burayı Ziyaret Edin
Önerilen Kaynaklar
- QTP'de Nesne Deposu - Öğretici # 22
- QTP Eğitimi # 18 - QTP Örnekleriyle Açıklanan Veriye Dayalı ve Karma Çerçeveler
- QTP Eğitimi # 24 - QTP Testlerinde Sanal Nesneleri ve Kurtarma Senaryolarını Kullanma
- QTP Eğitimi # 6 - İlk Testimiz için QTP Kaydını ve Çalıştırma Ayarlarını Anlamak
- QTP Eğitimi # 23 - QTP Akıllı Nesne Tanımlama, Eşitleme Noktası ve Test Sonucu Analizi
- QTP Eğitimi # 8 - QTP Kayıt Modları, Nesne Casus ve Nesne Depoları Hakkında Bilgi Edinin
- QTP'de parametrelendirme (Bölüm 2) - QTP Eğitimi # 20
- QTP Öğreticileri - 25+ Micro Focus Hızlı Test Uzmanı (QTP) Eğitim Öğreticileri