bdd framework
BDD (Davranış Odaklı Geliştirme) Çerçeve Eğitimi: BDD Çerçevesinin Özelliklerini ve Avantajlarını Salatalık Çerçeve Örnekleriyle Keşfedin
BDD çerçevesi, yani Davranış Odaklı Geliştirme, test uzmanı / iş analistinin basit metin dilinde (İngilizce) test senaryoları oluşturmasına olanak tanıyan bir yazılım geliştirme yaklaşımıdır.
Senaryolarda kullanılan basit dil, teknik olmayan ekip üyelerinin bile yazılım projesinde neler olup bittiğini anlamasına yardımcı olur. Bu, teknik ve teknik olmayan ekipler, yöneticiler ve paydaşlar arasındaki iletişimi geliştirmeye yardımcı olur.
Ne öğreneceksin:
- BDD Davranış Odaklı Geliştirme Nedir?
- Salatalık - BDD Çerçeve Aracı
- BDD Çerçevesinin Avantajları
- Sonuç
BDD Davranış Odaklı Geliştirme Nedir?
BDD, kullanıcıların yazılım koduna minimum müdahale ile birden fazla test verisi ile çalışmasına ve böylelikle yazılım geliştirme / test otomasyonunda zaman kazandıran bir mekanizma olan kodun yeniden kullanılabilirliğini artırmaya yardımcı olan TDD yani Test Driven Development'dan ortaya çıkar. .
BDD, TDD'yi miras alarak, avantajlarının yanı sıra tüm bu özelliklere de sahiptir.
android telefon için ücretsiz mp3 indirici uygulaması
- Test senaryoları, Özellik dosyası olarak adlandırılan farklı bir dosyaya ayrı olarak yazılır.
- Testler, kullanıcı hikayelerine ve sistem davranışına sıradan bir dilde odaklanılarak yazılır.
- Kod, adım tanımları dosyasında, yani Java, Python'da farklı şekilde yazılabilir.
Önerilen Okuma => Test Uzmanları TBB / BDD Yaklaşımına Nasıl Dahil Edilir?
Neden BDD Framework Kullanılmalı?
BDD çerçevesinden önce herkes TDD kullanıyordu. Paydaşların kullanılan çerçeveye aşina olması ve teknik bilgilerinin yeterli olması koşuluyla, TDD yazılım geliştirmede iyi çalışır. Ancak, bu her zaman böyle olmayabilir.
BDD, teknik ve teknik olmayan ekipler arasındaki boşluğun üstesinden gelmek için bir köprü görevi gören bir yol sağlar çünkü test senaryoları genellikle basit metinlerle, yani İngilizce ile yazılır. BDD'nin ana avantajı, düşük jargon ve anlaşılması daha kolay olan daha net bir yaklaşımdır.
BDD Yaklaşımı Nasıl Uygulanır?
Test senaryoları, testin ayrıntılı bir açıklaması, uygulamanın nasıl test edileceği ve herkes tarafından anlaşılabilecek uygulama davranışı ile sade bir dille yazılmalıdır.
Bu eğiticide, şunlara odaklanacağız: Salatalık - BDD için bir yazılım aracıdır ve dilini, yani Gherkin'i kullanarak pratik olarak uygulamayı öğrenecektir.
Salatalık - BDD Çerçeve Aracı
Cucumber, test senaryoları yazmak için bir Davranış Odaklı Geliştirme (BDD) çerçeve aracıdır.
Verildi - Ne Zaman - Sonra Yaklaşım
- Verilen: Belirli bir bağlam (Önkoşullar).
- Ne zaman: Bazı Eylemler gerçekleştirilir (Eylemler).
- Sonra: Yukarıdaki adımdan sonraki özel sonuç / sonuç (Sonuçlar).
Örnek Özellik Dosyası
Feature : BDD implementation using Cucumber Scenario : Login to G-mail using Cucumber plugin Given User is navigating to G-mail Login Page When User need to enter username as 'Username' and password as 'Password' Then User is successfully navigated to the G-mail Mail Box
Örnek Adım Tanım Dosyası
import cucumber.api.java.en.Given; import cucumber.api.java.en.Then; import cucumber.api.java.en.When; public class Sample { @Given('^User is navigating to G-mail Login Page$') public void user_is_navigating_to_G_mail_Login_Page() throws Throwable { // Write code here that turns the phrase above into concrete actions } @When('^User need to enter username as '((^')*)' and password as '((^')*)'$') public void user_need_to_enter_username_as_and_password_as(String arg1, String arg2) throws Throwable { // Write code here that turns the phrase above into concrete actions } @Then('^User is successfully navigated to the G-mail Mail Box$') public void user_is_successfully_navigated_to_the_G_mail_Mail_Box() throws Throwable { // Write code here that turns the phrase above into concrete actions } }
Cucumber, davranış odaklı geliştirme yaklaşımının uygulanmasına yardımcı olan bir test eklentisidir.
Önerilen Okuma => Bilmeniz Gereken En İyi BDD Araçları
BDD Çerçevesinin Avantajları
Aşağıda BDD'nin çeşitli avantajları listelenmiştir.
# 1) Kullanıcı Hikayelerinin Kapsamı
BDD ile Hibrit Çerçeve, farklı özelliklerle birleştirilmek üzere tasarlanmıştır. Yazılım geliştirme aşamasındaki her kaynak, BDD çerçevesine katkıda bulunabilir.
Özellik dosyası biçimindeki kolay meslekten olmayan metin kavramı sayesinde, teknik kaynakların paydaşlarının senaryoları kullanıcı hikayelerini kullanarak Gherkin dilinde yazmasına olanak tanır. Düz metnin uyumluluğu, test konusunda maksimum kapsama sağlamaya yardımcı olur.
Senaryoları içeren özellik dosyası:
- İşletmeden tanımlanmış kullanıcı hikayeleri.
- Geliştiricilerin, özelliklerin iş gereksinimlerini karşılayıp karşılamadığını belirleme kriterleri.
- Test ekibi için senaryoları test edin.
- Kodlarını adım tanımlama dosyalarına ayrı ayrı yazmalarına olanak tanıyan bir otomasyon test cihazı için kabuk kapağı.
- Paydaşlar için açıklanmış test senaryoları.
Adım tanımlarının sınıflandırılması, otomasyon test edicisinin kodunu el değmeden tutmasına yardımcı olur ve böylece komut dosyalarının bakımına yardımcı olur.
# 2) Senaryoların Açıklığı
Kornişon dili, BDD kullanılarak test edilen / geliştirilen ürünün sonucuna odaklanan düz bir meslekten olmayan metin kullanır.
Özellik dosyası, teknik açıklamayı otomasyon test cihazları için farklı bir adım tanımları dosyasında ayırdığından, teknik bilgisi olmayan bir kişinin otomatikleştirilmiş testi kolayca anlamasına akıllıca yardımcı olur. Herhangi bir güncelleme küçük bir tartışmada uygulanabilir.
Kornişonun okunabilirlik gücü, her bir kullanıcısına senaryoların netliğini garanti eder ve bu da doğru ürünü oluşturmaya yardımcı olur.
# 3) Test Senaryolarının Otomasyonu
Bir BDD çerçevesinde salatalık uygulaması, bir otomasyon test cihazının komut dosyası oluşturmayı doğru yaklaşımla kolayca başlatmasını sağlar. Salatalık senaryolarının kolay dili, işlevselliği daha iyi anlamalarına yardımcı olur.
Cucumber, birçok programlama diliyle uyumlu olduğu için dilden bağımsız bir eklentidir. Örneğin. Java , Python , vb.
Ayrıca Oku => BDD Aracını Kullanarak Otomasyon Testi
# 4) Framework'te Kodun Yeniden Kullanımı
Verilen - Ne Zaman - O zaman yaklaşımı, test uzmanlarına özellik dosyasında istediğimiz kadar çok kez aynı adımları kullanma özgürlüğü verir ve bu da otomasyon test cihazları için zaman kazanmaya kademeli olarak yardımcı olur.
Misal:
Senaryo: Senaryo 1
Verilen Kullanıcı Google Ana Sayfasına yönlendirilir
Ne zaman Kullanıcı, arama motorunda 'Salatalık' araması yaptı
Sonra Arama Düğmesine tıklandı
Ve Kullanıcı, web tarayıcısında Salatalık için arama sonuçlarını görebilir
Senaryo: Senaryo 2
Verilen Kullanıcı Google Ana Sayfasına yönlendirilir
Ne zaman Kullanıcı arama motorunda 'Selenium' aradı
Sonra Arama Düğmesine tıklandı
Ve Kullanıcı, web tarayıcısında Selenium için arama sonuçlarını görebilir
Yukarıdaki iki senaryoda şu sonuca varabiliriz: ' Verilen ”, ' Ne zaman ' ve ' Sonra ”Adımları ikinci senaryoda yeniden kullanılabilir.
# 5) Özellik Dosyasında Parametrelendirme
Bir kullanıcı, dosyada yeniden kullanılabilirlik elde etmek için özellik dosyasındaki kornişon adımlarını parametrelendirebilir.
Örneğin, Bir kullanıcı, uygulamaya tekrar tekrar giriş yaptığı bir banka uygulaması üzerinde çalışıyorsa. Bu tür adımlar, farklı bir veri setiyle parametreleştirilebilir ve test eden için zaman kazandırır.
Senaryoları yazarken, kullanıcının ortak işlevselliği kolayca kullanabilmesi için özellik dosyası adımlarını bu şekilde tanımlaması gerekir.
# 6) Sürekli Entegrasyon - Entegrasyonu Kolay
Cucumber ayrıca Jenkins ile çalışmayı da destekler. Hıyar test yürütmesini Jenkins'te çalıştırabilir ve aynısını Jenkins slave makinelerinde de uygulayabilirsiniz. Salatalık raporlama eklentisi, kullanıcılara test senaryolarını izlemek için genişletilmiş bir görünüm sağlar.
Okumaya Değer => Sürekli Entegrasyon Süreci
Sonuç
Davranış Odaklı Geliştirme, şu alanlarda çok akıllı bir yaklaşımdır: çevik metodoloji . BDD'yi kullanarak geliştirmeye veya test etmeye her zaman başlamanız önerilir, çünkü onu kullanmak size farklı teknolojilerle bağımsız olarak çalışabileceğiniz bir platform sağlar.
Salatalık, yazılım projesinde Davranış Odaklı Geliştirme yaklaşımının uygulanmasına yardımcı olan en iyi araçlardan biridir. Bu, birçok teknolojiyle çalışmamızı sağlar Örneğin. Java, Python, Jython vb.
Salatalık, birçok kuruluş ve serbest çalışan tarafından yaygın olarak kullanılmaktadır, aynı zamanda kullanıcıların sorunlarını tartışabilecekleri ve sorunlarına kolayca çözüm bulabilecekleri birçok topluluğa sahiptir.
Salatalık dili - Basit, sade İngilizce kelimeler kullanan Kornişon - teknik ekipler ve paydaşlar arasındaki iletişim boşluğunu azaltır ve aynı seviyede birlikte çalışmalarını sağlar.
Bu makalenin, BDD Çerçevesinin temellerini anlamanıza yardımcı olacağını umuyoruz !!
Önerilen Kaynaklar
- Test Uzmanları TDD, BDD ve ATDD Tekniklerine Nasıl Dahil Edilir?
- 8 En İyi Davranış Odaklı Geliştirme (BDD) Araçları ve Test Çerçeveleri
- Salatalık Aracı ve Selenyum Kullanarak Otomasyon Testi - Selenyum Eğitimi # 30
- Çevik Metodoloji: Yeni Başlayanlar İçin Çevik Yöntem ve Scrum Kılavuzu
- Specflow Eğitimi: BDD Aracı için En İyi Kılavuz
- Sürekli Entegrasyon Süreci: Yazılım Kalitesini İyileştirme ve Riski Azaltma
- Salatalık Selenium Eğitimi: Salatalık Java Selenium WebDriver Entegrasyonu
- 2021'deki En İyi 15 Sürekli Entegrasyon Aracı (Karşılaştırıldı)