Думаю, теперь я могу ответить на свой вопрос, это довольно просто:
import py
py.test.cmdline.main(args)
Затем я могу запустить этот модуль или запустить его с помощью встроенного отладчика.
args
- это список аргументов командной строки, поэтому, например, для запуска только определенных тестов я могу использовать что-то вроде:
args_str = "-k test_myfavorite"
py.test.cmdline.main(args_str.split(" "))
Я не пробовал использовать eclipse, но, как было предложено в вопросе , можно использовать параметр командной строки - pdb
с py.test
. Может быть, так можно настроить eclipse.
Однако вызов стандартного import pdb; pdb.set_trace ()
не вызовет напрямую отладчик. Сначала он выдаст ошибку, которая, в свою очередь, активирует отладчик. Это может или не может заставить все работать по-другому.