Вы можете сделать это, ожидая прослушивания даже, завернув его в обещание и вызывая разрешение обещания в качестве обратного вызова для прослушивания сервера
const app = express();
let server;
await new Promise(resolve => server = app.listen(0, "127.0.0.1", resolve));
this.global.server = server;
Вы также можете добавить пользовательский обратный вызов, который будет просто вызовите средство разрешения обещаний в качестве третьего аргумента для app.listen()
, и он должен выполнить этот код, а затем вызвать решение, если вам нужна какая-либо диагностика.