Получение данных о времени из тестов Junit на Eclipse - PullRequest
1 голос
/ 05 апреля 2011

Работая на Eclipse Galileo (3.5), я заметил, что мои тесты показывают время каждого тестового прогона. Есть ли способ захвата и этой информации? Есть ли API или он хранится в файле результатов?

Скриншот

enter image description here http://ge.tt/3ylDyiq

1 Ответ

2 голосов
/ 05 апреля 2011

Мы могли бы использовать правило для получения продолжительности времени для каждого метода теста:

class TimeConsumeRule implements MethodRule {
    @Override
    public Statement apply(final Statement base, final FrameworkMethod method, Object target) {
        return new Statement() {
            @Override
            public void evaluate() throws Throwable {
                long start = System.currentTimeMillis();
                try {
                    base.evaluate();
                } finally {
                    System.out.println(method.getName()+ " used "+ (System.currentTimeMillis() - start)+" ms;");
                }
            }
        };
    }
}
public class TimeConsume {
    //Just declare customized Rule in your test case.
    @Rule
    public MethodRule rule = new TimeConsumeRule();

      @Test
      public void test1(){ 
       //...
      }

      @Test
      public void test2(){ 
       //...
      }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...