Patrol CLI는 여러 플랫폼에서 엔드투엔드 테스팅을 간소화하기 위해 설계된 Flutter 네이티브 UI 테스트 프레임워크인 Patrol용 명령줄 도구입니다. 개발자들은 터미널에서 UI 테스트를 직접 실행하고 관리하며 디버깅할 수 있으며, Android, iOS, macOS, Windows 및 Linux를 지원합니다. 이 도구는 Flutter 프로젝트와 원활하게 통합되어 빠른 테스트 실행과 상세한 보고서를 제공합니다. Patrol CLI를 사용하면 팀은 테스트 워크플로우를 자동화하고 다양한 기기 및 운영 체제에서 일관된 앱 동작을 보장할 수 있습니다.
사용 사례
CI/CD 파이프라인에서 UI 테스트 실행
로컬에서 테스트 실패 디버깅
다양한 플랫폼 간 테스트 실행 자동화
기존 Flutter 테스트 스위트와의 통합
크로스 플랫폼 회귀 테스트 수행
주요 기능
크로스 플랫폼 테스트 실행
빠르고 신뢰할 수 있는 테스트 실행
세부적인 테스트 보고서
무결점 플러터 통합
자동화를 위한 명령줄 인터페이스
적합한 대상
UI 테스트에 집중하는 플러터 개발자
모바일 앱을 위한 CI/CD를 사용하는 팀
테스트 자동화 엔지니어
모바일 품질 보증 전문가
다중 플랫폼 커버리지가 필요한 프로젝트
고려 사항
Patrol 프레임워크 설정이 필요합니다
Flutter 애플리케이션에 한정
복잡한 테스트 시나리오를 위해 추가 구성이 필요할 수 있습니다
이미 Patrol을 채택한 프로젝트에 가장 적합
플랫폼별 종속성이 적용될 수 있습니다
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
Patrol
A powerful, multiplatform E2E UI testing framework for Flutter apps that overcomes the limitations of integration_test by handling native interactions. Developed by LeanCode since 2022, battle-tested and shaped by production-grade experience.
Patrol is an open-source framework created and maintained by LeanCode.
However, if your company wants to scale fast and accelerate Patrol’s
adoption, we offer a set of value-added services on top of the core framework.
[!NOTE]
Patrol 4.7.0 adds Swift Package Manager support for iOS and macOS!
If you migrate your project to SPM, a few small setup changes are needed — see the iOS setup guide for details.
Patrol custom finders
Flutter's finders are powerful, but not very intuitive to use.
We took them and made something awesome.
Thanks to Patrol's custom finders, you'll take your tests from this:
Flutter's default integration_test package can't interact with the OS your
Flutter app is running on. This makes it impossible to test many critical
business features, such as:
granting runtime permissions
signing into the app which through WebView or Google Services
The CLI is needed to enable Patrol's native automation feature in integration
tests. It also makes development of integration tests much faster thanks to [Hot
Restart].
To run widget tests, you can continue to use flutter test.
See .github/WORKFLOWS.md for detailed documentation about all GitHub Actions workflows, including test schedules, Flutter versions, and deployment pipelines.