База данных отката после интеграции (Селен) тесты

Я узнал, как управлять подпроцессом с помощью двух операторов if, делая переменную процесса глобальной переменной.

В результате код будет выглядеть следующим образом (набросок):

if command == "run":
    global htop
    htop = subprocess.Popen(["xterm", "-e", "htop"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    if htop.poll() == None:
        htopStatus = "Running"
if command == "stop":
    if htop.poll() == None:
        htop.terminate()
        htopStatus = "Stopped"
10
задан matt 20 April 2009 в 16:08
поделиться

2 ответа

Мы запускаем скрипт удаления / создания таблицы перед каждым тестом. Это довольно быстро и гарантирует, что ничего не осталось от предыдущих тестов.

PS: Мы используем NHibernate, который создает этот скрипт на лету и запускает тест на Sqlite в памяти, это светлая скорость. Но если мы переключимся на SqlServer, это все еще довольно быстро.

3
ответ дан 4 December 2019 в 02:27
поделиться

Это сложная проблема, и решение, как правило, уникально для каждого приложения. До тех пор, пока основные структуры не примут «рекомендуемый подход», это будет оставаться проблемой.

Моя лучшая рекомендация: планируйте это использование в начале вашего приложения. Включите API, которые очищаются после сброса БД из-под приложения (т. Е. Сбрасывают кеши).

3
ответ дан 4 December 2019 в 02:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: