Kuidas saata POST-taotlust REST-assured'iga. HTML-vormid kasutavad vormiandmete esitamiseks POST-päringut ja selles õpetuses kasutame vormi esitamiseks REST-assured.
POST-taotlusel on neli elementi:
URL : See on selle ressursi asukoht, kuhu me andmeid esitame, nt. www.example.com/login
VERB : andmete esitamisel kasutame POST-päringut.
PÄISED : need on päringute päised, näiteks Nõustu või Sisutüüp.
KEHA : body sisaldab andmeid, mille esitame postitaotlusena. Näiteks vormi esitamisel saadetakse vormi andmed päringu kehasse.
Allpool toodud näidiskood näitab, kuidas vormiandmeid esitada POST-päringuna koos REST-tagatisega versioon 3.2.0 .
io.rest-assured
rest-assured
3.2.0
test
import io.restassured.RestAssured; import io.restassured.http.ContentType; import org.junit.Test; import static io.restassured.RestAssured.given; public class restAssuredPostRequest {
@Test
public void submitForm() {
RestAssured.baseURI = 'https://www.example.com';
given().urlEncodingEnabled(true)
.param('username', 'user@site.com')
.param('password', 'Pas54321')
.header('Accept', ContentType.JSON.getAcceptHeader())
.post('/login')
.then().statusCode(200);
} }
Seotud:
Lisaks vormi andmete esitamisele võite JSON-i kasuliku koormuse saatmiseks mõnele ressursile kasutada ka REST-tagatud POST-päringut. Siin on näide:
import io.restassured.http.ContentType; import io.restassured.response.Response; import static io.restassured.RestAssured.given; public class PostJsonPayload {
private static String payload = '{
' +
' 'description': 'Some Description',
' +
' 'id': 'Some id',
' +
' 'name': 'Some name'
' +
'}';
public static Response postJsonPayload() {
return
given()
.contentType(ContentType.JSON)
.body(payload)
.post('/some/resource')
.then()
.statusCode(200)
.extract()
.response();
} }