Cum de a rula teste, unul câte unul, folosind Seleniu și Python într-un singur tab?

0

Problema

Eu sunt destul de nou pentru testare automată, astfel încât să nu bată prea tare.

Deci am 2 fisiere separate cu 2 teste diferite:

  1. Autentificare cu succes
  2. De a crea o cerere

Nu pot rula cu succes Conectare caz, dar eu nu pot alerga cel de-al doilea, deoarece necesită să fie autentificat. Există vreun mod în care pot rula 1-st un (Utilizator) și executați următoarea în aceeași fereastră a browser-ului fără a închide această fereastră, astfel încât următorul test a fost ca o continuare a celui anterior?

Deci, aici este un test pentru Autentificare

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()

Și aici este de a crea o cerere

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

Cel mai bun răspuns

0

Da, se poate! Pentru acest exemplu, voi numele tău de cod de autentificare fișier ca "login":

from login import *
from pages.med_page import MedPage


###some request###

Când ai de referință login script folosind "de conectare de import *" ruleaza tot ce este pe login script. Sperăm că acest lucru vă ajută!

2021-11-23 17:30:00

Da, vă mulțumesc! A făcut-o mult mai bine! Acum testele sunt rulate unul câte unul, dar încă în ferestre separate, așa că nu pot crea o cerere oricum screencast.com/t/urna3WtJ6cim
Kiprian

@Kiprian nu ar trebui să inițieze un alt șofer în ###unele cerere### porțiune de cod. Ar trebui să nevoie doar de a apela driver o dată, apoi face cerere. Dacă aveți nevoie pentru a comuta la suburl în care pagina de web, atunci face acest lucru prin a spune "driver.a lua(subUrl)" va trebui doar pentru a face "browser = webdriver.Chrome()" o dată.
Luke Hamilton

@Kiprian Daca raspunsul meu te-a ajutat, atunci vă rugăm să mă ajute prin a-mi accepta raspuns, multumesc!!
Luke Hamilton

Multumesc @Luke atât de mult! Chiar m-ai ajutat!!!
Kiprian

În alte limbi

Această pagină este în alte limbi

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