Is there any way to run tests in parallel? It seems like some of them might overwrite the same directory (in any case I couldn't get make -j to work).
Partitioning would be a nastier alternative (make 3 copies of the shadow dir, run make make unittests, make scripttests, make $(TERM_TESTS) in each; though I don't know how to resolve that makefile variable from a script). Plus I'm not sure the three separate dependencies take equally long.