티스토리 뷰

https://blog.logrocket.com/end-to-end-testing-for-rust-web-services/

  • warp, wiremock, postgresql
    • r뭐시기 async 커넥션 풀을 사용
    • async-trait 사용 (아직 오피셜이 없으므로 crate)
    • wiremock: 서드파티 HTTP 서비스 테스팅에 사용
      • 조건에 따른 응답을 반환하는 http 테스팅용 서버를 정의하고 실제로 띄울 수 있는 거인 모양
  • mock 테스팅과 e2e testing 두 가지를 다룸
  • mock: DB, 외부 HTTP는 전부 trait으로 만들어 사용. async 이므로 async-trait 사용
    • HttpService 를 trait 으로 만들고 wiremock 으로 구현
    • 저번에 읽다만 z2p 는 저자가 mock 방법론을 안 좋아해서 일부러 뺀 거 같음.
    • warp 는 모든 게 필터라던데 테스트 하네스(?) 에 집어넣는 것조차도 warp에서 제공해주는 테스트 도구 (테스트 하네스) 함수만 들고와서 사용
      • warp의 테스트 도구 <- 앱의 라우팅 핸들러 <-(인젝션)- [외부 http 서비스, DB]
      • actix 는 미들웨어는 configure 부분이 아닌데 미들웨어까지 mock 테스팅이 가능한가...? (저는 알못입니다)
  • e2e는 단일 실행 테스팅, hyper 클라이언트
    • e2e: init_real_server() 에서 init_db() 를 매번 콜해서 초기화 진행
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함