我是单元测试的初学者。我使用JUnit和Mockito。这是我想测试的一个示例方法。
public Void getPeopleNumbersList(List<Aggregate<Person>> aggregateList) {
for (List<Person> person : peopleList) {
List<PhoneNumber> phoneNumbersList = getPhoneNumbers(person);
for (PhoneNumber phoneNumber : phoneNumbersList) {
//Some functions to do some DB operations.
DynamoDB.update(phoneNumber); // Just an example
}
}
}
如何测试Mockito中每个人的每个电话号码是否调用了操作/功能(这里是更新调用)?
2条答案
按热度按时间fkvaft9z1#
这取决于你的方法应该做什么。你提供的例子很难测试,因为你调用的是一个静态类。我假设你可以在你的测试类中获得对DB操作的引用。如果是这样,我会用mockito模拟你的数据库引用:
fnx2tebb2#
为了进入for循环,你应该发送一个实际的列表。假设你测试的类是ClassUnderTest。一旦你进入for循环,如果你能继续正常执行getPhoneNumbers(),那么它就很好了,否则就模仿它。