Jak uruchomić testy jeden po drugim, za pomocą Selenium i Python na jednej karcie?

0

Pytanie

Jestem dość początkujący w zautomatyzowanych testów, więc nie bijcie mnie za mocno.

Tak więc, mam 2 oddzielnych pliku z 2 różnymi zadaniami:

  1. Udane logowanie
  2. Tworzenie kwerendy

Mogę z powodzeniem uruchomić przypadek logowania, ale nie mogę uruchomić drugi, tak jak wymaga logowania. Czy jest jakiś sposób, aby uruchomić 1 (użytkownik loguje się do systemu) i uruchomić następny w tym samym oknie przeglądarki, nie zamykając to okno, aby kolejny test był podobny do kontynuacji poprzedniego?

Oto test, aby wejść do systemu

from selenium import webdriver

from pages.base_element import BaseElement
from pages.login_page import LoginPage

# Test Setup
browser = webdriver.Chrome()
currentURL = None

# Successful Login
log_page = LoginPage(driver=browser)
log_page.go()   <-------------------------------------------Goes to the Login Page                    
log_page.user_name_field.input_text('[email protected]')

log_page.password_field.input_text('Pass123')
log_page.login_button.click()

A oto aby utworzyć żądanie

from selenium import webdriver
 
from pages.base_element import BaseElement 
from pages.med_page import LoginPage 
from pages.med_page import MedPage
 
# Test 
Setup browser = webdriver.Chrome() 
currentURL = None
 
# Test
med_page = MedPage(driver=browser) 
med_page.go()   <----------------- Must redirect to the Request Page, but redirects to Login as it is a new browser session, so the user is not logged in
automation browser-automation oop python
2021-11-23 17:20:44
1

Najlepsza odpowiedź

0

Tak, możesz! W tym przykładzie podam swój plik kodu logowania jako "wejście".:

from login import *
from pages.med_page import MedPage


###some request###

Gdy odwołujesz się do skryptu logowania z pomocą "z importu logowania*", uruchamia on wszystko, co jest w skrypcie logowania. Mam nadzieję, że to pomoże!

2021-11-23 17:30:00

Tak, dziękuję ci! To sprawiło, że o wiele lepiej! Teraz testy są wykonywane jeden po drugim, ale wciąż w osobnych oknach, dlatego wciąż nie mogę utworzyć kwerendę screencast.com/t/urna3WtJ6cim
Kiprian

@Kiprian nie musisz uruchamiać inny sterownik w części ###któreś żądanie### twojego kodu. Trzeba będzie tylko raz zadzwonić do kierowcy, a następnie zrobić swoje zapytanie. Jeśli chcesz przełączyć się na suburl na tej stronie, zrób to, mówiąc "driver.get(subUrl)". Tylko trzeba będzie zrobić "przeglądarka = web-sterownik.Chrome()" jeden raz.
Luke Hamilton

@Cyprian, jeśli moja odpowiedź ci pomogła, proszę, pomóż mi, przyjmując moją odpowiedź, dziękuję!!
Luke Hamilton

Wielkie dzięki @Luke! Pomogłeś mi!!!
Kiprian

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................