Error in Test Api with jest and supertest

I keep getting the error when running my test case by jest :(( ,the idea is to get the token and send it with post testcase. At first i thougt that i did not get the token, but i run node exportToken and it work well. Here is my code. (Ps: For security reason i will not fill my firebaseConfig.)

my exportToken.js

const puppeteer = require('puppeteer');

const axios = require('axios');

const generateToken = async () => {
const browser = await puppeteer.launch({
    headless: true
});

const page = await browser.newPage();

await page.goto('https://example.com');

await page.addScriptTag({ path: 'firebase.js' });

const idToken = await page.evaluate(async () => {
    return await new Promise(resolve => {
        document.body.innerHTML = '<div id="recaptcha-container"></div>';
        const firebaseConfig = {
            apiKey: "",
            authDomain: "",
            projectId: "",
            storageBucket: "",
            messagingSenderId: "",
            appId: "",
            measurementId: ""
        };
        firebase.initializeApp(firebaseConfig);
        firebase.auth().languageCode = "vi";
        firebase.auth().settings.appVerificationDisabledForTesting = true;

        var phoneNumber = "+84975346330";
        var testVerificationCode = "112233";

        // This will render a fake reCAPTCHA as appVerificationDisabledForTesting is true.
        // This will resolve after rendering without app verification.
        var appVerifier = new firebase.auth.RecaptchaVerifier('recaptcha-container');
        // signInWithPhoneNumber will call appVerifier.verify() which will resolve with a fake
        // reCAPTCHA response.

        firebase.auth().signInWithPhoneNumber(phoneNumber, appVerifier)
            .then(function (confirmationResult) {
                console.log(confirmationResult)
                confirmationResult.confirm(testVerificationCode).then((result) => {
                    // User signed in successfully.
                    const user = result.user;
                    user.getIdToken().then((idToken) => {
                        console.log(idToken)
                        resolve(idToken)
                    });
                }).catch((error) => {
                    resolve(error)
                });
            }).catch(function (error) {
                resolve(error)
            });
    })
})

await browser.close();

return idToken;
};

module.exports = generateToken();

my test.js

const request = require('supertest');

const axios = require('axios');

const generateToken = require('./exportToken');

const server = request.agent("http://localhost:9000");

describe("Unittest", function () {

it("Post /sessionLogin", async () => {

    const MyToken = await generateToken;

    server
        .post("/sessionLogin")
        .expect(200) // THis is HTTP response
        .send({ idToken: MyToken })

});
})  

I run node to get the Token and it work, and then use jest to test case but it keep showing this error.

C:UsersAdminDesktopDynocredit_vn_backend-test> npm test
> jest

FAIL  test/test.js (5.086 s)
Unittest
× Post /sessionLogin (3710 ms)

● Unittest › Post /sessionLogin

ENOENT: no such file or directory, open 'C:UsersAdminDesktopDynocredit_vn_backend- 
testfirebase.js'



Test Suites: 1 failed, 1 total
Tests:       1 failed, 1 total
Snapshots:   0 total
Time:        5.242 s
Ran all test suites.
Jest did not exit one second after the test run has completed.

This usually means that there are asynchronous operations that weren't stopped in your tests. 
Consider running Jest with `--detectOpenHandles` to troubleshoot this issue.