Драматург: Остановить, если http-статус 500
Я бы хотел, чтобы драматург потерпел неудачу раньше, и остановился, как только один http-запрос не будет
200
или же
302
.
def test_it(live_server):
os.environ['DEBUG']='pw:api'
with sync_playwright() as playwright:
run_test_id(live_server, playwright)
def run_test_id(live_server, playwright):
browser = playwright.webkit.launch(headless=False)
context = browser.new_context()
page = context.new_page()
page.goto(live_server.url)
page.click("text=Create Test Data")
к несчастью
page.click()
возвращает None, поэтому я понятия не имею, как я могу проверить http-статус щелчка.
Как я могу реализовать «Сбой при необычном статусе http» в Playwright?
1 ответ
Возможен вариант использования <tcode id="22866898"></tcode>:
def handle_response(response):
print(f"{response.status}")
if response.status == 500:
exit(1)
page.on("response", handle_request)
Однако это проверяет не только код состояния после щелчка, но и любой ответ на запрос, например, если ваш
page.goto()
возвращает 500, он также остановится здесь.
(Я больше привык к Playwright с JS, поэтому мой пример может быть немного неточным.)