Root settings
Settings written as plain scalars at the root of the project file.
On this page
Root settings are single values written at the root of the project file — no indentation before the key, no list under it.
Threads: 3
Threads
How many tests CAT evaluates at the same time.
- Accepts
- A positive integer, or a string that resolves to one after environment variable expansion, such as
"%CAT_THREADS%". - Default
1. The key may be omitted, andThreads: 1has exactly the same effect as omitting it.- Synonyms
Threads.- Rejected
0, a negative number, or a value that is not an integer. Each is reported as an error before any test starts.
What it does
CAT builds one queue holding all tests of the run, then starts the requested number of threads. Each thread takes the next test off the queue — no other thread sees that test afterwards — evaluates it, and comes back for the next one. A thread ends when it finds the queue empty. Tests are therefore distributed by availability, not split up front, and no ordering between tests is guaranteed.
Once every thread has finished, the results from all of them are assembled and the outputs are written. That happens on a single thread.
At Debug logging level the log records which thread executed which test and when each test started.