5
W projekcie, w którym pracuję, muszę objąć usługę Tornado z Behave, dlatego chcę uruchomić instancję mojej usługi tornado przed uruchomieniem każdego scenariusza.Jak uruchomić pętlę IO Tornado podczas konfigurowania środowiska Behave
naiwnie próbuje uruchomić pętlę jako część zanim wszystko wydaje się zablokować excecution:
from tornado import ioloop
from tornadoadapter.applications import APPLICATION
def before_all(context):
print "Service running on port 8000"
APPLICATION.listen(8000)
ioloop.IOLoop.instance().start()
więc to chyba nie to, czego potrzebuję.
Kiedy próbuję uruchomić to na Windows, otrzymuję następujący wyjątek: 'pickle.PicklingError: Nie można marynowane. Nie znalazł jak __main __ run_server' –
brzmi jak twój' run_server' funkcja nie jest dostępna. szybką rzeczą do sprawdzenia jest to, czy rzeczywiście można zaimportować 'run_server'? to znaczy, jeśli jest to lambda lub funkcja wewnętrzna do 'before_all', to nie zadziała. – Xuan
'run_server' jest zdefiniowany tak, jak jest w próbce twojego kodu; znajduje się w tym samym pliku, tuż przed zdefiniowaniem 'before_all'. –