Muhabir.Olay Bildir UFT/QTP Örnek ile

⚡ Akıllı Özet

Muhabir.Olay Bildir UFT/QTP micPass, micFail, micDone ve micWarning durum sabitlerini kullanarak özel geçme, kalma, uyarı ve bilgilendirme mesajlarını doğrudan Çalıştırma Sonuçları Görüntüleyicisine gönderir ve test uzmanlarına otomatik bir komut dosyasının gerçekte ne yaptığının okunabilir, adım adım bir kaydını sunar.

  • 🎯 Tanım: Reporter.ReportEvent, özel bir durum ve mesajı ilgili alana yazar. UFT Sonuç ağacı, yerleşik kontrol noktalarından bağımsızdır.
  • 🧩 Sözdizimi: Bu yöntem, sırasıyla EventStatus, ReportStepName, Details ve isteğe bağlı ImageFilePath parametrelerini alır.
  • 🚦 Durum sabitleri: micPass, micFail, micDone ve micWarning komutlarının her biri adım rengini ve çalışma durumunun değişip değişmeyeceğini belirler.
  • 🖼️ Ekran Görüntüleri: Başarısız olan bir adıma görüntü eklemek için, yakalanan bitmap yolunu dördüncü argüman olarak iletin.
  • ⚙️ Özellikler: Reporter.Filter, Reporter.ReportPath ve Reporter.RunStatus, hangi bilgilerin günlüğe kaydedileceği ve sonuçların nereye kaydedileceği konusunda kontrol sağlar.
  • 🧪 Örnekler: ReportEvent'i bir If…Then kontrolü içine alın, böylece her adım gerçek sonuçtan farklı olarak başarılı veya başarısız olduğunu bildirir.
  • ???? Filtreleme: CI çalıştırmaları sırasında Reporter.Filter'ı rfEnableErrorsAndWarnings olarak ayarlayın, böylece başarılı adımlar gerçek hataları gizlemez.
  • 📊 Özel raporlar: Sonuçları paydaşların beklediği şekilde sunmak için results.xml dosyasını bir XSL veya VBScript kütüphanesiyle birleştirin.

Reporter.ReportEvent nedir? UFT/QTP?

Reporter.ReportEvent Bu, içine yerleştirilmiş standart bir yöntemdir. UFT/QTP (şimdi satılıyor) OpenText/Mikro Odak UFT Birincisi, test sonuçları penceresine doğrudan özel, insan tarafından okunabilir bir mesaj yazan bir ReportEvent çağrısıdır. Yerleşik kontrol noktalarının oluşturduğu otomatik geçme veya kalma kararlarının aksine, ReportEvent çağrısı, test uzmanının tam olarak neyin, ne zaman ve nasıl kaydedileceğine karar vermesini sağlar.

Bu HP QTP öğretici fonksiyonun kullanımını gösterir Reporter.ReportEvent hem de Sonuçların BiçimlendirilmesiBu eğitimde sizden kısa bir komut dosyası oluşturmanız isteniyor ve bu komut dosyası alıştırmasını tamamlamak, özel raporlamanın Sonuçlar ağacını gerçek zamanlı olarak güncellediğini görmenin en hızlı yoludur.

Tıkla okuyun videoya erişilemiyorsa

Otomasyonda Reporter.ReportEvent en büyük öneme sahiptir çünkü bir betik genellikle gözetimsiz olarak, bir program dahilinde veya bir CI/CD işlem hattı içinde çalışır. Çalıştırma sonuçları dosyası, olan bitenin tek kaydı haline gelir; bu nedenle sessizce başarısız olan veya açıklama yapılmadan geçen bir adım, daha sonra hata ayıklamayı çok daha zorlaştırır. Kritik bir işlemden sonra açık bir ReportEvent çağrısı eklemek, Sonuçlar ağacını, bir test uzmanının, geliştiricinin veya yöneticinin betiği açmadan inceleyebileceği okunabilir, adım adım bir denetim izine dönüştürür.

