Should we also take value of -j into account too? If -j 1 is used, then we should not do multi-threading here.
I don't think so, since part of the goal is to uncover threading bugs.
I don't think we should take -j in account. Even if we run test one at a time, it is important to test the multithreading code path