Отредактировано: вы (OP) упомянули, что используете OSX.Я не знаю ни о каких подобных инструментах на OSX.Существует низкоуровневый системный вызов (унаследованный от BSD), который называется " kqueue ", но вам придется реализовать свой собственный инструмент пользовательского уровня.Существует пример приложения от Apple, которое называется « Watcher », но это только концептуальное подтверждение и не делает то, что вы хотите.
Существует другой поток об этом в Stack Overflow (также неокончательно).
Из-за отсутствия соответствующего инструмента, если вы используете определенный язык программирования, я бы посоветовал вам искать решения, уже написанные для него.В противном случае, я думаю, что вы застряли в опросе и управлении изменениями самостоятельно ...
Вот мой оригинальный ответ на основе Linux для целей архивирования:
Если вы используете Linux,Возможно, вы захотите взглянуть на inotify .В частности, вы можете установить inotify-tools , которые включают в себя inotifywait
.
. С его помощью вы можете отслеживать файлы и каталоги по ряду событий, таких как доступ, изменение, открытиезакрытие и многое другое.inotifywait
может завершиться после обнаружения указанного события, и поэтому простой цикл даст вам то, что вы хотите:
while :; do
inotifywait -e modify /some/directory
run_test_suite
done
Кстати, многие языки программирования и среды уже имеют своих собственных постоянных исполнителей тестов(например, с Python вы можете использовать tdaemon , среди других).