8 best behavior driven development tools
Gennemgang af de bedste adfærdsdrevne udvikling BDD-værktøjer og rammer:
I denne artikel skal vi diskutere adfærdsdrevet udvikling og nogle af de relaterede værktøjer, der bruges i den. Vi vil diskutere nogle af de bedste værktøjer, der findes i branchen i dag om dette emne.
Så inden du går i værktøj, hvad er adfærdsdrevet udvikling? Dette er en udviklingsmetode, der har udviklet sig fra den testdrevne udviklingsproces. Adfærdsdrevet udvikling handler mest om teknisk indsigt og forretningskendskab.
I de fleste tilfælde opnås dette ved brug af domænespecifikt sprog. Det domænespecifikke sprog bruger naturlige engelsksprogede konstruktioner til at definere resultaterne af den nævnte adfærd.
java videregive array til metode efter værdi
Ville det ikke være lettere at forklare BDD ved hjælp af eksempler? Ja! Lad os se, hvordan en brugerhistorie er skrevet i BDD. En typisk brugerhistorie har en titel eller en historie, en fortælling og scenarier i sig.
Titel : For at vedligeholde 20 iPhone 7-modeller i min beholdning
- Jeg er ejer af mobiltelefonbutik
- For at adressere nye ordrer
- Jeg har brug for at vedligeholde 20 iPhone 7-modeller i min beholdning
Scenarie 1:
- I betragtning af at en kunde har købt en iPhone 7
- Derefter skulle min beholdningssaldo gå ned til 19
- Når jeg overfører en model fra lageret til lagerbeholdningen
- Derefter skal beholdningsbalancen stige med 1 til 20
Scenarie 2:
- I betragtning af at en kunde har købt en iPhone 7
- Derefter skulle min beholdningssaldo gå ned til 19
- Og kunden har besluttet at returnere modellen
- Derefter skal lagerbeholdningen gå tilbage til 20
Med disse data og viden om adfærdsdrevet udvikling skal vi komme ind i gennemgangen af vores håndplukkede værktøjer, der understøtter BDD.
=> Kontakt os at foreslå en liste her.
Hvad du lærer:
Bedste BDD-værktøjer og testrammer
Nu sker det!
# 1) Agurk
fjernelse af et element fra en array-java
- Det første punkt og det vigtigste er prisen. Ja! Det er gratis at bruge.
- Agurk hjælper med at skrive testene, som er lette at forstå af enhver uanset den tekniske viden, de besidder.
- Interessenterne, virksomhedsejere, testere og udviklere arbejder på problemangivelsen for at udlede den bedste adfærdssæt.
- Opførselssætene ændres derefter til accepttestbetingelser ved hjælp af agurk.
- Agurk som værktøj holder både kravserklæringen og testbetingelserne på samme sted.
- Sporing af implementeringen er let ved hjælp af agurk. Det adfærdssæt, der implementeres og fungerer, vises som arbejde i agurk. Dem, der ikke fungerer, vises i overensstemmelse hermed.
- Agurk understøtter programmeringssprog inklusive Ruby, Java, Javascript og C # (SpecFlow).
- Både testere og udviklere er involveret i skrivning / udvikling af testbetingelser.
- Agurk kan bruges til at teste enhver software, der kan styres programmatisk - webbaseret, desktop, mobil, mikroservice osv.
- For at bruge agurk skal du først beslutte, hvilket programmeringssprog du vil bruge til automatisering. Det er generelt bedst at bruge det samme sprog som det, der bruges til at implementere det testede system. Installer den relevante agurkversion og udviklingsmiljø. Brug derefter automatiseringsbiblioteker (som WebDriver / Selenium eller Watir) efter behov.
Anbefalet læsning => Komplet agurk tutorial
# 2) Let B
- EasyB er en ramme, der bruger historier som verifikationsenheder
- EasyB er for det meste skrevet med Groovy og er kompatibel til at arbejde med Java- eller Groovy-sprog
- EasyB kan bruges til at generere brugerhistorier, erklære specifikationerne osv.
- Da EasyB bruger Groovy-script, kan specifikationerne skrives mere på engelsk snarere end i programmeringscentrerede udsagn. Dette gør EasyB tilfreds med BDD-modellen
- Når en specifikation er indtastet, kaldes den som en afventende specifikation. De føjes til et system, når de først er implementeret i systemet.
- EasyB er praktisk i Enhedstest , hvis udviklere vælger at gå efter det
- Dette understøtter også JDBC-forbindelse og er praktisk med eksterne plug-ins (JAR-filer), hvilket udvider handlingen
- Der er ingen IDE-integration til EasyB
- EasyB leverer også et rapporteringsværktøj, som er nyttigt for at få dataene i form af XML og HTML.
# 3) JDave
- JDave er en adfærdsdrevet udviklingsramme.
- JDave løber oven på JUnit og det betyder, det kan køre let i formørkelsen.
- Dette integreres med JMOCK2 og Hamcrest som henholdsvis Mocking-rammen og det matchende bibliotek.
- JDave er en specifikationsmotor, og hvert scenarie viser en klasses adfærd i modsætning til en historieløberramme som agurk.
- JDave er ret let at lære, og specifikationerne blev skrevet er komplette på sin egen måde.
- Men når BDD tages i betragtning, bliver JDave en lidt mere udviklerorienteret ramme.
Flere detaljer om JDave kan findes fra her
# 4) Concordion
- Dette er et af de mest kraftfulde værktøjer til at skrive godkendelsestestautomatiseringsskripter i JAVA-baserede projekter.
- Concordion integreres med JUnit-rammen og kan derfor bruges med sædvanlige JAVA IDE'er som Eclipse, Netbeans osv.
- Concordion hjælper også med at skrive specifikationer. Men her er specifikationerne skrevet i HTML.
- Acceptprøverne er skrevet i en fastgørelseskode, som ikke er andet end JAVA-sprog.
- Concordion leverer eksterne API'er for at forbedre funktionaliteterne. Nogle af eksemplerne understøtter Excel. Med dette kan specifikationerne skrives i excel-arkene og kan bruges derfra. På samme måde er der API'er, der understøtter registrering af logfiler, skærmbilleder til optagelser osv.
- Da specifikationerne er skrevet i HTML, kan specifikationsdokumenter hyperlinkes til HTML.
- Concordion er en ren JAVA-baseret ramme, som har nogle rigtig flotte rapportgenerationsstøtte.
- Dette har dog ikke støtte til TestNG og forretningsanalytikeren skal have kendskab til HTML for at skrive specifikationer.
Yderligere oplysninger om Concordion kan findes fra her
#5) JBehave
- Jbehave er et adfærdsdrevet udviklingsværktøj til JAVA. Dette er en open source-ramme oprettet af Dan North i år 2003.
- Dette har to komponenter, nemlig Jbehave Web og Jbehave Main
- Dette er en ren Java-baseret implementering og har IDE-understøttelse
- Historier er tekstbaserede i dette værktøj
- Dette har en rapporteringsfunktion, og rapporterne kan genereres i XML, HTML eller i teksttilstand
- Jbehave kan nemt integreres i Selenium til kørsel af testscripts på webapplikationer
- Fordi det er en JAVA-baseret ramme, kan denne køres på IDE'er som Eclipse, Netbeans osv.
Flere detaljer om Jbehave kan findes fra her
#6) Fitnesse
- Fitnesse er en open source automatiseringsramme baseret på Framework for Integrated Test (FIT) af Ward Cunningham
- Fitnesse hjælper med at automatisere acceptstest under integration på forretningsniveau
- Dette er skrevet i JAVA og er samlet som en JAR-fil. Den eksekverbare JAR-fil består af elementer såsom en webserver, testmotorer (FIT eller SLIM), wiki-motor osv.
- FIT og SLIM er to testsystemer, de er en del af Fitnesse. FIT er det ældre søskende og forældet nu. Der sker ingen yderligere udvikling relateret til FIT. SLIM er derimod den lette version af FIT-testsystemet.
Flere detaljer om Fitnesse kan findes på her
# 7) TestLeft
- TestLeft er et UI Automation Testing Tool i din IDE, der giver dig mulighed for at teste tidligere og hurtigere
- Opret tests hurtigere med vores brancheførende UI Object Spy, så du ikke behøver at programmere beskrivelser manuelt for hvert objekt
- Generer applikationsmodeller til web- og desktop-applikationer med to klik
- Integrer let med agurk, SpecFlow og JBehave for at aktivere adfærdsdrevet udvikling og fremskynde skiftetest tilbage
- Understøttelse af .NET, C #, Java, Jenkins og mere
- Problemfri indlejring i ethvert udviklingsmiljø i DevOps økosystem
- Opret kortfattet og kortere kode til en robust testramme
- 30-dages gratis prøveversion tilgængelig
# 8) BeanSpec
- BeanSpec er et simpelt værktøj, der håndterer komplekse specifikationer i det
- Dette er skrevet på Java og kan derfor håndteres fra IDE'er som Eclipse og Netbeans
- Dette har sin egen interne rapport og kan genereres ved afslutningen af udførelsen.
Flere detaljer kan findes på her
# 9) SpecFlow
- Dette kaldes agurk for.NET. Specflow ligner agurk i så mange aspekter. Faktisk blev dette udviklet ved at få inspiration fra agurk
- Specflow bruger agurk-formateret engelsk tekst til at beskrive brugerhistorier
- Fordi det er.Net-baseret, integreres SpecFlow med Visual Studio . Specflow kan dog også bruges fra kommandolinjen
- For at køre Specflow på systemet er to ting nødvendige, en er IDE-integration, og en anden er Visual Studio
- Specflow er en open source, og selvom den er inspireret af agurk, det har nogle fordele i forhold til agurk . Når Visual Studio kommer ind i billedet, får en bruger hænderne på VS Debugger, hvilket er nyttigt med hensyn til at tilføje breakpoints på givne / hvornår / derefter linjer i udsagnene.
- Nogle af os foretrækker virkelig Visual Studio frem for Eclipse. Ikke på grund af anvendeligheden, men på grund af navnet. Så simpelt som det! Og så videre.
- Specflow + Runner hjælper med at generere rapporter til testkørslerne
- Specflow + Runner bringer også nogle af de banebrydende funktioner i Specflow såsom automatisk implementeringskonfiguration, parallel udførelse af tests, intelligent udførelse, hvor de mislykkede tests udføres først osv.
Yderligere oplysninger om SpecFlow kan findes fra her
hvad er den bedste software til fjernelse af virus
Konklusion
Så dette er få af de øverste adfærdsdrevne udviklingsværktøjer, som vi troede er bedst på markedet. Du er velkommen til at bruge noget andet end dem, der er nævnt ovenfor. Og hvilken foretrækker du?
=> Kontakt os at foreslå en liste her.Anbefalet læsning
- Bedste softwaretestværktøjer 2021 (QA Test Automation Tools)
- BDD (Behavior Driven Development) Framework: En komplet tutorial
- 11 bedste automatiseringsværktøjer til test af Android-applikationer (Android App-testværktøjer)
- Forskellene mellem enhedstest, integrationstest og funktionstest
- Test af Primer eBook Download
- Netværkssikkerhedstest og de bedste netværkssikkerhedsværktøjer
- Parvis test eller test af selvstudier med værktøjer og eksempler
- Telecom Domain Testing: Protocol Testing and Telecom Testing Tools