An asynchronous test checks code that finishes later (promises, requests, timers). The test must wait for the end, with async/await or by returning the promise; otherwise it ends too early and passes wrongly.
Example
test('charge', async () => {
const data = await charger();
assert.ok(data);
});