Specflow’da Background nasıl kullanılır?

Ahmet Demirel
AhmetDemirel-blog
Published in
2 min readJan 2, 2019

Projesinde Specflow kullananların başına sıklıkla gelen problem aynı stepleri her senaryo başında tekrar tekrar yazmak. Bu duruma örnek vermek gerekirse e-ticaret sitesinde ürün satın alma ve ürünü favorilere ekleme senaryolarını verebiliriz sanırım. Her iki senaryoda da login olup arama yaparak ürünü sepete yada favorilere ekleriz.

Baştaki bu aynı adımları her senaryoda yazmak yerine feature dosyasının içine bir kez yazıp, senaryoların içerisine diğer adımları yazsak işimiz daha kolay olmaz mıydı? İşte tam bu sorunun cevabı olarak karşımıza Background çıkıyor.

Background specflow feature dosyası içerisindeki senaryoların birbirini takip eden adımlarının yazıldığı bölüm olarak nitenlendirebiliriz. Background feature dosyası içerisinde tanımlanmış her bir senaryodan önce çalışır. Background içerisindeki adımlardan sonra çalıştırdığımız senaryodaki adımlar ile devam edilir.

Background sayesinde başta belirttiğim aynı adımları her seferinde tekrar tekrar yazma sorununu ortadan kaldırmış oluyoruz. Şimdi basit bir örnek ile nasıl kullanabileceğimizi görelim.

Türkçe dil desteği ile kullanım şekli.

Yukarıdaki ekran görüntüsünde görebileceğiniz gibi benzer adımlar ile başlayan iki senaryomuz var ve bu benzer adımları Background(Geçmiş) içerisine yazarak adımları tekrarlamaktan kurtulmuş olduk. Buradaki gibi her senaryoda birbirini tekrar eden adımlarınız varsa background ile tekrarı ortadan kaldırabilirsiniz. Hepsiburada sepete ürün ekleme senaryosunu çalıştırdığımızda ilk olarak background içerisindeki adımlar yapılacak daha sonra senaryo içerisindeki ürün arama adımı ile devam edilecek.

Aynı feature dosyasının Türkçe dil desteği olmayan hali hemen hemen aynı sadece tanımlamalarda specflow’un dil desteklerinde gösterdiği gibi. Diğer dillerdeki karşılıklarını buradan ulaşabilirsiniz.

Basit bir şekilde specflow’da background kullanımından bahsetmeye çalıştım umarım işinize yarayan bir yazı olur.

--

--