我正在尝试测试一种试图与其他人通信的服务。
其中一个会生成听觉,这些听觉会存储在内存中,直到调度的任务将它们刷新到redis节点上为止:
@Component
public class AuditFlushTask {
private AuditService auditService;
private AuditFlushTask(AuditService auditService) {
this.auditService = auditService;
}
@Scheduled(fixedDelayString = "${fo.audit-flush-interval}")
public void flushAudits() {
this.auditService.flush();
}
}
另一方面,此服务提供的端点代表提供那些经过冲洗的听觉:
public Collection<String> listAudits(
) {
return this.boService.listRawAudits(deadlineTimestamp);
}
问题是我正在建立一个集成测试,以检查此过程是否正确,我的意思是,是否提供了良好的审核。
因此,我不知道如何“等到微服务上的审核被清除”。
有什么想法吗?
答案 0 :(得分:0)
不要测试框架:Spring几乎可以肯定有测试固定延迟的测试。
相反,请将所有逻辑保留在服务本身内,并进行集成测试,使其与Spring @Scheduled
函数隔离。