В современной разработке программного обеспечения написание сценариев автоматизированного тестирования является важным шагом для обеспечения качества и стабильности программного обеспечения. С развитием искусственного интеллекта и технологий обработки естественного языка языковые модели, такие как ChatGPT, стали мощным инструментом для написания сценариев автоматизированного тестирования. ChatGPT может генерировать код на основе заданных инструкций и условий, упрощая процесс тестирования и повышая эффективность.
Предположим, у нас есть простой веб-сайт, и нам нужно написать сценарий автоматического тестирования для проверки функциональности входа в систему. Мы можем использовать ChatGPT для создания такого сценария.
Сначала мы взаимодействуем с ChatGPT, заявляя, что хотим протестировать функциональность входа в систему, и перечисляя этапы тестирования и ожидаемые результаты:
Пользователь: Здравствуйте, мне нужно создать Автоматизированное Сценарий тестирования для проверки работоспособности входа на веб-сайт.
ChatGPT: Хорошо, перечислите этапы тестирования и ожидаемые результаты.
Пользователь: Первый шаг — открыть домашнюю страницу веб-сайта. Ожидаемый результат — возможность увидеть форму входа.
Пользователь: на втором этапе введите действительные имя пользователя и пароль. Ожидаемый результат — успешный вход на страницу учетной записи пользователя.
Пользователь: Третий шаг — проверить заголовок страницы после входа в систему. Ожидаемый результат: в заголовке отображается информация об учетной записи пользователя.
Пожалуйста, используйте python+selenium для создания скрипта.
Сценарий, созданный ответом ChatGPT, выглядит следующим образом:
from selenium import webdriver
# Открыть браузер
driver = webdriver.Chrome()
# Шаг 1. Откройте главную страницу сайта.
driver.get("https://example.com")
# Ожидаемый результат: возможность видеть форму входа.
login_form = driver.find_element_by_id("login-form")
if login_form.is_displayed():
print("Форма входа видна")
else:
print("Форма входа не видна")
# Шаг 2. Введите действительные имя пользователя и пароль.
username_input = driver.find_element_by_id("username")
password_input = driver.find_element_by_id("password")
username_input.send_keys("your_username")
password_input.send_keys("your_password")
driver.find_element_by_id("login-button").click()
# Ожидаемые результаты: Успешный вход на страницу учетной записи пользователя.
if "user_account_page" in driver.current_url:
print("Успешный вход на страницу учетной записи пользователя")
else:
print("Войти не удалось")
# Шаг 3. Проверьте заголовок страницы после входа в систему.
user_account_title = driver.title
# Ожидаемый результат: заголовок отображает информацию об учетной записи пользователя.
if "User Account" in user_account_title:
print("В заголовке страницы указана информация об учетной записи пользователя")
else:
print("Заголовок страницы не отображает информацию об учетной записи пользователя")
# Закрыть браузер
driver.quit()
Этот код имитирует процесс входа пользователя на сайт с помощью Selenium и проверяет ожидаемые результаты. ChatGPT генерирует базовый тестовый сценарий на основе наших потребностей, который мы можем улучшить и адаптировать для более сложных сценариев тестирования.
Мы можем обнаружить, что версия селена, используемая в этом коде, невысока, а инфраструктура pytest не используется, поэтому мы можем продолжать просить ChatGPT использовать версию селена 4.0 и инфраструктуру pytest для вывода кода.
Недавно сгенерированный код ChatGPT выглядит следующим образом:
import pytest
from selenium import webdriver
from selenium.webdriver.common.by import By
@pytest.fixture(scope="module")
def browser():
# Инициализировать экземпляр браузера (здесь используется Chrome)
driver = webdriver.Chrome()
yield driver
# После теста Закрыть браузер
driver.quit()
def test_login(browser):
# Открыть домашнюю страницу сайта
browser.get("https://example.com")
# Проверьте, видна ли форма входа
login_form = browser.find_element(By.ID, "login-form")
assert login_form.is_displayed(), "Форма входа не видна"
# Введите имя пользователя и пароль и войдите в систему
username_input = browser.find_element(By.ID, "username")
password_input = browser.find_element(By.ID, "password")
login_button = browser.find_element(By.ID, "login-button")
username_input.send_keys("your_username")
password_input.send_keys("your_password")
login_button.click()
# Подтвердите успешный вход на страницу учетной записи пользователя
assert "user_account_page" in browser.current_url, "Ошибка входа"
# Заголовок страницы после подтверждения входа
user_account_title = browser.title
assert "User Account" in user_account_title, «Заголовок страницы не отображает информацию об учетной записи пользователя»
Этот тестовый файл содержит базовый тестовый пример. test_login
,который использовалpytest
изfixture browser
инициализировать и Закрыть браузер. Тестовый пример имитирует процесс входа в систему.,И используйте Selenium для поиска элементов и проверки ожидаемых результатов.
В этой статье в основном рассказывается, как использовать ChatGPT для написания сценариев автоматизированного тестирования. Когда мы позволяем ChatGPT помогать нам в написании сценариев автоматизированного тестирования, нам необходимо уточнить наши требования, например, нужно ли нам писать сценарии тестирования веб-автоматизации или автоматизации интерфейса. какой из них мы хотим использовать. Стек технологий, какую структуру использовать и т. д. — все должно быть ясно, 1 чтобы ChatGPT мог выводить сценарии, соответствующие нашим требованиям.