Eylemler QTP/UFT Örnek ile

⚡ Akıllı Özet

Eylemler UFT/QTP Test senaryosunu mantıksal, yeniden kullanılabilir birimlere bölerek test uzmanlarının otomasyonu daha hızlı oluşturmasını, sürdürmesini ve paylaşmasını sağlayın. Bu sayfa, üç eylem türünü, bunların nasıl bölüneceğini ve çağrılacağını ve eylemler arasında verilerin nasıl aktarılacağını açıklamaktadır.

  • 🧩 Tanım: Bir eylem, bir dizi test adımını tek bir modüler, yeniden kullanılabilir birim halinde gruplandırır. UFT/QTP komut.
  • 🔁 Tekrar kullanılabilir eylemler: Aynı işlemi aynı test içinde veya başka herhangi bir testten birden fazla kez çağırın.
  • 🔒 Tekrar kullanılamayan işlemler: Yalnızca bir kez ve sadece oluşturuldukları testin içinde çalıştırın.
  • 🌐 Dışsal eylemler: Yeniden kullanılabilir bir işlem, farklı bir test tarafından çağrıldığında salt okunur harici bir işleme dönüşür.
  • ✂️ Bölme: Büyük bir işlemi bağımsız kardeş işlemlere veya iç içe geçmiş ebeveyn-çocuk çiftlerine bölün.
  • 📞 Çağrı işlemleri: Yeni bir eylem ekleyin, bir eylemin kopyasını ekleyin veya mevcut bir eyleme çağrı yapın.
  • 📤 Parametreler: RunAction ifadesini kullanarak işlemler arasında giriş ve çıkış değerlerini aktarın.
  • 🗂️ Veri sayfaları: Genel test verileri için Global sayfasını, özel veriler için ise her eylemin Local sayfasını kullanın.

Eylem nedir? UFT/QTP?

İşlemler in UFT/QTP Bir testi "mantıksal birimlere" veya "iş süreçlerine" ayırın. Her eylem, oturum açma, uçuş arama veya bilet rezervasyonu gibi tanınabilir bir görevi gerçekleştiren adımları bir araya getirir. Eylemler, daha modüler ve verimli bir komut dosyası oluşturmaya yardımcı olur.

Yeni bir komut dosyası oluşturulduğunda, yalnızca bir işlemden oluşur. Micro Focus komut dosyanıza daha fazla işlem ekleyebilirsiniz. UFT Gereksinimlere uygun olarak senaryo oluşturulur ve eklenen her eylem, testin geri kalanından ayrı olarak kendi mantığını ve yerel verilerini korur.

Uzun bir betiği eylemlere bölmek, bir testin değişmesi gerektiği anda büyük fayda sağlar. Bir test uzmanı, diğer eylemlerde yer alan arama veya ödeme mantığına dokunmadan, örneğin giriş dizisi gibi bir eylemi güncelleyebilir. Bu izolasyon ayrıca eylemleri, aynı adımları tekrar kaydetmek yerine diğer betiklerin çağırabileceği yeniden kullanılabilir yapı taşlarına dönüştürür.

Örneğin, tipik bir Uçuş Rezervasyonu betiği, Giriş eylemi, Uçuş Arama eylemi ve Bilet Rezervasyonu eylemi olmak üzere üç bölüme ayrılır. Her birinin kendi adımları ve yerel verileri vardır, bu nedenle yalnızca girişi doğrulaması gereken bir test uzmanının rezervasyon akışını kaydetmesine veya sürdürmesine hiç gerek yoktur.

Eylem Türleri UFT/QTPYeniden Kullanılabilir, Yeniden Kullanılamaz ve Harici

UFT/QTP Üç farklı eylem türünü destekler ve seçtiğiniz tür, bir eylemin komut dosyaları arasında paylaşılıp paylaşılamayacağına veya oluşturulduğu teste özel kalıp kalmayacağına karar verir.

Eylem Türü Nerede çalışabilir? Arama Testinde Düzenlenebilir
Yeniden kullanılabilir Aynı test, birden fazla kez veya başka herhangi bir test Evet, bunu sağlayan testten biliyorum.
Tekrar Kullanılamaz Yalnızca oluşturulduğu testte ve yalnızca bir kez. Evet
Harici Yeniden Kullanılabilir Başka bir testten paylaşılan, saklanmış bir işlem olarak çağrılır. Hayır, salt okunur; yalnızca yerel Veri Tablosu kopyası düzenlenebilir.

Tekrar kullanılabilir bir eylem, bir hale gelir. dış eylem Başka bir test, onu sahiplenen test yerine çağırdığı anda, harici eylemler çağıran testte salt okunur kalır çünkü paylaşılan bir eylem aynı anda düzinelerce komut dosyası tarafından kullanılabilir ve her çağıranın adımları düzenlemesine izin vermek diğerlerini bozabilir. Yine de çağrıyı parametreleştirebilir ve Veri Tablosunun bir kopyasıyla yerel olarak çalışabilirsiniz.

