簡體   English   中英

超過 5000 毫秒的測試超時

[英]Exceeded timeout of 5000 ms for a test

即使我增加了超時值,我仍然會收到此錯誤。 我目前是 mocking 電子表格服務,我的模擬看起來像這樣:

const mockSpreadsheetService = {
  insertNewRow: async (doc, newRow) => {
    await doc.loadInfo();
    await doc.sheetsByIndex[0].addRow(newRow);
    return newRow;
  },
  readSpreadsheet: async (id) => {
    const doc = new GoogleSpreadsheet(id);
    let private_key = process.env.SERVICE_GOOGLE_PRIVATE_KEY;
    private_key = private_key.replace(new RegExp('\\\\n', 'g'), '\n');
    await doc.useServiceAccountAuth({
      private_key,
      client_email: process.env.SERVICE_GOOGLE_CLIENT_EMAIL,
    });
    await doc.loadInfo();
    return doc;
  }, 
};

readSpreadsheet 工作得很好,但是一旦我在 insertNewRow 中調用它,我就會不斷拋出這個錯誤。

我的測試目前看起來像這樣。

describe('insertNewRow', () => {
    it('adds a new row to a spreadsheet', async () => {
      const doc = await mockSpreadsheetService.readSpreadsheet(spreadsheetId)
      await mockSpreadsheetService.insertNewRow(doc, newRow)
      expect(newRow).toBeDefined();
    });
  });

我嘗試增加超時,但它仍然不斷發生,我似乎真的不明白問題出在哪里,因為我相信我在需要的地方擁有所有異步/等待。

嘗試添加到您的 package.json:

  "jest": {
    "testTimeout": 15000,
  }

這應該將您的測試超時增加到 15 秒

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM