私はテストケースを実行しており、groovyを使用してデータをアサートしています。失敗したすべてのメッセージをhtml junit generate report
に印刷したいと思います。すべてのアサーションエラーメッセージをSoapUIのHTMLレポートに出力する方法
サンプルコード
import groovy.json.JsonSlurper
def ResponseMessage = messageExchange.response.responseContent
def jsonString = new JsonSlurper().parseText(ResponseMessage)
assert !(jsonString.isEmpty())
assert jsonString.code == 200
assert jsonString.status == "success"
def accountInfo = jsonString.data
assert !(accountInfo.isEmpty())
def inc=0
//CHECKING LANGUAGES IN RESPONSE
if(accountInfo.languages.id!=null)
{
log.info("Language added successfully")
}
else
{
log.info("Language NOT added.") //want to display this in html report
inc++
}
if(accountInfo.educations!=null)
{
log.info("Educations added successfully")
}
else
{
log.info("Educations NOT added.") //want to display this in html report
inc++
}
assert inc<=0,"API unable to return all parameters, Please check logs"
シナリオ
テスト条件が一致するとELSE に行っていない場合は私がここでやっていることは、ですが、私はやる変数INCの増分1で終わるので、inc> 0ならテストに失敗します。テストはそれがAPI unable to return all parameters, Please check logs
と呼ばれる1つのメッセージのみを表示できなかった。しかし、私がしたいことのためならばHTMLレポートに各 IF条件のメッセージを表示する場合のJUnitスタイルのHTMLで
レポートが
は、レポートを生成しましたいかなる条件もELSEセクションに入ります。ポインタの
あなたの与えられた解決策は、私のために正常に動作します。アサーションが失敗したとしても、私のテストケースは失敗していません。アサーションまではすべて正常に動作します。しかし、私はjunitのhtmlレポートを見るとき。ステータス=パスを示します。私が望むのは、アサーションが失敗したときにレポートが失敗し、失敗したレポートをすべてレポートに出力するということです。 –
そのまま使用しましたか?あなたが意図したすべてのメッセージを表示しましたか?あなたはSoapUI自身と一緒にそれを試すことができましたか? – Rao
答えの中で 'if(messages)'を 'if(messages.toString())'に変更しました。この最新の回答をお試しください。 – Rao