Sjálfvirk API prófun auðvelt með Karate

Ef þú vilt taka þátt í sjálfvirkri API prófun, en hefur ekki forritunar bakgrunninn, þá gætirðu viljað gefa Karate tækifæri!

Karate var gefin út sem opinn uppspretta verkfæri af Intuit . Tólið er hannað til að nota við sjálfvirka API prófun og hefur alla nauðsynlega eiginleika til að gera API prófanir gola og raunverulega ánægjulegar.

Ólíkt öðrum sjálfvirkum API prófunarverkfærum sem krefjast talsverðrar kóðunar, jafnvel bara til að gera grunnatriði, vinnur Karate út úr kassanum. Þú getur smíðað flóknustu svörunaraðgerðirnar án þekkingar á neinu forritunarmáli. Allt sem þú þarft að gera er að skrifa eiginleikaskrána með venjulegum texta Gherkin stíl.

Vegna þess að Karate er heill DSL og situr ofan á Agúrka-JVM , getur þú keyrt próf og búið til skýrslur eins og öll venjuleg Java verkefni, en í stað þess að skrifa Java kóða, skrifar þú prófin á tungumáli sem ætlað er að gera samskipti við HTTP, JSON eða XML auðvelt og einfalt.

Þó að engar forsendur séu til að nota Karate hjálpar það ef þú hefur grunnskilning á HTTP, JSON, XML, JsonPath og XPath og JavaScript.

Í þessari færslu skoðum við nokkrar dæmigerðar aðgerðir sem þú myndir venjulega framkvæma í sjálfvirkri API prófun, en fyrst, stutt leiðbeining um hvernig þú setur upp umhverfi þitt fyrir Karate.



Maven

Ef þú ert að nota Maven þarftu eftirfarandi tvö ósjálfstæði


com.intuit.karate
karate-apache
0.6.0
test
com.intuit.karate
karate-junit4
0.6.0
test

Gradle

Einnig, ef þú ert að nota Gradle, þarftu

testCompile 'com.intuit.karate:karate-junit4:0.6.0' testCompile 'com.intuit.karate:karate-apache:0.6.0'

Uppbygging möppu

Karate próf handrit hefur skráarendinguna .feature sem er staðallinn sem Agúrka fylgir. Þér er frjálst að skipuleggja skrárnar þínar með venjulegum Java pakkasamþykktum.

Hefð Maven er að hafa heimildaskrár sem ekki eru Java í sérstökum src/test/resources uppbyggingu möppu - en höfundar Karate tólsins mæla með að þú hafir þau hlið við hlið með *.java skrár.

Eins og agúrka þarftu að vera með „Runner“ bekk sem keyrir eiginleikaskrána. Ólíkt gúrku eru engar skref skilgreiningar til! Og þetta er töfra Karate.

Til að nota TestRunner.java bekkinn til að framkvæma eiginleikaskrána þarftu að hafa byggingarhlutann í pom.xml skránni.


4.0.0
Tutorials
Karate
1.0-SNAPSHOT




com.intuit.karate

karate-apache

0.6.0.4





com.intuit.karate

karate-junit4

0.6.0.4










src/test/java






**/*.java








Og TestRunner.java bekkurinn þinn myndi líta út eins og

package com.tutorials.karate; import com.intuit.karate.junit4.Karate; import org.junit.runner.RunWith; @RunWith(Karate.class) public class TestRunner { }

Einföld sjálfvirk API prófun með Karate

Segjum að þú sért að prófa API (https://some-api.com/api/users) sem skilar lista yfir notendur á JSON sniði

[
{
'id': 1,
'name': 'FirstUser',
'password': 'User1Pass'
},
{
'id': 2,
'name': 'SecondUser',
'password': 'User2Pass'
} ]

Karate lögun skrá þín mun líta út eins og:

Feature: Test User API
Scenario: Fetch all users
Given url 'https://some-api.com/api/users'
When method GET
Then status 200
And assert response.length == 2
And match response[0].name == 'FirstUser'

Og það er það - mjög hnitmiðað og að því marki og síðast en ekki síst, enginn kóði!

Karate fylgir mjög ríkur fjöldi gagnlegra eiginleika sem gera þér kleift að framkvæma sjálfvirka API prófun mjög auðveldlega og fljótt. Í komandi færslum köfum við meira í þetta ótrúlega verkfæri og gefum dæmi um hvernig á að gera nánast allt sem þú þarft þegar þú prófar forritaskil!