Пытаюсь выяснить, что сломало мою среду разработки. На моем MacBook все работало хорошо, а потом я что-то обновил, и теперь большинство моих тестовых файлов PHPUnit выдают эту ошибку:
Symfony\Component\Process\Exception\ProcessSignaledException
The process has been signaled with signal "11".
Вот подробности моей среды:
Host Environment
Hardware: MacBook Pro with Apple M3 Pro Chip
Operating System: macOS Sonoma 14.5
Docker Desktop: 4.31.0 Engine 26.1.4
Docker Environment
OS: Ubuntu 22.04.4 LTS
PHP Version: 8.3.8
Composer: 2.7.6
Laravel Framework: 11.4.0
Laravel Sail: 1.29.1
PHPUnit: 11.2
Symfony: ^7.0
Вот что я пробовал до сих пор:
Symfony выдает ошибку для сложных тестов PHPUnit (например, тех, которым нужно дождаться ответа http) или для некоторых файлов, содержащих несколько простых тестов PHPUnit. В некоторых случаях я могу использовать команду --filter для индивидуального выполнения простых тестов PHPUnit, находящихся в файле. Но когда я использую команду --filter для выбора всего файла, я получаю ошибку symfony для некоторых файлов. Одни и те же файлы и отдельные тесты постоянно терпят неудачу, но я еще не определил, что является причиной сбоев. Может ли это быть проблемой с постановкой в очередь команд PHPUnit?






Я откатил изменения кода до предыдущего коммита, чтобы проверить, были ли изменения в моей среде ошибочными или виновато что-то, что я вставил в свой код. Мой предыдущий код работал нормально, несмотря на различные изменения среды, так что это должно быть что-то в моем коде. Я проанализировал коммиты и обнаружил, что в моем файле config/auth.php я случайно изменил имена одного из моих охранников аутентификации. Исправление имени аутентификатора устранило все ошибки сигналов процесса.
Просто показывает ценность сравнения репозиториев, когда вы начинаете наблюдать всевозможное странное и беспорядочное поведение, которое сообщения об ошибках не могут помочь вам определить.
Одна вещь, которую вы можете попробовать (поскольку вы не выразились явно), — это удалить папку
vendorи попробовать установить ее снова. Еще один вопрос, который может добавить больше информации: происходит ли это случайным образом в небольших тестах или это 100% сбой? Вы должны уметь бегатьphp artisan test -vvv, но я не уверен, насколько это будет полезно.