8 best behavior driven development tools
Granskning av de bästa beteendestyrda utvecklingsverktygen och ramarna för BDD:
I den här artikeln ska vi diskutera beteendestyrd utveckling och några av de relaterade verktyg som används i den. Vi kommer att diskutera några av de bästa verktygen som finns i branschen idag om detta ämne.
Så innan du går in i verktyg, vad är beteendedriven utveckling? Detta är en utvecklingsmetod som har utvecklats från den testdrivna utvecklingsprocessen. Beteendedriven utveckling handlar mest om teknisk insikt och affärskunskap.
I de flesta fall uppnås detta med användning av domänspecifikt språk. Det domänspecifika språket använder naturliga engelska språkkonstruktioner för att definiera resultaten från nämnda beteende.
qa leda intervjufrågor och svar
Skulle det inte vara lättare att förklara BDD med hjälp av exempel? ja! Låt oss se hur en användarberättelse skrivs i BDD. En typisk användarberättelse har en titel eller en berättelse, en berättelse och scenarier i sig.
Titel : Att behålla 20 iPhone 7-modeller i mitt lager
- Jag är ägare till mobiltelefoner
- För att ta itu med nya beställningar
- Jag måste behålla 20 iPhone 7-modeller i mitt lager
Scenario 1:
- Med tanke på att en kund har köpt en iPhone 7
- Då bör mitt lagerbalans sjunka till 19
- När jag överför en modell från lageret till lager
- Då bör lagersaldot öka med 1 till 20
Scenario 2:
- Med tanke på att en kund har köpt en iPhone 7
- Då bör mitt lagerbalans sjunka till 19
- Och kunden har beslutat att returnera modellen
- Då bör lagersaldot gå tillbaka till 20
Med dessa data och kunskapen om beteendedriven utveckling ska vi gå igenom våra handplockade verktyg som stöder BDD.
kasta char till int c ++
=> Kontakta oss för att föreslå en lista här.
Vad du kommer att lära dig:
Bästa BDD-verktyg och testramar
Nu kör vi!
# 1) Gurka
- Den första punkten och det viktigaste är priset. ja! Det är gratis att använda.
- Gurka hjälper till att skriva tester som är lätta att förstå för alla oavsett teknisk kunskap de har.
- Intressenter, företagsägare, testare och utvecklare arbetar med problemförklaringen för att få fram det bästa beteende.
- Beteendeuppsättningarna ändras sedan till Acceptance Test-villkor med hjälp av Gurka.
- Gurka som verktyg håller både kravuppgiften och testförhållandena på samma plats.
- Spårningen av implementeringen är enkelt med hjälp av Gurka. Beteendeuppsättningen som implementeras och fungerar visas som att arbeta i Gurka. De som inte fungerar visas därefter.
- Gurka stöder programmeringsspråk inklusive Ruby, Java, Javascript och C # (SpecFlow).
- Både testarna och utvecklarna är involverade i att skriva / utveckla testförhållanden.
- Gurka kan användas för att testa vilken programvara som helst som kan styras programmatiskt - webbaserad, stationär, mobil, mikroservice och så vidare.
- För att använda Gurka, bestäm först vilket programmeringsspråk du ska använda för automatisering. Det är i allmänhet bäst att använda samma språk som det som används för att implementera systemet som testas. Installera relevant gurkaversion och utvecklingsmiljö. Använd sedan automatiseringsbibliotek (som WebDriver / Selen eller Watir) efter behov.
Rekommenderad läsning => Komplett gurkahandledning
# 2) Lätt B
- EasyB är ett ramverk som använder berättelser som verifieringsenheter
- EasyB är oftast skrivet med Groovy och är kompatibelt för att fungera med Java- eller Groovy-språk
- EasyB kan användas för att generera användarberättelser, deklarera specifikationerna etc.
- Eftersom EasyB använder Groovy-skript kan specifikationerna skrivas mer på engelska snarare än i programmeringscentrerade uttalanden. Detta gör att EasyB uppfyller BDD-modellen
- När en specifikation har angetts kallas den som en väntande specifikation. De läggs till i ett system en gång implementerat i systemet.
- EasyB kommer till nytta i Enhetstestning , om utvecklare väljer att gå för det
- Detta stöder också JDBC-anslutning och är praktiskt med externa insticksprogram (JAR-filer) som också utvidgar operationen
- Det finns ingen IDE-integration för EasyB
- EasyB tillhandahåller också ett rapporteringsverktyg som är användbart för att få data i form av XML och HTML.
# 3) JDave
- JDave är en beteendestyrd utvecklingsram.
- JDave springer ovanpå JUnit och det betyder att det kan springa lätt i Eclipse.
- Detta integreras med JMOCK2 och Hamcrest som Mocking-ramverk respektive matchande bibliotek.
- JDave är en specifikationsmotor och varje scenario visar beteendet hos en klass till skillnad från en story runner-ramverk som Gurka.
- JDave är ganska lätt att lära sig och specifikationerna skrevs var kompletta på sitt eget sätt.
- Men när BDD tas med i beräkningen blir JDave ett lite mer utvecklingsorienterat ramverk.
Mer information om JDave finns på här
# 4) Concordion
- Detta är ett av de mest kraftfulla verktygen för att skriva acceptanstestautomationsskript i JAVA-baserade projekt.
- Concordion integreras med JUnit-ramverket och kan därför användas med vanliga JAVA IDEs som Eclipse, Netbeans etc.
- Concordion hjälper också till att skriva specifikationer. Men här är specifikationerna skrivna i HTML.
- Godkännandetesterna är skrivna i fixturskod som inte är något annat än JAVA-språk.
- Concordion tillhandahåller externa API: er för att förbättra funktionerna. Några av exemplen är stöd för Excel. Med detta kan specifikationerna skrivas i excelbladen och kan användas därifrån. På liknande sätt finns det API: er som stöd för att fånga loggar, ta skärmdumpar etc.
- Eftersom specifikationerna är skrivna i HTML kan specifikationsdokument hyperlänkas till HTML.
- Concordion är en ren JAVA-baserad ram som har några riktigt snygga rapportgenerationsstöd.
- Detta har dock inte stöd för TestNG och affärsanalytikern måste ha kunskap om HTML för att skriva specifikationer.
Mer information om Concordion finns på här
# 5) JBehave
- Jbehave är ett beteendedrivet utvecklingsverktyg för JAVA. Detta är en öppen källkodsram skapad av Dan North år 2003.
- Detta har två komponenter, nämligen Jbehave Web och Jbehave Main
- Detta är en ren Java-baserad implementering och har IDE-stöd
- Berättelser är textbaserade i det här verktyget
- Detta har en rapporteringsfunktion och rapporterna kan genereras i XML, HTML eller i textläge
- Jbehave kan enkelt integreras i Selenium för att köra testskript på webbapplikationer
- Eftersom det är ett JAVA-baserat ramverk kan detta köras på IDE som Eclipse, Netbeans etc.
Mer information om Jbehave finns på här
# 6) Fitness
- Fitnesse är ett automatiserat ramverk för öppen källkod baserat på Framework for Integrated Test (FIT) av Ward Cunningham
- Fitnesse hjälper till att automatisera acceptantestning samtidigt som det integreras på affärsnivå
- Detta är skrivet i JAVA och är buntat som en JAR-fil. Den körbara JAR-filen består av element som en webbserver, testmotorer (FIT eller SLIM), wiki-motor etc.
- FIT och SLIM är två testsystem som ingår i Fitnesse. FIT är det äldre syskonet och föråldrat nu. Det händer ingen vidare utveckling relaterad till FIT. SLIM, å andra sidan, är den lätta versionen av FIT-testsystemet.
Mer information om Fitnesse finns på här
hur man kör jar-fil i Windows 10
# 7) TestVänster
- TestLeft är ett testverktyg för UI-automatisering i din IDE som gör att du kan testa tidigare och snabbare
- Skapa tester snabbare med vår branschledande UI Object Spy så att du inte behöver programmera beskrivningar manuellt för varje objekt
- Skapa applikationsmodeller för webb- och skrivbordsapplikationer med två klick
- Integrera enkelt med Gurka, SpecFlow och JBehave för att möjliggöra beteendestyrd utveckling och påskynda skiftetest kvar
- Stöd för .NET, C #, Java, Jenkins och mer
- Sömlös inbäddas i alla utvecklingsmiljöer i DevOps ekosystem
- Skapa kort och kort kod för ett robust testramverk
- 30-dagars gratis provperiod tillgänglig
# 8) BeanSpec
- BeanSpec är ett enkelt verktyg som hanterar komplexa specifikationer i den
- Detta är skrivet på Java och kan därför hanteras från IDE som Eclipse och Netbeans
- Denna har sin egen interna rapport och kan genereras i slutet av genomförandet.
Mer information finns på här
# 9) SpecFlow
- Detta kallas gurka för.NET. Specflow liknar Gurka i så många aspekter. I själva verket utvecklades detta genom att få inspiration från gurkan
- Specflow använder Gherkin-formaterad engelsk text för att beskriva användarberättelser
- Eftersom det är.Net-baserat, integreras SpecFlow med Visuell Studio . Specflow kan dock också användas från kommandoraden
- För att köra Specflow på systemet är två saker nödvändiga, en är IDE-integration och en annan är Visual Studio
- Specflow är en öppen källkod och även om den är inspirerad av gurkan, det har några fördelar jämfört med gurka . När Visual Studio kommer in i bilden får en användare händerna på VS Debugger vilket är användbart när det gäller att lägga till brytpunkter på givna / när / sedan rader i uttalandena.
- Vissa av oss föredrar verkligen Visual Studio framför Eclipse. Inte på grund av användbarheten, utan på grund av namnet. Så enkelt som det! Och så vidare.
- Specflow + Runner hjälper till att generera rapporter för testkörningarna
- Specflow + Runner tar också med några av de senaste funktionerna i Specflow som automatisk distributionskonfiguration, parallell körning av tester, intelligent körning där de misslyckade testerna utförs först etc.
Mer information om SpecFlow finns på här
Slutsats
Så det här är några av de bästa beteendedrivna utvecklingsverktygen som vi tyckte är bäst på marknaden. Känn dig fri om du har använt något annat än de som nämns ovan. Och vilken föredrar du?
=> Kontakta oss för att föreslå en lista här.Rekommenderad läsning
- Bästa verktyg för testning av programvara 2021 (QA Test Automation Tools)
- BDD (Behavior Driven Development) Framework: A Complete Tutorial
- 11 bästa automatiseringsverktyg för testning av Android-applikationer (Android-apptestverktyg)
- Skillnaderna mellan enhetstestning, integrationstestning och funktionstestning
- Testing Primer eBook Download
- Testning av nätverkssäkerhet och bästa verktyg för nätverkssäkerhet
- Parvis testning eller testning av alla par testhandledning med verktyg och exempel
- Telecom Domain Testing: Protocol Testing and Telecom Testing Tools