test: Improve run-tests scheduling of multi-provision tests
test: Improve run-tests scheduling of multi-provision tests

Due to sorting our tests, the expensive ones like TestMultiMachine tend
to run in parallel, which causes the number of parallel VMs to be up to
three times as high as `$TEST_JOBS`. This leads to overly long VM boot
times and timeouts [1].

Improve this by scheduling fewer of them in parallel. Introduce a notion
of "cost" to a Test object and measure it in terms of how may VMs it
will boot -- each additional VM costs an extra ½ TEST_JOBS.

Schedule tests until their total cost (instead of just their number)
hits `$TEST_JOBS`.

[1] https://github.com/cockpit-project/cockpituous/issues/506

martinpitt/cockpit,cockpit-project/cockpit,martinpitt/cockpit,cockpit-project/cockpit,martinpitt/cockpit,martinpitt/cockpit,cockpit-project/cockpit,cockpit-project/cockpit,martinpitt/cockpit,cockpit-project/cockpit