Сводные результаты тестов исполнителей тестов класса Play Framework не складываются

Кто-нибудь знает, как я могу настроить классы тестовых бегунов, отличные от значений по умолчанию, и получить сводные результаты тестов для подсчета тестов, выполненных/не пройденных правильно?

В частности, я хочу бегать с парой специализированных бегунов. Например, пружинный бегун junit:

@RunWith(SpringJUnit4ClassRunner.class)

или, возможно, бегун в категории junit:

@RunWith(Categories.class)

Тесты, аннотированные выше, выполняются, но результаты не выводятся в консоль активатора. Например, приведенный ниже пример фактически выполнил 6 тестов в моем пакете, но результаты говорят 0 0 0 0 :

[finbot] $ test-only com.myapp.finbot.model.*
[info] Обновление {file:/Users/todd/workspace/finbot/}root...
[info] Разрешение com.typesafe .trace#trace-sigar-libs;0.1.6 ...
[информация] Выполнено обновление.
09:09:07.488 по умолчанию [pool-1-thread-1] DEBUG ostcjSpringJUnit4ClassRunner ->

................

[информация] ohviuVersion - HV000001: Hibernate Validator 5.0.3.Final
[отладка] crfgcBatchConfiguration - **************************** ******** Шаг создан **********************************
[отладка] crfgcBatchConfiguration - ************************************* Задание создано *********** *************************
[info] Пройдено: Всего 0, Не пройдено 0, Ошибок 0, Пройдено 0

Есть идеи?


person Todd Fulton    schedule 30.10.2014    source источник
comment
Я думаю, что это ошибка в sbt/junit-interface. Вы можете попробовать использовать sbt 0.13.6, который якобы исправляет это.   -  person Salem    schedule 30.10.2014


Ответы (2)


Обновление с sbt 0.13.5 до 0.13.6 в соответствии с комментарием @Salem решит проблему.

person David Holbrook    schedule 18.12.2014
comment
Работал и для меня! - person Xorty; 13.02.2015

Кроме того, вы можете использовать пользовательское правило junit.

public class MyTest {
    // ...
    @Rule
    public CustomRule customRule = new CustomRule();
    // ...
}

public class CustomRule extends TestWatcher {
    @Override
    public Statement apply(final Statement base,
            final Description description) {
        return new Statement() {
            @Override
            public void evaluate() throws Throwable {
                try {
                    // before test execution
                    base.evaluate(); // test execution
                    // test succeeded
                } catch (Throwable e) {
                    // test failed
                }
            }
        };
    }
}
person virtual agent 07    schedule 21.10.2015