Я хочу написать Selenium тестов с сервером в качестве прибора:Как запустить сервер в качестве приспособления для py.test
import pytest
@pytest.fixture()
def driver(request):
from selenium import webdriver
d = webdriver.Firefox()
request.addfinalizer(d.close)
return d
@pytest.fixture()
def server():
from server import run
run(host="localhost", port=8080)
def test_can_see_echo(driver,server):
page = TestPage(driver)
page.fill_text_in_input("test")
page.click_send()
print page.get_returnet_value()
Функция запуска в сервере арматуре является функцией бутылки запуска. Проблема в том, что при вызове программ run() переходят в бесконечный цикл, а тело теста не выполняется. Должен ли я запускать вызов в том же потоке? Мой дизайн прекрасен? В будущем я хочу использовать серверное устройство для интеграции в состояние сервера. Например, сделайте тест «добавьте комментарий», используя Selenium, и в конце концов используйте серверное устройство, чтобы спросить сервер, действительно ли это действие произошло.