I suggest you use a programming interface for this specific case. You can use the run method for the second time only if the first launch was successful.
Please see the following code:
const createTestCafe = require('testcafe);
let testcafe = null;
createTestCafe('localhost', 1337, 1338)
.then(tc => {
testcafe = tc;
const runner1 = testcafe.createRunner();
return runner1
.src(['test1'])
.browsers('chrome')
.run()
})
.then(() => {
const runner2 = testcafe.createRunner();
return runner2
.browsers('chrome')
.src(['test2'])
.run();
});
.catch(err => {
console.log(err);
testcafe.close();
})