小编Ale*_*rov的帖子

NodeJS 中的 Jest + supertest,async/await

我尝试用 Jest 测试我的 api。我想要更多的抽象,所以我创建了这个函数:

const tokensConfig = config.get('test.tokens');

function testIt(method = 'get', url = '/', statuses = [], body = {}) {
      const testNames = ['unauthorized', 'user', 'admin'];
      const tokens = [null, tokensConfig.user, tokensConfig.admin];
    
      for (let i = 0; i < testNames.length; i++) {
        test(testNames[i], async () => {
          const response = await request(app)
            [method](url)
            .set('Accept', 'application/json')
            .set('Authorization', tokens[i])
            .send(body);
          expect(response.statusCode).toBe(statuses[i]);
        });
      }
    }
Run Code Online (Sandbox Code Playgroud)

在 test.js 文件中,我运行:

const config  = require('config');
const request = require('supertest');
const testIt  = require('./testIt');
const …
Run Code Online (Sandbox Code Playgroud)

javascript node.js async-await jestjs

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

async-await ×1

javascript ×1

jestjs ×1

node.js ×1