2016-08-05 1 views
1

나는 (재스민 사용) 농담 내 setupteardown 방법에서설정 데이터베이스 - 재스민과의 통합 테스트/농담

describe('DB User', async() => { 
    beforeEach(setup) 
    afterEach(teardown) 
}) 

를 사용하여 통합 테스트의 무리를 가지고, 나는 + 데이터베이스를 지우고에서 분리 연결하고 그것 각각.

다른 테스트가 실행되는 동안 db가 지워질 수 있으므로 현재 내 문제는 비동기로 테스트하고 있습니다. 이 문제를 해결하기위한 권장 방법은 무엇입니까?

많은 직접적인 쿼리를 수행하고 있기 때문에 데이터베이스를 조롱 할 수 없습니다.

답변

1

방금 ​​Objection.js (자바 스크립트 ORM)를 체크 아웃했습니다. 통합 테스트에서 기본적으로 하나의 데이터베이스 세션을 만들고 유지하며 테스트를 동 기적으로 실행합니다.

Objection Integration Test

기본적으로 의사에 : 더 나은 답변이있을 경우

var session = initialize() 

describe(knexConfig.client, function() { 
    before(function() { 
    return session.clearDb(); 
    }); 

    after(function() { 
    // destroy db connection 
    return session.destroy(); 
    }); 

    // individual tests 
    require('./test')(session) 
}); 

기다립니다

관련 문제