Java 按assertThat列出断言(Assertj)
通常,当我们发送预期值和实际值的列表类型时,AssertType将对这些值执行上述assert类型。但由于我将Java升级到8,这些断言或显示编译错误。以下是我的断言测试代码示例:Java 按assertThat列出断言(Assertj),java,list,selenium,automation,assertions,Java,List,Selenium,Automation,Assertions,通常,当我们发送预期值和实际值的列表类型时,AssertType将对这些值执行上述assert类型。但由于我将Java升级到8,这些断言或显示编译错误。以下是我的断言测试代码示例: import java.util.ArrayList; import java.util.List; import static org.assertj.core.api.Assertions.assertThat; public class VerificationTest { public voi
import java.util.ArrayList;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
public class VerificationTest {
public void listTest(List<?> expectedList, List<?> actualList){
Iterable<?> actualIterable = actualList;
Iterable<?> expectedIterable = expectedList;
assertThat(actualIterable).describedAs("List Test").containsAll(expectedIterable);
}
public static void main(String args[]){
List<String> listOne = new ArrayList<>();
listOne.add("A");
listOne.add("B");
listOne.add("C");
List<String> listTwo = new ArrayList<>();
listTwo.add("A");
listTwo.add("B");
listTwo.add("C");
listTwo.add("D");
VerificationTest verificationTest = new VerificationTest();
verificationTest.listTest(listOne, listTwo);
}
}
import java.util.ArrayList;
导入java.util.List;
导入静态org.assertj.core.api.Assertions.assertThat;
公共类验证测试{
公共无效列表测试(列表预期列表、列表实际列表){
Iterable可实现=实际值;
Iterable Expecteditable=expectedList;
资产(可实施)。描述为(“列表测试”)。包含所有(可预期);
}
公共静态void main(字符串参数[]){
List listOne=new ArrayList();
列表一。添加(“A”);
列表一。添加(“B”);
列表一。添加(“C”);
List listTwo=新的ArrayList();
清单2.添加(“A”);
清单2.添加(“B”);
清单2.添加(“C”);
清单2.添加(“D”);
VerificationTest VerificationTest=新的VerificationTest();
验证测试。列表测试(列表一、列表二);
}
}
以下是我得到的错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The method hasSameElementsAs(Iterable<? extends capture#1-of ?>) in the type AbstractIterableAssert<capture#2-of ?,capture#3-of ? extends List<? extends capture#1-of ?>,capture#1-of ?> is not applicable for the arguments (List<capture#5-of ?>)
线程“main”java.lang中出现异常。错误:未解决的编译问题:
AbstractIterableasert类型中的方法hasSameElementsAs(Iterable)不适用于参数(列表)
这里的问题是什么?这是因为Java8吗
多谢各位