Bu, nesne kontrol noktasından farklıdır. UFT Otomatik olarak oluşturulur ve kendi varsayılan adım adını kullanarak raporlanır. Reporter.ReportEvent ise, "WebEdit nesnesinde Check Point Geçti" gibi genel bir ifade yerine, "Sipariş onayı görüntülendi" gibi iş açısından anlamlı bir dil eklemenize olanak tanır; bu da teknik bilgisi olmayan bir paydaşın nihai raporda okumasını çok daha kolaylaştırır. Bu yöntem, komut dosyasının bir web sayfasını mı yoksa başka bir şeyi mi hedeflediğine bakılmaksızın aynı şekilde çalışır. Windows Reporter, herhangi bir test nesnesinin özelliği değil, küresel bir nesne olduğundan, masaüstü uygulaması veya ana bilgisayar terminali olabilir.

Guru99 en UFT/QTP Bu seri, bu yöntemi hemen ardından ele alıyor. Eğer, aksi halde ve var olan ifadelerÇünkü Reporter.ReportEvent çağrılarının çoğu, sonucun micPass mi yoksa micFail mi olarak raporlanacağına karar veren koşullu bir blok içinde yer alır.

Reporter.ReportEvent Sözdizimi ve EventStatus Değerleri

Sen kullanabilirsiniz Reporter.ReportEvent Micro Focus'ta özel test adımlarını raporlamak UFT'nin test sonuçları ağacı. Bu yöntem, aşağıda gösterildiği gibi sabit bir sırada üç zorunlu ve bir isteğe bağlı argüman kabul eder.

Reporter.ReportEvent EventStatus, ReportStepName, Details [, ImageFilePath]

OlayDurumu Adım için gösterilen simgeyi ve rengi ayarlar ve genel çalıştırma durumunu değiştirebilir; RaporAdımAdı Test Sonuçları ağacında görünen kısa etikettir ve genellikle beklenen sonuç olarak yazılır; Detaylar Daha uzun açıklamayı, genellikle gözlemlenen gerçek sonucu içerir; ve isteğe bağlı GörüntüDosyaYolu Komut dosyasında daha önce yakalanan bir ekran görüntüsünü o belirli adıma ekler.

DEĞER SABİT SONUÇLARA ETKİSİ ÇALIŞMA DURUMUNA ETKİSİ
0 micPass Adım, Sonuçlar ağacında "Geçti" olarak gösterilir. Değişiklik yok; test başarılı olarak devam ediyor.
1 micFail Adım, Sonuç ağacında Başarısız olarak gösteriliyor. Genel çalışma durumu Başarısız olarak değişti.
2 micDone Adım, bilgilendirici bir mesaj olarak gösteriliyor. Geçti/Kaldı durumunda değişiklik yok.
3 mikrofonUyarı Adım, uyarı olarak gösteriliyor. Geçti/Kaldı durumunda değişiklik yok.

Her bir sabit, adı yerine sayısal değeri olarak da iletilebilir, bu nedenle Muhabir.RaporOlay 1, “Adım”, “Detay” tıpkı şu şekilde davranır Reporter.ReportEvent micFail, “Step”, “Detail”Adlandırılmış sabit kullanmak, daha sonra başka bir test uzmanı tarafından sürdürülecek bir betikte okumayı kolaylaştırır.

Bir komut dosyası genellikle tek bir eylem içinde birden fazla ReportEvent çağrısı barındırır: bir eylem başlamadan önce bir micDone girişi, anahtar kontrolü için bir micPass veya micFail girişi ve yol boyunca fark edilen olağandışı herhangi bir şey için ek micWarning girişleri.

  • Otomasyon araçları kullanılarak test senaryoları yürütüldüğünde, bazı kullanıcılar için ham test sonuçlarını anlamak zor olabilir. Bunu şu şekilde yapabilirsiniz: results.xml dosyasını kullanarak test sonuçlarını tercih ettiğiniz şekilde sunan bir XSL dosyası oluşturabilirsiniz..
  • Ayrıca kullanabilirsiniz VBScript kütüphane fonksiyonları Sonuçları bir XLS veya metin dosyasına kaydedin. dışarıda haber yapmak için UFT.

Reporter.ReportEvent Nasıl Kullanılır: Pratik Örnekler

