[flutter] 플러터에서의 http_mock_adapter를 활용한 데이터 송수신 테스트
플러터(Flutter) 앱을 개발할 때, 서버와의 데이터 송수신을 테스트하는 것은 중요한 작업입니다. 하지만 실제 서버와 통신하여 테스트하는 것은 번거로울 수 있습니다. 이 때 http_mock_adapter를 활용하면, 가짜 응답을 보내는 모의 서버를 만들어 테스트할 수 있습니다.
http_mock_adapter란?
http_mock_adapter는 플러터에서 HTTP 요청과 응답을 가상으로 처리하는 Flutter 패키지입니다. 이 패키지를 사용하면 실제 서버에 의존하지 않고도 API 요청과 응답을 테스트할 수 있습니다.
사용 방법
1. 패키지 추가
먼저, pubspec.yaml 파일에 http_mock_adapter
패키지를 추가해야 합니다.
dependencies:
http: ^0.13.0
http_mock_adapter: ^1.0.0
2. 테스트 코드 작성
다음으로, 테스트할 요청과 응답에 대한 코드를 작성해야 합니다. MockClient를 이용하여 요청과 응답을 가상으로 처리할 수 있습니다.
import 'package:flutter_test/flutter_test.dart';
import 'package:http/http.dart' as http;
import 'package:http_mock_adapter/http_mock_adapter.dart';
void main() {
test('테스트 API 호출 테스트', () async {
// 가짜 응답 생성
final adapter = MockAdapter();
// 응답 데이터 설정
final responseBody = {'message': 'Hello, World!'};
// MockClient 생성
final client = MockClient();
// adapter와 client 연결
adapter.setMockClient(client);
// MockClient로 API 호출
final response = await client.get(Uri.parse('https://api.example.com/test'));
// 응답 확인
expect(response.statusCode, 200);
expect(response.body, jsonEncode(responseBody));
// MockClient 사용 종료
client.close();
});
}
3. 테스트 실행
이제, 작성한 테스트 코드를 실행하여 데이터 송수신을 테스트할 수 있습니다. 테스트가 성공적으로 완료되면, 가짜 응답 데이터를 정상적으로 수신하는 것을 확인할 수 있습니다.
요약
플러터에서 http_mock_adapter를 활용하여 데이터 송수신을 테스트하는 방법을 알아보았습니다. http_mock_adapter를 사용하면 실제 서버에 의존하지 않고도 가짜 응답 데이터를 통해 테스트할 수 있습니다. 이를 통해 효율적인 앱 개발을 진행할 수 있습니다.
참고 자료
- Flutter http_mock_adapter Github: https://github.com/creativemaybeno/http-mock-adapter
- Flutter Official Documentation: https://flutter.dev/