Проверка лендинга с 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-симуляций. Реальная работа браузера, три ширины экрана и обнаружение дефектов не проверены.


