Проверка лендинга с Codex Computer Use: учебный стенд

Локальный стенд для проверки ссылок, сохранения формы и узких экранов. Исходная и исправленная страницы, шаблон отчёта и границы офлайн-проверки.

Проверка лендинга с Codex Computer Use: учебный стенд

Проверка лендинга должна завершаться воспроизводимыми находками, а не сообщением «всё выглядит хорошо». На учебной странице специально предусмотрены неработающая ссылка, ложное сообщение об успешной отправке и макет для проверки на узком экране. Есть исправленный вариант для повторения тех же действий.

Скачать QA-стенд. Он содержит Python-сервер, обе страницы, тесты, шаблон результатов и описание ожидаемых дефектов. Интерфейс англоязычный. Реальная браузерная проверка и снимки экранов в статье не заявляются.

Запустите локальную страницу

Нужен Python 3.9 или новее. В распакованном каталоге qa-kit выполните:

python3 -B server.py --port 8876

Сервер слушает только 127.0.0.1. Откройте напечатанный URL в разрешённом браузере. Если порт занят, выберите свободный и замените адреса во всём плане; это не способ обхода запрета доступа. Остановите сервер сочетанием Ctrl-C после упражнения.

/ содержит дефекты, /fixed — исправления, /submissions — локальные записи отправок формы. Используйте только вымышленные адреса с окончанием @example.test. Реальные контакты, покупки и внешние отправки не нужны.

Дайте задачу, а не ответы

Попросите Codex проверить навигацию, форму и макет при ширине 1440, 390 и 320 CSS-пикселей. Нужно сохранять доказательства, разделять ожидаемое и фактическое поведение и ничего не исправлять. Не передавайте исходник и ответы до первого прохода: отчёт должен описывать наблюдения.

Это всё равно учебная демонстрация, а не слепой сравнительный тест. Несколько намеренно внесённых ошибок не позволяют измерить долю найденных дефектов на реальных сайтах.

У ссылки должен быть правильный смысл

Откройте отдельно Working guide и Pricing, запишите конечный URL и заголовок, затем вернитесь. Ответ 404 — ошибка. Но и код 200 не помогает, если содержимое не соответствует обещанию ссылки. Исправленный Pricing должен вести к вымышленному объяснению цен, а не к любой существующей странице.

Три случая для формы

В отдельной вкладке прочитайте /submissions до каждого действия. После отправки обновите эту вкладку: старое содержимое нельзя считать новым результатом.

ВводОжидаемое поведение
Пустое полеПонятное сообщение о необходимости заполнить поле, без новой записи
not-an-emailОшибка формата, без новой записи
qa-run1@example.testПодтверждение и ровно одна новая запись с этим адресом

На исправленной странице используйте qa-run2@example.test, затем каждый раз новый адрес. Проверяйте число и содержание записей вместе. Успешный баннер не доказывает сохранение, а дубликат нужно отметить как ошибку.

Исходная страница намеренно показывает успех без записи. Это свойство исходника стенда, а не результат уже выполненного браузерного теста. В отчёте различайте ответ из методички и реальное наблюдение.

Проверка узкого экрана

На каждой ширине осмотрите карточки показателей, навигацию, поле и кнопку. Ищите выход за границы, скрытый текст и недоступные элементы. Сохраните снимок с фактическими размерами области просмотра.

Изменение окна настольного браузера — симуляция ширины. Она не проверяет физический телефон, сенсорное управление, его клавиатуру и производительность. После проверки верните временные настройки.

Оформите воспроизводимый отчёт

Для каждой находки нужны URL, окружение, точный ввод, шаги, ожидание, фактическое поведение и ссылка на доказательство. Принятие пустого значения, неверного формата и ложный успех могут происходить из одного обработчика; не выдавайте три симптома за три независимые причины.

После первого прохода сверяйтесь с ответами, учитывая пропуски и ложные срабатывания. Повторите проверки на /fixed с новыми адресами, затем попробуйте воспроизвести процедуру из новой задачи только по инструкции.

Что действительно проверено

На Python 3.9.6 и Node.js 24.13.0 прошли семь внутрипроцессных тестов обработчика и девять JavaScript-симуляций формы, в том числе после распаковки свежей копии:

python3 -B -m unittest discover -s . -p 'test_*.py' -v
node test_form.mjs

Python проверяет неверные длины и JSON, синтетические адреса, запись, маршруты и подстановку шаблона. JavaScript выполняет код с подставными document и fetch. Браузер не запускается, сетевых запросов нет.

Это не доказывает правильность вёрстки, реальную отправку или способность Codex найти дефекты. Снимки трёх ширин и браузерное сравнение до/после остаются непроверенными. Стенд не заменяет аудит доступности, безопасности, производительности и работы на разных устройствах.

Для программной проверки завершения см. офлайн-контроллер, для подключения браузера — разрешения Computer Use.

Часто задаваемые вопросы

Означают ли прошедшие тесты завершённую проверку в браузере?
Нет. Пройдены семь Python-тестов и девять JavaScript-симуляций. Реальная работа браузера, три ширины экрана и обнаружение дефектов не проверены.