我正在使用Java和testng。我有两组字符串:validSet和actualSet。 我想通过断言检查actualSet中的所有内容是否在validSet中(即actualSet( - validSet。)(我正在使用( - 表示是其子集)。 有一个assertContains(desc,collection1,object)。我尝试了这个,但它把我的actualSet和它放在一个字符串形式,如“[item1,item2,item3]”,而不是把它当作一个集合。
有一个带有两个集合的assertCollectionEquals()。我想如果我可以删除validSet中不在actualSet中的所有内容,那么我可以检查两者是否相等。如果不是,那么我知道validSet不包含在validSet中。
我可以做以下事情:
for (String act : actual ) {
assertTrue( act + " is not valid", validSet.contains(act);
}
但是关于集合断言的好处是它们将列出不在validSet中的每个字符串,而上面的示例将仅列出遇到的第一个然后失败。
我正在考虑调用的方法,以便比较两个集合应该相等。如何从一组中删除不在另一组中的所有值?
谢谢
答案 0 :(得分:1)
一种解决方案可能是使用循环构建错误消息,然后在循环后使用该错误消息进行断言。类似的东西:
$("#btnsearch").click(function () {
dserial = $("#dserial").val();
$('.content').load("/ServiceMaintenance/SearchInstallationDeviceDetails");
})