4
我有一個Groovy數組,它將獲得一組隨機整數值。我想斷言數組中的每個項目都有一個在給定範圍內的值。我正在嘗試使用Hamcrest Matchers。所以,我的測試是這樣的:如何斷言集合中的每個項目都在範圍內
@Test
void testShouldReturnArrayOfStats(){
def results = pg.rollStats()
assertThat results, everyItem(both(greaterThan(0)).and(lessThanOrEqualTo(6)))
}
當我運行測試,我得到一個AssertionError
java.lang.AssertionError: Expected: every item is (a value greater than <0> and a value less than or equal to <6>)
but: was [<6>, <3>, <5>, <4>, <3>, <2>]
我已經試過這方面的一些變化,但我沒有得到通過的測試。僅僅通過查看錯誤的「但是:是」部分,我可以看到所有6個值都符合要求,但測試仍然失敗。
我沒有使用Groovy或Hamcrest很長時間,所以我確信我錯過了一些東西。 謝謝
是的,我相信那些作品。對於groovy,我還是個新手,並且我試圖在同一時間整合一些其他工具。所以在這種情況下,簡單的groovy斷言給出了我正在尋找的結果。謝謝 – TroyB