Вопрос пользователя:
Ответ нейросети:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import pytest
class Page:
def __init__(self, driver):
self.driver = driver
class DataTypesPage(Page):
URL = "https://bonigarcia.dev/selenium-webdriver-java/data-types.html"
def open(self):
self.driver.get(self.URL)
def fill_form(self, first_name, last_name, address, email, phone_number, city, country, job_position, company):
self.driver.find_element(By.NAME, "firstname").send_keys(first_name)
self.driver.find_element(By.NAME, "lastname").send_keys(last_name)
self.driver.find_element(By.NAME, "address").send_keys(address)
self.driver.find_element(By.NAME, "email").send_keys(email)
self.driver.find_element(By.NAME, "phone").send_keys(phone_number)
self.driver.find_element(By.NAME, "city").send_keys(city)
self.driver.find_element(By.NAME, "country").send_keys(country)
self.driver.find_element(By.NAME, "job").send_keys(job_position)
self.driver.find_element(By.NAME, "company").send_keys(company)
def submit_form(self):
self.driver.find_element(By.CSS_SELECTOR, "button[type='submit']").click()
def is_zip_code_highlighted_red(self):
zip_code_field = self.driver.find_element(By.NAME, "zip")
return "rgb(255, 0, 0)" in zip_code_field.value_of_css_property("border-color")
def is_other_fields_highlighted_green(self):
fields = self.driver.find_elements(By.CSS_SELECTOR, "input[type='text']")
for field in fields:
if field.get_attribute("name") != "zip":
if "rgb(0, 128, 0)" not in field.value_of_css_property("border-color"):
return False
return True
@pytest.fixture
def browser():
driver = webdriver.Chrome()
yield driver
driver.quit()
def test_fill_form_and_check_highlighted_fields(browser):
page = DataTypesPage(browser)
page.open()
page.fill_form("Иван", "Петров", "Ленина, 55-3", "[email protected]", "+7985899998787", "Москва", "Россия", "QA", "SkyPro")
page.submit_form()
assert page.is_zip_code_highlighted_red()
assert page.is_other_fields_highlighted_green()
Напишите нам, если в вопросе есть ваши персональные данные ([email protected])
Обратите внимание: ответы, предоставляемые искусственным интеллектом, могут не всегда быть точными. Не рассчитывайте на них в критически важных областях, таких как медицина, юриспруденция, финансы или в вопросах, связанных с безопасностью. Для важных решений всегда обращайтесь к квалифицированным специалистам. Администрация сайта не несет ответственности за контент, сгенерированный автоматически.