2017-07-20 24 views
0

Jestを使用して私のエクスプレスアプリケーションからエンドポイントをテストしようとしています。私は速度を向上させるためにJestを試すためにMochaから移行しています。しかし、私のJestテストは終了しませんか?私は、だから私はこの失敗のために考えることができる唯一の事は、あなたがパッケージbabel-preset-envを欠落しているかもしれないということです...損失でJestでExpressJSエンドポイントをテストする

process.env.NODE_ENV = 'test'; 
const app = require('../../../index'); 
const request = require('supertest')(app); 

it('should serve the apple-app-site-association file /assetlinks.json GET', async() => { 
    const response = await request.get('/apple-app-site-association') 
    expect(response.statusCode).toBe(200); 
}); 

答えて

1

です。

は、いずれの場合においてもsupertestを使用するには、2つの他の方法がある:

it('should serve the apple-app-site-association file /assetlinks.json GET',() => { 
    return request.get('/apple-app-site-association').expect(200) 
}) 

又は

it('should serve the apple-app-site-association file /assetlinks.json GET',() => { 
    request.get('/apple-app-site-association').then(() => { 
     expect(response.statusCode).toBe(200); 
     done() 
    }) 
}) 

asyncは空想解決するだけでなく、より多くの要件を有するものです。あなたが問題を発見したら、私に知らせてください:)。

(私の答えのための参考:http://www.albertgao.xyz/2017/05/24/how-to-test-expressjs-with-jest-and-supertest/)残念ながら

+0

ません。まだ終了しません。問題は、私が考えるモンゴースへの接続を閉じることと関係がありますか? –

+0

なぜあなたは jest.mockで( 'マングース'、()=>({ themethodyouuse:jest.fn() }))ことを行うことができます?あなたはマングースの呼び出しをモックいけない のconstマングース=は '(マングースが必要です') – Kanekotic

関連する問題