Bevezetés a viselkedésalapú szoftverfejlesztésbe (BDD) és a SpecFlow használatába

Bevezető

A számítástechnika fejlődése, különösen a processzorok teljesítményének növekedése és az internet elterjedése új lehetőségeket teremtett a szoftverek számára. Sok komplex és gyorsan változó üzleti területen is megjelentek a szoftverek, sőt, a napjainkban folyó digitális átalakulással (digital transformation) maguk a szoftverek teremtenek önálló, új üzleti területeket (pl. Facebook).

Természetesen a szoftveriparnak is meg kellett találnia a megfelelő módszereket arra, hogy ezeket az új, dinamikus igényeket ki tudja elégíteni. Ezek az igények hozták létre az agilis módszereket, amelyek mára már dominánsan vannak jelen a szoftverfejlesztésben.

A viselkedésalapú szoftverfejlesztés (behavior driven development, BDD) olyan gyakorlati módszer, ami különböző agilis technikák (agilis tesztelés, agilis követelménykezelés, tesztalapú fejlesztés, stb.) lehetőségeit kombinálja. A BDD egyfajta útmutatót ad ezen technikák együttes használatához. Az aktív együttműködésen és a követelmények közvetlen automatizálásán keresztül valós lehetőségeket ad arra, hogy a résztvevők magukénak érezhessék az elkészült terméket.

A BDD-t leginkább a specifikációhoz használt leíró nyelv Given/When/Then (Amennyiben/Ha/Akkor) kulcsszavai tették ismerté. Bár a BDD elsősorban egy módszer, az automatizálás támogatására különféle eszközök használhatók, manapság már gyakorlatilag bármilyen programnyelven és platformon. A talán legismertebb ilyen eszköz a Cucumber, amely sok különböző platformra ad támogatást. A SpecFlow a Cucumber hivatalos .NET nyílt forráskódú implementációja, amely a funkciók átültetésén túl a .NET fejlesztők igényeihez is alkalmazkodik azáltal, hogy integrálható a Visual Studio és a TFS/VSTS környezetbe.

Ez a 17 oldalas tanulmány rövid áttekintést nyújt a BDD módszer működéséről, előnyeiről és más módszerekkel való kapcsolatáról. Bemutatjuk azt is, hogyan lehet SpecFlow használatával egy .NET projekt keretein belül a BDD-s forgatókönyvek automatizálásához hozzákezdeni.

toltsdle

 

“A szerzőről. Nagy Gáspár független konzulens, olyan csapatokat oktat és segít, akik fejlesztői munkájuk minőségét és hatékonyságát agilis tesztelési módszerekkel, azon belül is viselkedés-alapú szoftverfejlesztéssel (behavior driven development – BDD) szeretnék növelni. Gáspár a megalkotója és jelenleg is vezető fejlesztője a nyílt forráskódú SpecFlow tesztelési eszköznek, amely meghatározó BDD eszköz a .NET platformon.

Több mint 15 éve foglalkozik szoftverfejlesztéssel, korábban szoftvertervezőként és fejlesztői coach-ként is dolgozott. Rendszeres előadó nemzetközi konferenciákon és a Scrum Alliance akkreditált oktatója a Certified Scrum Developer programban. Microsoft Certified Professional az Application Lifecycle Management témakörben.

Gáspárt megtalálhatod a twitteren (@gasparnagy), a blogján (http://gasparnagy.com) vagy vállalkozásának (Spec Solutions) oldalán (http://www.specsolutions.eu).”

Szólj hozzá!

komment