rest assured
1.0.0
使用 Java 测试和验证 REST 服务比使用 Ruby 和 Groovy 等动态语言进行测试和验证更困难。 REST Assured 将这些语言的简单使用带入 Java 领域。
旧新闻
以下是如何发出 GET 请求并验证 JSON 或 XML 响应的示例:
get ( "/lotto" ). then (). assertThat (). body ( "lotto.lottoId" , equalTo ( 5 ));
获取并验证所有获奖者 ID:
get ( "/lotto" ). then (). assertThat (). body ( "lotto.winners.winnerId" , hasItems ( 23 , 54 ));
使用参数:
given ().
param ( "key1" , "value1" ).
param ( "key2" , "value2" ).
when ().
post ( "/somewhere" ).
then ().
body ( containsString ( "OK" ));
使用 X 路径(仅限 XML):
given ().
params ( "firstName" , "John" , "lastName" , "Doe" ).
when ().
post ( "/greetMe" ).
then ().
body ( hasXPath ( "/greeting/firstName[text()='John']" )).
需要认证吗? REST Assured 提供了多种身份验证机制:
given (). auth (). basic ( username , password ). when (). get ( "/secured" ). then (). statusCode ( 200 );
获取并解析响应主体:
// Example with JsonPath
String json = get ( "/lotto" ). asString ();
List < String > winnerIds = from ( json ). get ( "lotto.winners.winnerId" );
// Example with XmlPath
String xml = post ( "/shopping" ). andReturn (). body (). asString ();
Node category = from ( xml ). get ( "shopping.category[0]" );
REST Assured 支持任何 HTTP 方法,但明确支持POST 、 GET 、 PUT 、 DELETE 、 OPTIONS 、 PATCH和HEAD ,并包括轻松指定和验证参数、标头、cookie 和正文。
加入我们 Google 群组的邮件列表。