Sözdizimini bilmek bir şeydir; onu gerçek bir betik içinde görmek, dört durum sabitinin anlamını kavramayı sağlar. Aşağıdaki örnek, bir kontrolü If…Then…Else ifadesinin içine alır ve ardından Reporter.ReportEvent ile geçme veya kalma durumunu bildirir, böylece sonuç, gözden geçiren kişinin beklediği yerde, Sonuçlar ağacında tam olarak görünür.

If Browser("Guru99 Demo").Page("Guru99 Demo").WebButton("Login").Exist(5) Then
    Reporter.ReportEvent micPass, "Login button check", "Login button was found on the page"
Else
    Reporter.ReportEvent micFail, "Login button check", "Login button was not found on the page"
End If

Bu, aşağıdaki desende gösterilene benzer. Guru99 en VBScript koşullu ifadeler Bu eğitimde, bir If…Then…Else bloğu iki sonuç arasında seçim yapar; buradaki tek fark, her dalın sonucu kaydetmek için Reporter.ReportEvent'i de çağırmasıdır.

Kullanım micDone tamamen bilgilendirme amaçlı bir adım için, mikrofonUyarı Bir şey olağandışı göründüğünde ancak çalıştırmanın tamamen başarısız olmasına neden olmaması gerektiğinde. Sonraki kod parçası, veri giriş adımını Tamamlandı olarak kaydeder, ardından yavaş yanıtı Uyarı olarak işaretler ve isteğe bağlı ImageFilePath argümanını kullanarak bir ekran görüntüsü ekler.

Reporter.ReportEvent micDone, "Enter search text", "Typed 'UFT tutorial' into the search box"
errorImage = "C:\Results\SearchDelay.png"
Browser("Guru99 Demo").CaptureBitmap errorImage, True
Reporter.ReportEvent micWarning, "Search response time", "Results took longer than 5 seconds to load", errorImage

tutmak RaporAdımAdı kısa tut ve sakla Detaylar Gerçek sonuç hakkında spesifik bilgi verilmelidir. Başarısız bir gece çalışmasının ardından kaydedilen yüzlerce adımı inceleyen bir gözden geçiren kişi, komut dosyasını açmadan ne olduğunu anlayabilmelidir ve her işlemde tutarlı bir adlandırma modeli bu taramayı çok daha hızlı hale getirir.

ReportEvent'i birçok komut dosyasından çağıran ekipler, bu mantığı genellikle LogStep(status, name, details) gibi paylaşılan bir VBScript fonksiyonuna taşır; böylece her komut dosyası aynı If…Then bloğunu tekrarlamadan tutarlı bir Sonuç ağacı üretir.

Muhabir Nesnesinin Özellikleri: Filtre, Rapor Yolu ve Çalıştırma Durumu

Reporter.ReportEvent, Reporter nesnesinin tek üyesi değildir. Üç ek özellik, sonuçların ne içerdiği ve nerede görüntüleneceği konusunda ek kontrol sağlar. UFT Bu veriler depolanır ve üretim otomasyon çerçevelerinde sıklıkla karşımıza çıkar.

EMLAK AMAÇ TİPİK KULLANIM
Filtrele Sonuçlara hangi olay türlerinin yazılacağını kontrol eder. Reporter.Filter = rfEnableErrorsAndWarnings, uzun süren işlemlerde geçilen adımları gizler.
Rapor Yolu Salt okunur; geçerli çalıştırmanın sonuçlarının saklandığı klasörü döndürür. sonuçklasörü = Muhabir.RaporYolu
Çalışma Durumu Sadece okunabilir; şu ana kadar yapılan çalıştırmanın mevcut Başarılı/Başarısız durumunu döndürür. Eğer Reporter.RunStatus = micFail ise, İşlemi Sonlandır.

Reporter.Filter dört değer kabul eder: 0 veya rfEnableAll her olayı gösterir ve varsayılandır; 1 veya rfEnableErrorsAndWarnings geçen adımları gizler; 2 veya rfEnableErrorsOnly hem geçen adımları hem de uyarıları gizler; ve 3 veya rfDisableAll sonuç kaydını tamamen kapatır. Komut dosyasının ortasında Reporter.RunStatus'u kontrol etmek, bir test dalının kendi mantığını izlemesine olanak tanır, örneğin atlama.ping Bir önceki adım başarısız olduktan sonra, bir eylemin kalan adımları.

