2017-09-27 3 views
0

私は検証する必要のある応答メソッドを持っているので、条件文を追加しましたが、スクリプトのエラーが「型の不一致:HttpClientResponseActionBuilderからbooleanに変換できません」というメッセージが表示されます。応答メソッドの検証に助けが必要

if(http() 
      .client(todoClient) 
      .receive() 
      .response(HttpStatus.OK).validate("$.statusCode", "200")) { 
      For Report Purpose 
     } 
    else { 
     For Report Purpose 
    } 

私が探しているものを達成するには、より良い方法がありますか?

よろしく BJ

答えて

1

のhttp()Javaの流暢APIがここにboolean値を返すされていないので、あなたのコードがコンパイルされません。だから、ここにifの文でそれを置くことはできません。

代わりにconditionalテストアクションコンテナを使用できます。私はテスト変数にHTTPステータス応答コードを保存することを考えています。次に、その応答コード値に基づいていくつかの条件付きコンテナを使用できます。

http().client(todoClient) 
     .receive() 
     .response() 
     .extractFromHeader(HttpMessageHeaders.HTTP_STATUS_CODE, "statusCode"); 

conditional() 
    .when("${statusCode} = 200") 
    .actions(echo("Everything OK!")); 

conditional() 
    .when("${statusCode} = 404") 
    .actions(echo("NOT FOUND!")); 
関連する問題