java - 循环的 Junit 测试
问题描述
我正在自学 Junit 测试,我正在努力为以下代码创建测试
private ArrayList<AirbnbListing> List;
public int getAvgReviews(){
int sums = 0;
for (int i = 0 ; i < List.size(); i++){
AirbnbListing houses = List.get(i);
if(houses.getPrice() >= fromValue && houses.getPrice() <= toValue){
sums += houses.getNumberOfReviews();
}
}
return (sums/getNoOfProperties());
}
有人可以帮我吗
解决方案
首先,您的 List 未初始化。您可能想要更改您的功能以接受列表以开始
public int getAvgReviews(List<AirbnbListing> listings){ ... }
从那里,我们可以编写一个简单或复杂的 JUnit。例如:
@Test
public void simpleTest1(){
List<AirbnbListing> list = new List<AirbnbListing>();
// populate your list here with test elements
// ie list.add(new AirbnbListing(...)); as many as needed
// now if your list is 3 elements long with review ratings of [4, 5, 6],
// we would want to test the assertion that getAvgReviews(list) is equal to 5
assertTrue(getAvgReviews(list) == 5);
// ... more assertions here if needed
}
推荐阅读
- javascript - 如何检测点击是否在引导模型之外,如果点击在模型之外则调用函数
- sql - 在 sql 的 uniqueidentifier 中设置一些默认的 guid 值
- python - 使用 Python 搜索和替换 .CSV 文件中的多个名称
- neo4j - 在neo4j中删除关系后如何返回值
- wordpress - “此页面没有可用信息” 谷歌说 WP 网站
- python-3.x - 使用 sqlalchemy 与 SQLite 数据库的连接过多导致 Python 脚本失败
- jquery - 如何将Angular变量传递给jQuery函数
- angular - ngrx/store - 测试,抛出 TypeError:无法读取未定义的属性“管道”
- swift - 添加加载更多动画(如 Facebook 新闻)的最佳方式?
- python - 如何将 pyspark 数据框列转换为 numpy 数组