Cucumber Çerçeve: Nedir? Cucumber Test Aracı?

Nedir? Cucumber?

Cucumber Davranış Odaklı Geliştirmeyi (BDD) destekleyen bir test aracıdır. Teknik bilgilerinden bağımsız olarak herkesin anlayabileceği testler yazmanın bir yolunu sunar. BDD'de kullanıcılar (iş analistleri, ürün sahipleri) önce, geliştiriciler kodlarını yazmadan önce ürün sahipleri tarafından incelenip onaylanması için sistemin davranışını müşterinin bakış açısından tanımlayan senaryolar veya kabul testleri yazarlar. Cucumber çerçeve kullanımları Ruby programlama dili.

Cucumber iskelet
Cucumber iskelet

BDD nasıl çalışır? Cucumber Otomasyon?

Bir Net Bankacılık uygulamasında Fon Transferi modülünü oluşturmakla görevlendirildiğinizi düşünün.

Bunu test etmenin birden fazla yolu var Cucumber Test çerçevesi

  1. Kaynak hesapta yeterli bakiye olması durumunda Fon Transferi gerçekleşmelidir
  2. Hedef hesap bilgileri doğruysa Para Transferi yapılmalıdır
  3. Kullanıcının girdiği işleme ilişkin işlem şifresi/rsa kodu/güvenlik kimlik doğrulaması doğruysa Fon Transferi gerçekleşmelidir
  4. Fon Transferi Resmi Tatil Olsa Bile Gerçekleştirilmelidir
  5. Fon Transferi, hesap sahibi tarafından belirlenen ileri bir tarihte yapılmalıdır.

The Test Senaryosu X miktarını Y gün/ay aralığında transfer etme, toplam miktar Z'ye ulaştığında zamanlanmış transferi durdurma vb. gibi ek özellikleri göz önünde bulundurduğumuzda daha ayrıntılı ve karmaşık hale gelir

Geliştiricilerin genel eğilimi, özellikleri geliştirmek ve test kodunu daha sonra yazmaktır. Yukarıdaki durumda da görüldüğü gibi, Test Durumu Bu dava için geliştirme karmaşıktır ve geliştirici erteleyecektir Test yapmak serbest bırakılana kadar, bu noktada hızlı ama etkisiz testler yapacak.

Bu sorunun üstesinden gelmek için, Cucumber BDD (Davranış Odaklı Geliştirme), Tasarlandı. Bir geliştirici için tüm test sürecini kolaylaştırır

In Cucumber BDD, ne yazarsan yaz, içine girmeli Verilen-Ne Zaman-Sonra adımlar. Yukarıdaki aynı örneği BDD'de ele alalım

Given that a fund transfer module in net banking application has been developed
And I am accessing it with proper authentication
WhenI shall transfer with enough balance in my source account
Or I shall transfer on a Bank Holiday
Or I shall transfer on a future date
And destination a/c details are correct
And transaction password/RSA code/security authentication for the transaction is correct
And press or click send button
Then amount must be transferred
And the event will be logged in log file

Yazmak, okumak, anlamak kolay değil mi? Fon transferi modülüne ilişkin olası tüm test senaryolarını kapsar ve daha fazlasını barındıracak şekilde kolaylıkla değiştirilebilir. Ayrıca, daha çok fon transferi modülü için dokümantasyon yazmaya benziyor.

Avantajları Cucumber Yazılım

  1. Kodu kolayca okuyamayan iş paydaşlarını dahil etmek yararlı olacaktır
  2. Cucumber Test aracı son kullanıcı deneyimine odaklanır
  3. Test yazma stili, testlerde kodun daha kolay yeniden kullanılmasına olanak tanır
  4. Hızlı ve kolay kurulum ve yürütme
  5. Cucumber test aracı aşağıdakiler için etkili bir araçtır: test yapmak

Cucumber vs Selenium ALM'ye karşı

Bu bölümde aradaki farkı inceleyeceğiz. Cucumber, Selenium ve ALM.

Cucumber HP ALM (QTP) Selenium
Cucumber yazılım ücretsizdir QTP pahalıdır Ücretsiz
Cucumber yazılım davranış odaklı bir geliştirme aracıdır İşlevsel bir Otomasyon Aracıdır Bu bir İşlevsel ve Performanstır ( Selenium Izgara) test aracı
Eklenti Cucumber test aracı daha hızlı çalışır Eklenti karşılaştırıldığında daha yavaştır Cucumber ve Selenium Eklentiler salatalıktan daha yavaştır
Cucumber Çerçeve Ruby'nin ötesinde diğer dilleri de destekler Java, Scala, Groovy vb. QTP yalnızca VB betiğini destekler Selenium destekler Java, .Net ve diğer birçok dil
Otomasyon adımlarının yazılması, test uzmanlarının ve geliştiricilerin ortak çabasıdır In QTP otomasyon adımlarını yalnızca test uzmanı yazar Facebok sayfasını beğenin : Cucumber Araç, otomasyon adımlarının yazılması, test uzmanlarının ve geliştiricinin ortak çabasıdır
Cucumber test aracı yalnızca web ortamını destekler Web, masaüstü ve herhangi bir istemci sunucu uygulamasını destekleyin Yalnızca web ortamını destekler

Ayrıca Kontrol Edin: - UFT vs Selenium: Arasındaki Fark Selenium ve HP UFT