Могу ли я запустить `phpunit` для открытого PHP-файла внутри vim?

964
DerKlops

Есть ли простой способ запустить phpunit на открытом тестовом файле php внутри vim?

3

3 ответа на вопрос

2
scy

Я не знаю синтаксис вызовов PHPUnit наизусть, но, вероятно, что-то подобное :!phpunit %может помочь.

2
Bryan Geraghty

Мне лично нравится настраивать раскладку клавиш для запуска разных инструментов. Мое сопоставление для PHPUnit выглядит следующим образом (добавлено в ~ / .vim / ftplugin / php.vim, доступное по адресу https://github.com/archwisp/linux-home/blob/master/.vim/ftplugin/php.vim ) :

nnoremap ,u :!./bin/runtests %<CR> 

Таким образом, при редактировании файла модульного теста я просто нажимаю «, u», и сценарий запуска, специфичный для проекта, выполняется с текущим именем файла в качестве аргумента. Я создаю скрипт runtests для каждого проекта, потому что каждый проект настроен по-разному, и это позволяет мне использовать одно и то же сопоставление клавиш для каждого проекта. Другим дополнительным преимуществом является то, что этот сценарий может быть запущен из командной строки или с помощью пакета непрерывной интеграции.

Пример скрипта runtests можно посмотреть здесь: https://github.com/archwisp/MindFrame2/blob/master/bin/runtests

0
Luc Hermitte

Я также не знаю PHPUnit, однако я бы установил &makeprgphpunit, а затем вызвал make on %:

:set makeprg=phpunit :make % 

а затем перемещаться между ними неудавшихся утверждений с :copen, :cc, :cn, :cp(: ч QuickFix) - если PHPUnit не удалось утверждения совместимы с обычным форматом ошибки: «Файл: строка: сообщение об ошибке», в противном случае некоторые настройки на &efmбудет необходимо.