でReplaceAllを実行した後にスラッシュを削除することができません

BruceyBandit:
Object jsonBody = getParsedJSONDocument(document);
Object href =  JsonPath.read(jsonBody, "$.href");

assertThat(href, is(String.format(System.getenv(ENDPOINT)+"%s", url).replaceAll("\\\\", "")));

私は、URLに対してアサーションを実行しようとしていますし、私が午前問題は、それが応答から、それを取得したURLで\です。

それは吐き出します <["https:\/\/www.testenv\/examplesite.com\"]>

どのように私はスラッシュを削除し、私は期待していて、配列のそれを取りますか:

"https://www.testenv/examplesite.com"
ジョープEggen:

間違ったデータ:どういうわけかスラッシュはJSONで脱出しました。場合、それはあなたの文です。

String href = JsonPath.read(jsonBody, "$.href");
href = href.replace("\\", "");

さらに、正しいものの、より良いスタイルは、単に使用されるだろう+か。

assertThat(href, is(String.format("%s%s", System.getenv(ENDPOINT), url)).replace("\\", ""));

たぶん、あなたはHREFに起こることを置き換えることを意図し。JUnitの中で最初の比較要素である期待値は、実際の計算値の第二。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=27529&siteId=1