Найдите, какой шаг N находится в поведении


Я запускаю небольшой набор тестов Behat и получаю ошибку в контексте моей функции.

Я вижу, что ошибка вызвана попыткой десериализации недопустимого json в моем FeatureContext (json_decode()). Однако я не вижу строки, которую он пытался десериализовать.

...................................................................... 70
...................................................................... 140
...................................................................... 210
...................................................................... 280
...................................................................... 350
...................................................................... 420
...................................................................... 490
...................................................................... 560
...................................................................... 630
...................................................................... 700
......................PHP Fatal error:  Cannot access property started with '\0' in tests/Behat/FeatureContext.php on line 512

Я вижу, что это шаг № 722. Есть ли простой способ получить функцию и номер строки из нее?

Я понимаю, что я могу запустить это в довольно удобном формате, и это сработает в данном случае, но некоторые из моих других люксов работают более 2 часов. Мне было интересно, есть ли более простой способ сделать это.

Author: DanielM, 2015-09-07

1 answers

Похоже, нет способа узнать, какой шаг не удался, если вы не подготовили для этого свой набор тестов. Шаги также "умножаются", но сценарии описывают случаи , что еще больше усложняет написание любого скрипта для анализа хакерских функций, чтобы просто подсчитать все шаги, как они могли быть проанализированы Behat.

Но в будущем вы можете использовать крючки "До шага" и "До сценария" для регистрации содержимого шага и имен сценариев. Таким образом, у вас должны быть все их имена зарегистрирован в виде списка.

 1
Author: Eduard Sukharev, 2015-09-14 14:21:20