2020-07-01 02:28:31 +00:00
|
|
|
|
|
|
|
### Локальный запуск тесткейсов
|
|
|
|
1. Устаносить зависимости (только для первого запуска):
|
|
|
|
- pip3 install robotframework
|
|
|
|
- pip3 install neocore
|
|
|
|
- pip3 install requests
|
|
|
|
|
|
|
|
(pip3 заменить на соответсвующий менеджер пакетов python в системе).
|
|
|
|
|
|
|
|
При этом должен быть запущен dev-env с тестируемым окружением.
|
|
|
|
|
|
|
|
2. Выпольнить `make run`
|
|
|
|
|
|
|
|
3. Логи будут доступны в папке artifacts/ после завершения тестов с любым из статусов.
|
|
|
|
|
2020-08-13 22:09:00 +00:00
|
|
|
### Запуск произвольного тесткейса
|
|
|
|
Для запуска произвольного тесткейса нужно выполнить команду:
|
|
|
|
`robot --timestampoutputs --outputdir artifacts/ robot/testsuites/integration/<testsuite name>.robot `
|
|
|
|
|
|
|
|
Для запуска доступны следущие сценарии:
|
|
|
|
* acl_basic.robot - базовый ACL
|
|
|
|
* acl_extended.robot - extended ACL
|
|
|
|
* object_complex.robot - операции над простым объектом
|
|
|
|
* object_simple.robot - операции над большим объектом
|
|
|
|
|
2020-07-01 02:28:31 +00:00
|
|
|
|
|
|
|
### Запуск тесткейсов в докере
|
|
|
|
1. Задать переменные окружения для работы с dev-env:
|
|
|
|
```
|
|
|
|
export REG_USR=<registry_user>
|
|
|
|
export REG_PWD=<registry_pass>
|
|
|
|
export JF_TOKEN=<JF_token>
|
|
|
|
```
|
|
|
|
|
|
|
|
2. Выполнить `make build`
|
|
|
|
|
|
|
|
3. Выполнить `make run_docker`
|
|
|
|
|
|
|
|
4. Логи будут доступны в папке artifacts/ после завершения тестов с любым из статусов.
|
|
|
|
|
|
|
|
### Запуск тесткейсов в докере с произвольными коммитами
|
|
|
|
|
|
|
|
На данный момент доступны произовльные коммиты для NeoFS Node и NeoFS CLI.
|
|
|
|
Для этого достаточно задать переменные окружения перед запуском `make build`.
|
|
|
|
```
|
|
|
|
export BUILD_NEOFS_NODE=<commit or branch>
|
|
|
|
export BUILD_CLI=<commit or branch>
|
|
|
|
```
|
|
|
|
|
|
|
|
## Сборка образа с тестами
|
2020-05-20 12:26:13 +00:00
|
|
|
|
|
|
|
Чтобы тесты из этого репозитория были доступны к запуску из Drone CI,
|
|
|
|
они должны быть упакованы в docker-имадж. Это делается в рамках CI,
|
|
|
|
сконфигурированного в этом репозитории. Вся сборка "тестового образа"
|
|
|
|
описывается в файлах `Dockerfile` и `.drone.yml` и осуществляется на
|
|
|
|
каждый пуш в master.
|
|
|
|
|
|
|
|
Тестовый образ имеет единственную версию -- `latest`. Ради экономии
|
|
|
|
хранилища на машине-сборщике перед сборкой все ранее собранные образы
|
|
|
|
удаляются.
|
|
|
|
|
|
|
|
#### Локальная сборка
|
|
|
|
Чтобы локально собрать образ, нужно, стоя в корне репо, выполнить
|
|
|
|
команду:
|
|
|
|
```
|
|
|
|
drone exec --trusted --secret-file=secrets.txt --volume /var/run/docker.sock
|
|
|
|
```
|
|
|
|
В результате будет прогнан полный пайплайн, за исключением пуша образа в
|
|
|
|
docker registry. Чтобы запушить образ, нужно указать пароль к реджистри в
|
|
|
|
файле `secrets.txt`.
|
2020-07-01 02:28:31 +00:00
|
|
|
|
|
|
|
|