我有一个类,该类的方法使用jsoup检索前面提到的页面的内容,然后连接到下载的链接并创建对象列表以进行进一步处理。我目前正在为此编写单元测试,这是我第一次尝试考虑它们的质量和含义,以及如何测试此方法中包含的try-catch块。当我提供指向jsoup的无效链接时,它将引发异常:
class
如何捕获它并在测试中注册?我要感谢您为这些测试提供的所有建议和提示!
测试方法:
java.lang.IllegalArgumentException: Must supply a valid URL
java.lang.IllegalArgumentException: Malformed URL: abdcds.html
已经进行了测试:
public ArrayList<WebContent> getContent(){
ArrayList<WebContent> list = new ArrayList<>();
try {
Document document = Jsoup.connect(rssUrl).get();
Elements link = document.select(".rssLink a");
Elements title = document.select(".name");
for(int i=0; i<title.size();i++){
String urlTitle = title.get(i).text();
String urlLink = link.get(i).attr("abs:href");
if(urlLink.equals("https://ekstraklasa.tv/ekstraklasa-tv,83,m.xml")) {
continue;
}
try {
Document xml = Jsoup.connect(urlLink).get();
list.add(new WebContent(urlTitle, urlLink, xml));
} catch (Exception error) {
System.out.println(error);
}
}
}
catch(Exception error) {
System.out.println(error);
}
return list;
}