Direct and remote backends for vehicle integration tests
Project description
Vehicle Automation
vehicle-automation is a standalone test library for CTS/SSTS integration
tests. It provides one VehicleSession API with two backends:
direct: interfaces attached to the test workstation.remote: the existingvector_autoHTTP/WebSocket bench server.
The library keeps the legacy action-result shape:
{"status": bool, "mode": "Pass|Emulated|Skipped", "comment": str}.
Quick start
pip install -e ".[can,mqtt,ssh,remote,test]"
pytest --vehicle-profile profiles/sgw-direct.yaml --vehicle-backend direct
Profiles are non-secret. Refer to certificates and private keys through
environment variables such as ${VEHICLE_MQTT_CA} and ${VEHICLE_SSH_KEY}.
The package contains no bench credentials, private keys, or production DBC/LDF matrices. Profiles use absolute or project-relative asset paths so the source of a matrix is explicit and versioned by the consuming project.
Project environment preparation (win)
1. Create "venv"
python -m venv .venv
2. Activate "venv"
A - if policies are available:
.\.venv\Scripts\Activate.ps1
B - if policies are restricted:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\.venv\Scripts\Activate.ps1
C - for modern CMD env. mode:
.\.venv\Scripts\activate.bat
3. Check the env(.venv) is up&running
python -c "import sys; print(sys.executable)"
4. UPD pip & set up depenencies
python -m pip install --upgrade pip
pip install -e ".[test]"
Hardware test suites
Hardware tests are intentionally excluded from normal CI. They require an
explicit profile and VEHICLE_HARDWARE_ENABLED=1.
# Linux SocketCAN PC + TBOX xwssc capture
$env:VEHICLE_HARDWARE_ENABLED = "1"
pytest tests/hardware/test_mcu_degradation.py -m hardware `
--vehicle-profile profiles/mcu-degradation-direct.yaml --vehicle-backend direct -s
# ART1 remote bench: CAN UDS VIN read/write load
$env:VEHICLE_HARDWARE_ENABLED = "1"
$env:VEHICLE_UDS_LOAD_ITERATIONS = "300"
pytest tests/hardware/test_sgw_vin_uds_load.py -m "hardware and remote_bench" `
--vehicle-profile profiles/art1-sgw-remote.yaml --vehicle-backend remote -s
Use copies of the example profiles (*.example.yaml) and set all referenced
environment variables. The UDS test is CAN UDS despite the legacy
uds_doip_crash_tests folder name; security-key processing remains on the
remote vector_auto server.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vehicle_automation-0.1.0.tar.gz.
File metadata
- Download URL: vehicle_automation-0.1.0.tar.gz
- Upload date:
- Size: 21.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7459fa0c0118d8609b1eeb2dc40c049000670047a704409469e1412d1f8af722
|
|
| MD5 |
39d56226e3d8a93a4b97f60817299e4a
|
|
| BLAKE2b-256 |
47ee16388e47cad7bb57ecaaf5991a27bf35dac29f781c4f5901a6aeee5759b6
|
File details
Details for the file vehicle_automation-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vehicle_automation-0.1.0-py3-none-any.whl
- Upload date:
- Size: 25.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a6220ed4a879ca5ca0aa7afef8d8478939153e4061b5e754c135da05140bf92
|
|
| MD5 |
50dc5c7193fdf00960674f184e82dd52
|
|
| BLAKE2b-256 |
78386ee413842aff9c044cdb0ee90ef571697f1fa26405e9128b5928d40c00bd
|