Van egy pet-projectem, egy Rest API test framework-ot kezdtem el irni. Jelenleg meg elegge PoC allapotban van, emiatt is kernek segitseget.
A lepes ahol elakadtam, az az, hogy hogy lehet megoldani hasonlo mukodest mint JUnit eseteben. Azaz, ha van egy projectem, dependency-kent beteszem a test-frameworkot, akkor az fusson le mvn test-re, illetve failelje is el, ha van valami nyugje.
Mavent eddig csak felhasznalokent hasznaltam, szoval fogalmam sincs hogy is kellene nekiallni ennek. Mire keressek, merrefele nezelodjek? Google ugyan segitett, de nem a megfelelo mertekben.
Edit:
ugyanitt keresek megoldast sajat goal letrehozasara :)
- 1453 megtekintés
Hozzászólások
Nem biztos, hogy jól értem a kérdést (lehet, teljesen másra válaszolok), meg nem vagyok egy maven profi, de:
Nekem a napokban olyat kellett csinálnom, hogy a compile alatt bizonyos stringeket kigyűjteni a forrásfájlokból. Erre csináltam egy saját plugint (google://Maven Mojo), s ezzel elérem, hogy vannak saját goaljaim. S ezek után, tudok valami ilyesmit mondani:
<plugin>
<groupId>groupid</groupId>
<artifactId>maven-plugin</artifactId>
<version>0.0.1</version>
<configuration>
...
</configuration>
<executions>
<execution>
<id>random-id</id>
<phase>default goal, amikor le akarom futtatni a saját pluginem</phase>
<goals>
<goal>pluginem goalja</goal>
</goals>
</execution>
</executions>
</plugin>
Én még ilyenek felé tapogatóznék, hogy JUnit Runnert írnék. Esetleg a frameworköd által használt teszteket integration testnek megjelölni, s utána a maven-failsafe-pluginnal futtatni.
--
blogom
- A hozzászóláshoz be kell jelentkezni
Ez volt az, vagy legalabbis ez alapjan indultam el, koszi :)
- A hozzászóláshoz be kell jelentkezni
Ha klasszikus Maven projektet csinálsz, akkor annak eleve van egy teszt forrás-foldere. Ha ide teszel JUnit teszteket, akkor az automatikusan lefut a projekt teszjeként. Annyit kell konfigurálni, hogy a pom.xml-ben a teszthez külön fel kell venni a JUnit-ot függőségként (mivel a program "java" részének általában nem függősége a JUnit). Pl itt van, hogy hogy lehet scope-hoz tartozó dependencyt felvenni: http://books.sonatype.com/mvnex-book/reference/customizing-sect-test-sc…
A végrehajtás tudtommal automatikus, semmi pluszt nem kell beállítani hozzá.
- A hozzászóláshoz be kell jelentkezni
Itt a problema az, hogy nem tesztet, hanem test frameworkot akarnek irni :)
A teszt resze mar mukodik, most johet a maradek, pepecselos melo.
Szerk: ugyan paran mar emlegettek a kornyezetemben, hogy JUnit runnert kene irnom, de en nem teljes mertekben latom at, hogy az hogy segitene a helyzetemen. Viszont a build mar torik failed teszt eseten, szoval valoszinuleg nem letfontossagu a JUnit runner irany.
- A hozzászóláshoz be kell jelentkezni
A JUnit Runneres szálra: milyen formában írod most a teszteket? Én valahol ott húznám meg a határt, hogyha:
- Java (vagy valamilyen JVMre forduló nyelven) van írva a teszt fő része, akkor ott felhasználói oldalról is a JUnit Runner a kényelmesebb,
- ha nem Java, akkor bizony plugin.
A JUnit Runner annyiból egyszerűbb, hogy azt megírod, s utána bármilyen build környezetben, ahol Java fordul, a kódod is működni fog. Egy plugin esetén ha te azt csak mavenre írtad meg, akkor nem fogom Gradle-lel, vagy Anttal használni. (Bármennyire is megpróbálod a build rendszertől függetlenül megírni at eszköz logikai részét, akkor is rá kell igazítani a build folyamatra...).
Ha azt akarod, hogy másképp nézzen ki a teszt (scalatest, kotlintest), húzzunk köré egy környezetet (spring-test, arquillian), az általában egy junit runner. De pl. automata frontend-tesztelésre én mostanság casperJS-t használok (js-ben megírt teszt, teljes weboldal elindítása, headless browser, hajrá!), az már plugin. De a Seleniumhoz mintha lenne JUnit runner (Javaban megírt teszt, a többi kb. ugyanaz).
tl;dr - ha a teszt kódot Javaban írod, én futnék egy kört a JUnit Runner témával, hátha.
--
blogom
- A hozzászóláshoz be kell jelentkezni
https://github.com/havesomerest
Az otlet az lenne, hogy ne kelljen kodot irni microservice / rest api tesztelese / regression tesztelese eseten, hanem black box teszt szeruen, JSON / XML-ben leirva -> ilyen requestre, ilyen response-t varok, hogy hogy oldja meg belul, az legyen az o baja.
Foleg abbol indultam ki, hogy magamat ismerve, prototyping kozben baromira utalok tesztet irni, viszont a manualis teszt pont JSON / XML kuldozgetest jelent, akkor miert ne automatizaljuk a manualis tesztet? Meg sok-sok kerdes van hatra, amit tisztaznom kell, hogy hogy lesz ez annyira kenyelmesen hasznalhato, mint amennyire szeretnem.
Marmint a teszt az oke. Mockolas mar viccesebb, a vezerlese meg meginkabb. Pedig mennyire kiraly lenne egy black box service timeout teszt, nulla kodolassal :)
- A hozzászóláshoz be kell jelentkezni