https://github.com/osll/middleware_testing
https://github.com/osll/middleware_testing
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/osll/middleware_testing
- Owner: OSLL
- Created: 2019-10-31T09:29:33.000Z (over 6 years ago)
- Default Branch: develop
- Last Pushed: 2021-06-03T13:21:48.000Z (almost 5 years ago)
- Last Synced: 2025-03-29T17:41:26.254Z (about 1 year ago)
- Language: C++
- Size: 43.5 MB
- Stars: 3
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Middleware testing
### О проекте
Проект предназначен для тестирования существующих middleware фреймворков.
Для удобств тестирования был создан тестовый скрипт, который автоматизированно производит тестирование выбранных фреймворков согласно тестовым сценариям и конфигурационным файлам. Файлы тестового скрипта расположены в директории `testing_tool`.
Также для удобств написания узлов фреймворков для тестирования был создан интерфейс на языке C++. Он включает в себя ожидаемое поведение узлов, разбор параметров, установку приоритета процесса, сохранение результатов в файл. Файлы интерфейса расположены в директории `interface`.
### Зависимости
Для запуска тестов необходим python 3 версии >= 3.6. Установить можно с помощью команды:
`sudo apt-get install python3.6`
Далее необходимо установить python модули, используемые в тестовом скрипте. Для начала надо установить утилиту pip:
`sudo apt-get install pip3`
Далее устанавливаем с помощью pip модули:
`sudo pip3 install numpy matplotlib py-cpuinfo psutil`
Для сборки узлов, использующих интерфейс на C++, необходимо установить библиотеки argparse и nlohmann/json. Установка argparse:
```
git clone https://github.com/p-ranav/argparse.git
cd argparse
cmake .
make install
```
Установка nlohmann/json:
```
git clone https://github.com/nlohmann/json.git
mkdir json/build
cd build
cmake ..
make
make install
```
### Запуск тестов
Переходим в директорию `testing_tool`. В 13 и 14 строчки между квадратных скобок добавляем в кавычках пути к исполняемым файлам узлов тестируемых фреймворков. Например:
```
pubs = ["../FastRTPS/src/build/FastRTPSTest "]
subs = ["../FastRTPS/src/build/FastRTPSTest "]
```
Необходимо сгенерировать конфигурационные файлы командой:
`python3 generate_configs.py`
Запуск тестов производится следующей командой:
`sudo python3 test.py`
Для построения графиков по полученным данным необходимо запустить скрипт plotting.py:
`python3 plotting.py`