conftest
solution Наименее инвазивным решением является добавление пустого файла с именем conftest.py
в каталог repo/
:
$ touch repo/conftest.py
Вот и все. Не нужно писать пользовательский код для искажения sys.path
или не перетаскивать PYTHONPATH
или помещать __init__.py
в dirs, где он не принадлежит.
Каталог проекта затем:
repo
├── conftest.py
├── app.py
├── settings.py
├── models.py
└── tests
└── test_app.py
pytest
ищет модули conftest
в тестовой коллекции для сбора пользовательских перехватчиков и приспособлений, а для импорта пользовательских объектов из них добавляется pytest
родительский каталог conftest.py
на sys.path
.
Если у вас есть другая структура проекта, поместите conftest.py
в корневой каталог пакета ( один, который содержит пакеты, но не является самим пакетом, поэтому не содержит __init__.py
), например:
repo
├── conftest.py
├── spam
│ ├── __init__.py
│ ├── bacon.py
│ └── egg.py
├── eggs
│ ├── __init__.py
│ └── sausage.py
└── tests
├── test_bacon.py
└── test_egg.py
Конечно, conftest
- это не только некоторые файлы, которые помогают обнаружить исходный код; это то, где происходят все специфические для проекта усовершенствования pytest
и настройка вашего тестового набора. pytest
содержит много информации о модулях conftest
, разбросанных по всем их документам ; начните с conftest.py
: локальные плагины для каждого каталога
Кроме того, у SO есть отличный вопрос о модулях conftest
: В py.test, что такое использование файлов conftest.py?
На всякий случай у кого-то такая же проблема, вот как я ее исправил:
Я открыл программу Activity Monitor и выбрал «All Processes». Затем я ищу «mysqld» в тексте поиска поле. Существует хорошая вероятность того, что у вас есть экземпляр mysql, и вы должны найти его и запустить процесс quit. Перезапустите MAMP, и все должно быть установлено.
Я разместил здесь свое решение .. , но будет ли он раздражать редакторов-богов для повторной публикации? Я нашел, что это работает так ясно и последовательно, что стоит благовествовать.
исправить любезно Abhinav Sood .
sudo apachectl stop
для выключения системы Apache. sudo apachectl restart
, чтобы перезапустить Apache. http://localhost/MAMP/?language=English
в своем браузере) re сделано.
@Mazal
Наконец, я нашел ваше замечательное решение для исправления этой проблемы localhost: 80 и apachectl. Однако проблема возобновится, когда после повторного запуска против !!!!!!
Итак, исправьте эту перестановку -> при выходе из MAMP -> [снимите галочку] сервер остановки окна.
это будет поддерживать настройку порта на localhost: 80 и apachectl зеленым свет.
приветствие!
Я настроил httpd.conf. В этом файле просто замените:
Слушайте 80
для
Слушайте localhost: 80
restart mamp. Это сработало для меня.