Genel bir kural olarak, mantığı hala tek bir teste özgü olduğu sürece yeni bir eylemi yeniden kullanılamaz halde tutun. Promoİkinci bir komut dosyasının aynı adımlara ihtiyaç duyması halinde onu yeniden kullanılabilir hale getirin ve bu ikinci komut dosyası onu çağırdığı anda harici, salt okunur bir işlem gibi davranmasını bekleyin.

İşlemleri Bölme, Kopyalama ve Çağırma Nasıl Yapılır? UFT

Bir eylem büyüdükçe, onu koruyun.ping Her adımın tek bir yerde olması, betiğin hata ayıklamasını ve yeniden kullanımını zorlaştırır. UFT Bu özellik, mevcut bir işlemi, yönetilmesi zor hale geldiğinde ikiye bölmenizi sağlar.

  • Bağımsız (kardeş) ayrılık: Seçilen işlem, birbiri ardına çalışan iki ayrı işleme bölünür ve her işlem bir döngü içinde çalışır.ping kendi yerel Veri Tablosuna sahiptir.
  • İç içe (ebeveyn-çocuk) bölünme: Seçilen işlem, son adımı ikinci, alt işlemi çağıran bir üst işleme bölünür ve böylece ikisi arasında mantıksal bir bağımlılık korunur.

Eylemler bir kez gerçekleştiğinde, UFT Bir eylemi teste dahil etmenin üç yolunu sunar. Ekle Menü:

  • Yeni Eylem Çağrısı Ekle: Mevcut testin içine yeni, boş bir işlem oluşturur.
  • Eylem Kopyalama Çağrısı Ekle: Mevcut bir eylemi, kontrol noktaları, parametreleştirme ve Veri Tablosu sekmesi de dahil olmak üzere tümüyle çağıran teste kopyalar. Kopya tamamen bağımsızdır, bu nedenle düzenlemeler asla orijinali etkilemez veya orijinalden etkilenmez. Hem yeniden kullanılabilir hem de yeniden kullanılamaz eylemleri kopyalayabilirsiniz.
  • Mevcut Eyleme Çağrı Ekle: Başka bir testte saklanan yeniden kullanılabilir bir eyleme salt okunur bir çağrı ekler. Yalnızca oluşturulduğu testte değiştirilebilir; bu da her çağırıcının senkronize kalmasını sağlar ve büyük test paketlerinin bakımını kolaylaştırır.

Her çağrı şu sonuca varıyor: RunAction Uzman Görüşü'ndeki açıklama:

' Calls Action2, which is stored in Test2, running it for one iteration
RunAction "Action2[Test2]", oneIteration

Eylem, Eylem Çağrı Özelliklerinde belirtilen sayıda kez çalışır. Örneğin, Action2, Test2'nin Veri Tablosunun her yinelemesinde çalışacak şekilde ayarlanmışsa ancak Test1'deki çağıran Action1 yalnızca bir kez çalışıyorsa, Action2 yine de yalnızca bir kez yürütülür, çünkü çağrının kendisi yalnızca bir kez tetiklenir.

💡 İpucu: Bir test birden fazla işlem içeriyorsa, şunu açın: Test Akışı Görünüm menüsünden paneli seçerek sürükleyip bırakarak öğelerin sırasını değiştirebilirsiniz. Bu, öğelerin görünme sırasını değiştirir. UFT Herhangi bir eylemin içindeki adımları düzenlemeden eylemleri yürütür.

Aşağıdaki video, önceki eğitimlerde oluşturulan beş adımlı giriş komut dosyasını temel alarak geliştirilmiştir. Uçuş rezervasyonu Bu video, eylemlerin oluşturulması, bölünmesi ve çağrılması süreçlerini baştan sona ele alıyor. Bu serideki en uzun video bu. UFT/QTP öğretici serisiBu nedenle izlerken not almak faydalı olur.

Tıkla okuyun videoya erişilemiyorsa

İşlemler Arasında Parametreleri Nasıl İletirsiniz ve Çıktı Değerlerini Nasıl Saklarsınız?

Bir eylemi çağırmanın ötesinde, çoğu gerçek betik, veriyi bu eyleme aktarmaya ve sonucu geri okumaya ihtiyaç duyar. UFT Her eyleme kendi giriş ve çıkış parametrelerini ve döndürdüğü değeri kalıcı hale getirmenin çeşitli yollarını sunar.

Bir Eyleme Parametre Geçirme ve Bir Eylemden Parametre Alma

Tıpkı fonksiyonlar veya yöntemler Programlama dillerinde, bir eylem girdi ve çıktıyı tanımlayabilir. parametrelerBu parametrenin hiçbir ilişkisi yoktur. Test Verisi Parametrelendirmesi Daha önce ele alındığı gibi; buradaki parametreler bir Veri Tablosu sütununa değil, eylemin kendisine aittir. Bunları şuradan yapılandırın: Düzenle > Eylem > Eylem ÖzellikleriVeya Anahtar Kelime Görünümünde eyleme sağ tıklayarak. Bu sözdizimini kullanarak çağrıya değerler iletin:

