Тестирование

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
foxdev_7:тестирование [06.11.2017 23:11]
127.0.0.1 внешнее изменение
foxdev_7:тестирование [20.05.2019 15:18] (текущий)
Строка 1: Строка 1:
-{{indexmenu_n>​55}}+{{indexmenu_n>​45}} 
 ==== Главная идея ==== ==== Главная идея ====
-Все функциональные тесты создаются в виде ​DiraaS.\\+ 
 +Все функциональные тесты создаются в виде ​DirAAP.\\
 Распространяются и обновляются,​ как git или как app соответствующей платформы.\\ Распространяются и обновляются,​ как git или как app соответствующей платформы.\\
 Тесты ставятся рядом с рабочим продуктом.\\ Тесты ставятся рядом с рабочим продуктом.\\
 Желательно,​ ставиться и обновляться той же схемой,​ что и основной продукт.\\ Желательно,​ ставиться и обновляться той же схемой,​ что и основной продукт.\\
 +Колво объектов в тестовой БД должно быть в 10 раз больше от реальных условий.\\
 +Обязательно проводим тесты ускоренного или сдвигаемого времени,​ для отлова ошибок перехода через 00 часов или 1 число месяца или 1 ое число года.\\
 +Тестовые виртуалки есть у каждого разработчика.\\
 +Есть тестовая вирталка для тестировании ветки testing где есть все коммиты всех разработчиков.\\
 +
  
 ==== TODO причесать. ==== ==== TODO причесать. ====
 +
 - тесты делятся на группы тестов (test_se_auto,​ test_api, test_cabinet и прочие)\\ - тесты делятся на группы тестов (test_se_auto,​ test_api, test_cabinet и прочие)\\
 - тесты деляется на быстрые (fast) и медленные (slow); рекомендуется соответствующие тесты располагать в подкаталогах <​группа_тестов>/​fast/​ и <​группа_тестов>/​slow/​\\ - тесты деляется на быстрые (fast) и медленные (slow); рекомендуется соответствующие тесты располагать в подкаталогах <​группа_тестов>/​fast/​ и <​группа_тестов>/​slow/​\\
Строка 17: Строка 25:
  
 Апп:\\ Апп:\\
-- тесты поставляются в аппе ​test\\ +- тесты поставляются в аппе ​/​app/​tests_$PROFILE\\ 
-- собирается и ставится с makedistro\\ +- собирается и ставится с makedistro ​и или updater\\ 
-- является directory-appне чрутом\\ +- является directory-app ​и одновременно ​чрутом(для селениум файрфокс и тп)\\ 
-- конфигурируются в /app/test/​cfg/​config\\ +- конфигурируются в /app/test_CRB-Billing/​cfg/​config\\ 
-- запускаются /app/test/service fast_test и /​app/​test/​service slow_test\\+- запускаются /app/test_CRB-Billing/service fast_test и /​app/​test/​service slow_test\\
 - в аппе содержатся тесты для всех продуктов,​ располагаются:​\\ - в аппе содержатся тесты для всех продуктов,​ располагаются:​\\
-/app/test/CRB-Billing/​test_group1/​fast/​\\ +/app/test_CRB-Billing/​test_group1/​fast/​\\ 
-/app/test/CRB-Billing/​test_group2/​fast/​\\ +/app/test_CRB-Billing/​test_group2/​fast/​\\ 
-/app/test/CRB-Reductor/​test_group1/​fast/​\\ +/app/test_CRB-Reductor/​test_group1/​fast/​\\ 
-/app/test/CRB-Reductor/​test_group1/​slow/​\\ +/app/test_CRB-Reductor/​test_group1/​slow/​\\ 
-/app/test/CRB-Reductor/​test_group2/​fast/​\\ +/app/test_CRB-Reductor/​test_group2/​fast/​\\ 
-- если для аппа нужно будет устанавливать приложения (jenkins, selenium), скрипт запуска тестов должен будет это делать сам, makedistro в апп приложения не устанавливает,​ в аппе только скрипты запуска тестов и сами тесты+-<​del> ​если для аппа нужно будет устанавливать приложения (jenkins, selenium), скрипт запуска тестов должен будет это делать сам, makedistro в апп приложения не устанавливает,​ в аппе только скрипты запуска тестов и сами тесты</​del>​ 
 +- весь енвайромент должен поставляться в чруте в готовом виде, на хост ничего не ставим
  
 Главный обходчик:​\\ Главный обходчик:​\\
-- запускается из крона\\+- запускается из крона ​и или руками\\
 - конфигурируется через config\\ - конфигурируется через config\\
 - для запуска тестовых групп использует jenkins (как сделано в makedistro)\\ - для запуска тестовых групп использует jenkins (как сделано в makedistro)\\
Строка 40: Строка 49:
 - на него настроена виртуалка с тестированием - на него настроена виртуалка с тестированием
  
-/app/test/service\\ +<code bash> 
-/app/test/CRB-Billing/se_test/.git/\\ +/app/tests_CRB-Reductor/service 
-/app/test/CRB-Billing/se_test/fast/\\ +/app/tests_CRB-Reductor/​src.list 
-/app/test/CRB-Billing/se_test/slow/\\ + 
-/app/test/CRB-Billing/se_test/slow_test.sh\\ +/app/tests_CRB-Reductor/tests_reductor/.git 
-/app/test/CRB-Billing/se_test/fast_test.sh+/app/tests_CRB-Reductor/tests_reductor/​fast_test 
 +/​app/​tests_CRB-Reductor/tests_reductor/fast/ 
 +/app/tests_CRB-Reductor/​tests_reductor/​slow_test 
 +/app/tests_CRB-Reductor/tests_reductor/slow/ 
 + 
 +/app/tests_CRB-Reductor/​tests_reductor_satellite/​.git 
 +/app/tests_CRB-Reductor/tests_reductor_satellite/slow_test 
 +/​app/​tests_CRB-Reductor/​tests_reductor_satellite/​slow/​ 
 + 
 +/​app/​tests_CRB-Reductor/​tests_bgp_blackhole/​.git 
 +/app/tests_CRB-Reductor/tests_bgp_blackhole/​fast/​ 
 +/​app/​tests_CRB-Reductor/tests_bgp_blackhole/fast_test 
 +/​app/​tests_CRB-Reductor/​tests_bgp_blackhole/​slow/​ 
 +/​app/​tests_CRB-Reductor/​tests_bgp_blackhole/​slow_test 
 +</​code>​ 
 + 
 +==== Дополнение1 ==== 
 +/​app/​tests_crb-billing5 тоесть имя профиля /​app/​tests_$PROFILE\\ 
 +внутри есть полный енвайромент-чрут для запуска firefox selenium и тд\\ 
 +тесты в виде каталогов с .git подкаталогом чтоб можно было сразу разрабатывать и править\\ 
 +/​app/​tests_crb-billing5 является и чрутом и не чрутом,​ чтоб можно было от корня запускать\\ 
 +Отдельный профайл tests_crb-billing5,​ в идеале он имеет туже версию что и продукт,​ и лежит в апдейтерАХ на мейкдитрах(в будущем на update5) как продукт,​ и ставится с апдейтера тулзой можно в стиле rsync.\\ 
 + 
 +==== TODO обновить эту статью по данным совещания ==== 
 +[[http://​wika.carbonsoft.ru/​проект_reductor:​тестирование:​инструкции:​autotests-and-ci|]] 
 + 
 +~~DISCUSSION~~ 
 + 
  
 +~~OWNERAPPROVE~~