ReportPath ve RunStatus salt okunur olduğundan, bunlara bir değer atayamazsınız; bunları mevcut çalıştırma hakkında bilgi okumak için kullanın, örneğin bir komut dosyasının başında sonuç klasörünün yolunu bir günlük dosyasına yazmak veya ölümcül bir hatadan sonra uzun bir işlemi kısaltmak gibi. Bu özellikleri okumak ihmal edilebilir bir ek yük getirir, bu nedenle uzun bir regresyon test paketindeki her önemli adımdan sonra Reporter.RunStatus'u kontrol etmek, çalıştırmayı fark edilir bir şekilde yavaşlatmadan güvenlidir.

Reporter.ReportEvent için En İyi Uygulamalar UFT

Bazı alışkanlıklar, özel raporlamayı gereksiz gürültü yerine faydalı hale getirir.

  • micFail'i gerçek arızalar için saklayın: Her micFail çağrısı Reporter.RunStatus'u değiştirir, bu nedenle kozmetik sorunlar için kullanılması, aynı çalıştırmanın ilerleyen aşamalarında gerçek hataları gizler.
  • ReportStepName'i beklenen sonuç gibi yazın: Bir denetleyici, Ayrıntılar sütununu okumaya gerek kalmadan, yalnızca adım adından kontrolü anlayabilmelidir.
  • Yalnızca hata oluştuğunda ekran görüntüsü alın: Her adımda ImageFilePath parametresini geçirmek, sonuç klasörünü hızla doldurur ve çok az fayda sağlarken çalışma süresini yavaşlatır.
  • Gürültülü kayıtları filtrele: Planlanmış veya CI çalıştırmaları için Reporter.Filter'ı rfEnableErrorsAndWarnings olarak ayarlayın, böylece başarılı adımlar önemli hataları gizlemez.
  • Mantığı merkezileştirin: Reporter.ReportEvent çağrılarını yeniden kullanılabilir bir yapının içine sarın. aksiyon veya fonksiyon kütüphanesi, böylece paketteki her komut dosyası sonuçları aynı şekilde kaydeder.
  • Teknik bilgiye sahip olmayan okuyucular için dışa aktarma: Kalite kontrol ekibi dışındaki paydaşların sonuçları incelemesi gerektiğinde, results.xml dosyasını özel bir XSL koduyla birleştirin. UFT.

SSS

ReportEvent, sonuçlar ağacına düz metin yazar. ReportHTMLEvent, şu tarihten itibaren kullanılabilir: UFT 12.52 sürümü, Çalıştırma Sonuçları Görüntüleyicisinde metni kalınlaştırmanıza, renklendirmenize veya biçimlendirmenize olanak tanıyan HTML kodunu adım adı ve ayrıntılarında kabul eder.

Hayır. Sadece micFail, genel çalıştırma durumunu Başarısız olarak değiştirir. micDone ve micWarning, bilgi için Sonuçlar ağacına bir adım yazar, ancak uyarılar kaydedilmiş olsa bile test yine de Başarılı olarak tamamlanabilir.

Evet. Bir nesnenin CaptureBitmap yöntemiyle bir bitmap yakalayın, bir dosyaya kaydedin ve bu dosya yolunu isteğe bağlı dördüncü ImageFilePath argümanı olarak iletin. UFT Bu adım için Yakalanan Veriler bölmesindeki görüntüyü gösterir.

Evet. Yapay zekâ kodlama asistanları, bir kontrolün düz dildeki açıklamasından If…Then ve ReportEvent şablonlarını oluşturabilir ve micFail'i yanlış kullanan veya Details'ı atlayan komut dosyalarını işaretleyebilir. Yine de bir test uzmanının kaydedilen durumun gerçek sonuçla eşleştiğini doğrulaması gerekir.

Yapay zekâ destekli gözlem araçları, bir çalıştırmayı özetleyebilir ve anormallikleri otomatik olarak vurgulayabilir, ancak Reporter.ReportEvent yine de bu araçlara veri sağlayan, geliştirici tarafından kontrol edilen kesin adım adlarını ve durumlarını sunar. Çoğu ekip, birini diğeriyle değiştirmek yerine ikisini birlikte kullanır.

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