如何在 spring 或使用 junit 中获取 rest api 的执行时间(获得响应的时间)

How to get the execution time(time to get response) of rest api in spring or using junit

我想节省休息的执行时间api。这与我们在状态旁边的邮递员中看到的相同。 Junit有什么办法吗?

提前致谢

您可以手动完成。

示例:

long time = System.currentTimeMillis();
Response response = server.newRequest("/requesturl").request().buildPost(Entity.text("45")).invoke();
long responseTime = (System.currentTimeMillis() - time);
save(responseTime);

或者,如果您想测试响应时间,请查看 here

手动方式确实很简单。特别是 Java 8 你可以做的事情

private void timed(Runnable r) {
    long time = System.currentTimeMillis();
    r.run();
    long responseTime = (System.currentTimeMillis() - time);
    save(responseTime);
}

在 JUnit 中,您有秒表规则,允许您计算测试执行。

Codahale 也有一个 @Timed 注释,其结果可以发送给收集器。但是需要更多的布线才能使其正常工作。