Ошибка FlexUnit 4
Я сталкиваюсь со странной ошибкой FlexUnit:
Ух ты... меня попросили отправить еще один комплект, и я уже сделал это
Кажется, ошибка возникает, когда число тестов превышает 27...? (тесты никогда не заканчиваются)
тестовый пример:
[Test]
public function whenDoingThat_expectThatIsTrue():void{
//blabla
assertTrue(...)
}
Любая помощь приветствуется!
Вот пример:
core = new FlexUnitCore();
core.addListener(new TraceListener());
core.run(FooTest);
import org.flexunit.asserts.assertTrue;
public class FooTest {
[Test]
public function foo_test_1() : void {
assertTrue(true);
}
[Test]
public function foo_test_2() : void {
assertTrue(true);
}
...
[Test]
public function foo_test_28() : void {
assertTrue(true);
}
//[Test]
public function foo_test_29() : void {
assertTrue(true);
}
}
результат:
foo_test_9 .
foo_test_17 .
foo_test_3 .
foo_test_18 .
foo_test_4 .
foo_test_19 .
foo_test_5 .
foo_test_6 .
foo_test_20 .
foo_test_21 .
foo_test_7 .
foo_test_22 .
foo_test_8 .
foo_test_23 .
foo_test_2 .
foo_test_24 .
foo_test_10 .
foo_test_25 .
foo_test_11 .
foo_test_26 .
foo_test_12 .
foo_test_27 .
foo_test_13 .
foo_test_28 .
foo_test_14 .
foo_test_15 .
foo_test_1 .
foo_test_16 .
Whoa... been asked to send another complete and I already did that
1 ответ
Иронично это опубликовано здесь, учитывая, что на самом деле проблема действительно Stackru:
https://bugs.adobe.com/jira/browse/FXU-112
Вы можете использовать обходной путь, упомянутый в сообщении об ошибке, или это поведение исправлено в бета-версии FlexUnit 4.1, которую можно найти на странице загрузки flexunit.org.
Релизная версия 4.1 выйдет очень скоро.
Проблема в том, что ваша машина достаточно быстра, чтобы провести еще один тест, прежде чем среда заставит ее ждать следующего кадра. Flash Player выбрасывает переполнение стека, когда глубина стека достигает глубины, и он попадает в ловушку попытки в неподходящем месте, а затем отслеживает оператор Whoa.
Первоначально в FlexUnit 4.x мы использовали для этого счетчик и приблизительную длину кадра, которые в очень редких случаях могли связываться с машиной больше, чем тесты, что могло бы произойти. В 4.1 мы фактически следим за кадрами по мере их появления, что должно навсегда устранить эту проблему.
Майк