Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
инвентаризация:dev:test [2025/05/09 07:21]
admin создано
инвентаризация:dev:test [2025/05/25 15:16] (текущий)
admin [Тест страниц]
Строка 1: Строка 1:
 {{tag>dev test Инвентаризация}} {{tag>dev test Инвентаризация}}
-====== Инвентаризация: Dev: Test ====== +====== Инвентаризация: DEV: Test ====== 
-==== Подготовка тестов ==== +==== БД ==== 
-Установка codeception и модулей +Тесты написаны с учетом, что имеется локальная (localhost) MySQL БД, которая доступна по root без пароля (параметры хранятся в test-console.php) 
-<code bash> +Доступ:<code php>$this->rootDb Yii::$app->get('db_root');</code>
-php composer.phar require --dev codeception/codeception --ignore-platform-req=ext-http +
-php composer.phar require --dev codeception/module-yii2 --ignore-platform-req=ext-http +
-php composer.phar require --dev codeception/module-webdriver --ignore-platform-req=ext-http +
-</code>+
  
-Подготовка acceptance suite +==== Тест миграций ==== 
-<code bash> +  * Создается приложение с отдельным конфигом test-migrations 
-vendor/bin/codecept generate:suite acceptance +  * Через root_db создаем временную пустую БД для миграций 
-</code>+  * Прогоняем все миграции 
 +  * Через root_db удаляем временную БД для миграций
  
 +==== Тест страниц ====
 +В рамках основного модуля (не REST) нужно проверить все веб маршруты
 +=== CRUD ===
 +  * Перед стартом всех тестов нужно восстанавливать тестовую БД из фикстур
 +  * Нужно понять какие атрибуты нужно передавать в форму (ну это все атрибуты из таблицы + junction_tables_ids, которые можно вытащить из Links).
 +  * Читаем атрибуты 2х моделей
 +  * Операции выполняем в порядке D-U-C-R
 +  * Удаляем модель 2
 +  * Назначаем модели 1 атрибуты модели 2
 +  * Создаем модель 1 (предварительно валидация, потом создание)
 +  * Читаем ее
  • инвентаризация/dev/test.1746775284.txt.gz
  • Последнее изменение: 2025/05/09 07:21
  • admin