Конфигурация¶
PrimaryConfig¶
- Базовая конфигурация представлена индексируемым интерфейсом
PrimaryConfig. - Класс реализации интерфейса
PrimaryConfigбудет автоматически подгружен, создан экземпляр и использован для конфигурации по умолчанию (получить:Buggy.getPrimaryConfig()). - В случае наличия несколькоих классов реализации интерфейса
PrimaryConfig, класс требуемой конфигурации задаётся явно -Buggy.setPrimaryConfigClass()(в случае многомодульностьи тестового проекта). - Класс реализации интерфейса
PrimaryConfigможет быть имплементирован от множества конфигурационных интерфейсов, в том числе и из разных проектов. - Значения парамтеров „по умолчанию“ переназначаются в классе реализации. Пример
org.touchbit.buggy.example.min.config.Config:
public class Config implements PrimaryConfig {
public Config() {
setPrintLogFile(true);
}
}
SecondaryConfig¶
- Дополнительная конфигурация (команды) представлена индексируемым интерфейсом
SecondaryConfig. - Любой класс реализации интерфейса
SecondaryConfigбудет автоматически подгружен и создан экземпляр (получить список:Buggy.getSecondaryConfigs()). - Класс реализации интерфейса
SecondaryConfigможет быть имплементирован от множества конфигурационных интерфейсов, в том числе и из разных проектов. - Для класса реализации интерфейса
SecondaryConfigобязательно наличие аннотацииcom.beust.jcommander.Parametersс объявленнымcommandNames. - Пример:
org.touchbit.buggy.example.min.config.MinExampleSecondaryConfig
Параметры запуска¶
| Keys | Default | Description | |
|---|---|---|---|
| –help | -? | false | Вывести информацию с параметрами запуска. |
| –all | false | При запуске тестов вывести в лог все параметры конфигурации и их значения. | |
| –check | false | Проверить конфигурацию на корректность без запуска тестов. | |
| –version | -v | false | Вывести версию исполяемого jar. |
| –force | -f | false | Запуск всех тестов без исключения. |
| –print-suite | false | Вывести информацию о тестовом сьюте. | |
| –print-cause | false | Вывести причину падения/исключения теста. | |
| –print-log | false | Вывести в лог путь к файлу выполненного теста. | |
| –log | logs | Относительный или абсолютный путь к директории ведения логов. | |
| –status | null | Статус с которым следует принудительно завешить прогон тестов. | |
| –threads | 50 | Количество потоков для исполняемых тестовых методов. | |
| –services | -s | Runtime | Список доступных для тестирования сервисов. |
| –interface | -i | Runtime | Список доступных для тестирования интерфейсов. |
| –type | -t | INTEGRATION | Тип проводимого тестирования. |
| –artifacts-url | null | Url к логам тестов (CI) | |
Примеры¶
Вывод параметров запуска¶
$ java -jar buggy-min-example/target/Buggy.jar -?
===============================================
Usage: Buggy [options] [command] [command options]
Options:
--artifacts-url
The storage address for the builds (artifacts).
--check
Check buggy configuration without test run.
-f, --force
Running all tests, including those that fall.
-?, --help
Print usage.
-i, --interface
List of tested interfaces in the format: NAME,NAME,NAME.
Default: [API]
--print-cause
Print the cause of a fail or skip test in the console log.
--print-log
Print the test log file path in the console log
--print-suite
Display information on the Suite in the console log.
-s, --services
List of tested services in the format: NAME,NAME,NAME.
Default: [GITLAB]
--threads
The number of threads to run the test methods.
Default: 50
-t, --type
Type of tests to run.
Default: INTEGRATION
Possible Values: [SMOKE, MODULE, INTEGRATION, SYSTEM]
-v, --version
Print program version
Commands:
network
Usage: network [options]
Options:
--connection-timeout
Connection timeout for request
Default: 10
--host
Tested host
Default: http://example.com
--read-timeout
Read timeout for response
Default: 10
--write-timeout
Write timeout for request
Default: 10
Запуск тестов c флагами¶