mirror of
https://github.com/volcengine/verl.git
synced 2025-10-20 21:53:50 +08:00
1.7 KiB
1.7 KiB
Tests layout
Each folder under tests/ corresponds to a test category for a sub-namespace in verl. For instance:
tests/trainer
for testing functionality related toverl/trainer
tests/models
for testing functionality related toverl/models
- ...
There are a few folders with special_
prefix, created for special purposes:
special_distributed
: unit tests that must run with multiple GPUsspecial_e2e
: end-to-end tests with training/generation scriptsspecial_npu
: tests for NPUsspecial_sanity
: a suite of quick sanity testsspecial_standalone
: a set of test that are designed to run in dedicated environments
Accelerators for tests
- By default tests are run with GPU available, except for the ones under
special_npu
, and any test script whose name ends withon_cpu.py
. - For test scripts with
on_cpu.py
name suffix would be tested on CPU resources in linux environment.
Workflow layout
All CI tests are configured by yaml files in .github/workflows/
. Here's an overview of all test configs:
- A list of always triggered CPU sanity tests:
check-pr-title.yml
,secrets_scan.yml
,check-pr-title,yml
,pre-commit.yml
,doc.yml
- Some heavy multi-GPU unit tests, such as
model.yml
,vllm.yml
,sgl.yml
- End-to-end tests:
e2e_*.yml
- Unit tests
cpu_unit_tests.yml
, run pytest on all scripts with file name patterntests/**/test_*_on_cpu.py
gpu_unit_tests.yml
, run pytest on all scripts with file without theon_cpu.py
suffix.- Since cpu/gpu unit tests by default runs all tests under
tests
, please make sure tests are manually excluded in them when- new workflow yaml is added to
.github/workflows
- new tests are added to workflow mentioned in 2.
- new workflow yaml is added to