' Passes an input value and captures the action's output into myResult
RunAction "Action1", oneIteration, "testuser", myResult

Bir Eylemin Çıktı Değerini Saklama

Komut dosyasının geri kalanının ihtiyaçlarına bağlı olarak, bir eylemin döndürdüğü değeri üç yerden birinde saklayabilirsiniz:

  • Bir değişken: RunAction "Action1", oneIteration, "testuser", myResult Çıktıyı doğrudan depolar. myResult.
  • An Çevre değişkeni: Kullanıcı tanımlı bir değişken oluşturun Dosya > Ayarlar > Ortamsonra yazın RunAction "Action1", oneIteration, "testuser", Environment("env_var").
  • Bir Veri Tablosu sütunu: RunAction "Action1", oneIteration, "testuser", DataTable("A", dtGlobalSheet) Sonucu doğrudan genel sayfaya yazar.

Küresel ve Yerel Veri Sayfaları

İşlemler, iki tür sayfa aracılığıyla test verilerini okur ve yazar. Küresel Veri Sayfası Bu, tüm test için benzersizdir; herhangi bir işlem ondan okuyabilir veya ona yazabilir ve her zaman "Global" olarak adlandırılır. Yerel Veri Sayfası Her eylem için benzersizdir, o eylemin adını taşır ve yalnızca kendi eylemi tarafından okunabilir veya yazılabilir.

Bir Eylemi Sonlandırma ve Yinelemeyi Kontrol Etme

Bir adımın, bir işlemin tamamlanmasına izin vermek yerine, işlemi erken durdurması gerektiğinde, UFT dört ifade sunmaktadır:

  • ExitAction — Yalnızca mevcut işlemi durdurur.
  • ExitActionIteration — mevcut eylem döngüsünü durdurur ve bir sonrakine geçer.
  • ExitRun — tüm test çalışmasını anında durdurur.
  • ExitGlobalIteration — Mevcut küresel test döngüsünü durdurur ve bir sonrakine geçer.

Bir işlemi yürütürken UFT/QTP senaryo Eylemleri kullanan bir sistemde, hem Küresel Yinelemeler hem de Yerel Yinelemeler'i göz önünde bulundurun, çünkü her ikisi de bir eylemin gerçekte kaç kez çalışacağını etkiler. Çağrılan bir eylemin ne sıklıkla tekrarlandığını değiştirmek için ilgili bölümü açabilirsiniz. Eylem Çağrısı Özellikleri > Çalıştır Sekme üzerinden yineleme modunu ayarlayabilirsiniz.

⚠ Sık karşılaşılan hata: Her yerel yinelemede çalışacak şekilde ayarlanmış ancak yalnızca bir kez çalışan bir üst öğeden tetiklenen çağrılan bir eylem yine de tek bir kez yürütülecektir. Çağrılan bir eylemin tekrarlanacağını varsaymadan önce hem üst öğenin küresel yineleme sayısını hem de alt öğenin Eylem Çağrı Özelliklerini doğrulayın.

SSS

Bir eylem, yerleşik bir özelliktir. UFT Kendine ait Nesne Deposu ve Veri Tablosu olan bir özellik olup, yeniden kullanılabilir veya kullanılamayabilir. işlev Bu, tamamen VBScript'tir, her zaman yeniden kullanılabilir ve kendine ait bir Nesne Deposu veya Veri Tablosu içermez.

Evet. Eylemin özelliklerini açın ve istediğiniz zaman yeniden kullanılabilir bayrağını değiştirin. Daha önce yeniden kullanılabilir olan bir eylemi, diğer testler hala onu çağırırken yeniden kullanılamaz olarak işaretlerseniz, çağıran testler başarısız olur ve UFT Aramalar kaldırılana kadar bir uyarı gösterir.

Eylemler, bağımsız komut dosyası dosyaları olarak değil, .mtr/.mts eylem klasörleri olarak testle birlikte kaydedilir. Buna karşılık, fonksiyon kütüphaneleri, herhangi bir testin ilişkilendirebileceği ve yeniden kullanabileceği ayrı .vbs veya .qfl dosyaları olarak kaydedilir.

Evet. Yapay zeka destekli test tasarım araçları, kaydedilmiş bir akışı tarayabilir ve olası eylemler olarak giriş yapma, arama ve ödeme gibi mantıksal kırılma noktaları önerebilir. Bir test uzmanı, son halini vermeden önce bu ayrımın gerçek yeniden kullanım ihtiyaçlarıyla eşleştiğini yine de doğrulamalıdır.

Faydalı. Kendi kendini onaran nesne tanımlama özelliği, taşınan veya yeniden adlandırılan bir denetimi tamamen başarısız olmak yerine bir eylem içinde yeniden bağlayarak, birçok komut dosyası tarafından paylaşılan yeniden kullanılabilir ve harici eylemler üzerindeki bakım yükünü azaltır. Revİyileşmiş nesnelere tamamen güvenmeden önce onları inceleyin.

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