summaryrefslogtreecommitdiff
path: root/doc/ru_RU/tests.markdown
diff options
context:
space:
mode:
Diffstat (limited to 'doc/ru_RU/tests.markdown')
-rw-r--r--doc/ru_RU/tests.markdown262
1 files changed, 262 insertions, 0 deletions
diff --git a/doc/ru_RU/tests.markdown b/doc/ru_RU/tests.markdown
new file mode 100644
index 00000000..2373d030
--- /dev/null
+++ b/doc/ru_RU/tests.markdown
@@ -0,0 +1,262 @@
+Автоматизированные тесты
+========================
+
+
+
+[PHPUnit](https://phpunit.de/) используется для запуска автоматизированных тестов в Канборд.
+
+
+
+Вы можете запускать тесты для разных баз данных (Sqlite, Mysql and Postgresql), чтобы убедится, что результаты будут одинаковые.
+
+
+
+Требования[¶](#requirements "Ссылка на этот заголовок")
+-------------------------------------------------------
+
+
+
+- Компьютер Linux/Unix
+
+
+
+- PHP cli
+
+
+
+- Установленный PHPUnit
+
+
+
+- Mysql и Postgresql (опционально)
+
+
+
+Unit тесты[¶](#unit-tests "Ссылка на этот заголовок")
+-----------------------------------------------------
+
+
+
+### Тестирование с Sqlite[¶](#test-with-sqlite "Ссылка на этот заголовок")
+
+
+
+Sqlite тестирование использует базу данных в памяти, без использования записи на файловую систему.
+
+
+
+Конфигурационный файл PHPUnit - `tests/units.sqlite.xml`. Из директории Kanboard запустите команду `phpunit -c tests/units.sqlite.xml`.
+
+
+
+Пример:
+
+
+
+ phpunit -c tests/units.sqlite.xml
+
+
+
+ PHPUnit 5.0.0 by Sebastian Bergmann and contributors.
+
+
+
+ ............................................................... 63 / 649 ( 9%)
+
+ ............................................................... 126 / 649 ( 19%)
+
+ ............................................................... 189 / 649 ( 29%)
+
+ ............................................................... 252 / 649 ( 38%)
+
+ ............................................................... 315 / 649 ( 48%)
+
+ ............................................................... 378 / 649 ( 58%)
+
+ ............................................................... 441 / 649 ( 67%)
+
+ ............................................................... 504 / 649 ( 77%)
+
+ ............................................................... 567 / 649 ( 87%)
+
+ ............................................................... 630 / 649 ( 97%)
+
+ ................... 649 / 649 (100%)
+
+
+
+ Time: 1.22 minutes, Memory: 151.25Mb
+
+
+
+ OK (649 tests, 43595 assertions)
+
+
+
+### Тестирование с Mysql[¶](#test-with-mysql "Ссылка на этот заголовок")
+
+
+
+У вас должна быть локально установлена база данных Mysql или MariaDb.
+
+
+
+По умолчанию, используются следующие учетные данные:
+
+
+
+- Hostname: **localhost**
+
+- Username: **root**
+
+- Password: none
+
+- Database: **kanboard\_unit\_test**
+
+
+
+При каждом выполнении база данных удаляется и создается снова.
+
+
+
+Конфигурационный файл HPUnit - `tests/units.mysql.xml`. Из директории Kanboard запустите команду `phpunit -c tests/units.mysql.xml`.
+
+
+
+### Тестирование с Postgresql[¶](#test-with-postgresql "Ссылка на этот заголовок")
+
+
+
+У вас должен быть локально установлен Postgresql.
+
+
+
+По умолчанию, используются следующие учетные данные:
+
+
+
+- Hostname: **localhost**
+
+- Username: **postgres**
+
+- Password: none
+
+- Database: **kanboard\_unit\_test**
+
+
+
+Убедитесь, что пользователь `postgres` может создавать и удалять базу данных. База данных пересоздается при каждом выполнении теста.
+
+
+
+Конфигурационных файл PHPUnit - `tests/units.postgres.xml`. Из директории Kanboard, запустите команду `phpunit -c tests/units.postgres.xml`.
+
+
+
+Тесты интеграции[¶](#integration-tests "Ссылка на этот заголовок")
+------------------------------------------------------------------
+
+
+
+Фактически тестируются только вызовы API.
+
+
+
+Реальные HTTP calls выполняются с этими тестами. Поэтому, необходим локальный экземпляр Канборда, который слушает на `http://localhost:8000/`.
+
+
+
+Все данные будут удалены/изменены при тестировании. Более того скрипт будет сброшен и установлен новый ключ API.
+
+
+
+1. Запустите локольный экземпляр Канборда: `php -S 127.0.0.1:8000`
+
+
+
+2. Запустите тест в другом терминале
+
+
+
+Этот же метод используется для запуска тестов для разных баз данных:
+
+
+
+- Sqlite: `phpunit -c tests/integration.sqlite.xml`
+
+- Mysql: `phpunit -c tests/integration.mysql.xml`
+
+- Postgresql: `phpunit -c tests/integration.postgres.xml`
+
+
+
+Пример:
+
+
+
+ phpunit -c tests/integration.sqlite.xml
+
+
+
+ PHPUnit 5.0.0 by Sebastian Bergmann and contributors.
+
+
+
+ ............................................................... 63 / 135 ( 46%)
+
+ ............................................................... 126 / 135 ( 93%)
+
+ ......... 135 / 135 (100%)
+
+
+
+ Time: 1.18 minutes, Memory: 14.75Mb
+
+
+
+ OK (135 tests, 526 assertions)
+
+
+
+Непрерывная интеграция с Travis-CI[¶](#continuous-integration-with-travis-ci "Ссылка на этот заголовок")
+
+--------------------------------------------------------------------------------------------------------
+
+
+
+После каждого commit влитого в мой репозиторий, юнит тесты выполняются для 5 различных версий PHP:
+
+
+
+- PHP 7.0
+
+- PHP 5.6
+
+- PHP 5.5
+
+- PHP 5.4
+
+- PHP 5.3
+
+
+
+При тестировании каждой версии PHP используются 3 поддерживаемые базы данных: Sqlite, Mysql and Postgresql.
+
+
+
+Конфигурационный файл Travis - `.travis.yml` - находится в корневой директории Kanboard.
+
+
+
+
+
+
+
+
+
+
+
+
+
+[Русская документация Kanboard](http://kanboard.ru/doc/)
+