集成测试概念
了解 Flutter 中的集成测试。
单元测试(Unit tests)和组件测试(Widget tests)用于验证单个类、函数或组件。它们无法验证各个部分如何协同工作,也无法衡量应用在真实设备上运行时的性能。要执行这些任务,请使用集成测试。
集成测试用于验证完整应用的行为。这种测试也称为端到端(end-to-end)测试或 GUI 测试。
测试框架
#Flutter 中通常使用两个软件包来执行集成测试,它们分别是:
-
integration_test 软件包:这是 Flutter SDK 中包含的官方集成测试软件包。使用
integration_test编写的测试可以执行以下任务:在目标设备上运行、通过宿主机执行flutter test integration_test命令运行,以及使用flutter_testAPI。这使得编写集成测试类似于编写 组件测试。但是,integration_test无法与原生平台 UI 进行交互。 -
patrol 软件包:一个流行的第三方集成测试软件包,它支持
integration_test软件包中的许多功能,此外还可以与原生平台 UI(如权限对话框、通知或平台视图的内容)进行交互。
术语表
#- 宿主机 (host machine)
开发应用的系统,例如台式电脑。
- 目标设备 (target device)
-
运行 Flutter 应用的移动设备、浏览器或桌面应用程序。
如果您在 Web 浏览器或桌面应用程序中运行应用,则宿主机和目标设备是同一个系统。
入门
#要使用 integration_test,请将其添加为 Flutter 应用测试文件的依赖项。
要迁移使用 flutter_driver 的现有项目,请参阅 从 flutter_driver 迁移 指南。
要使用 patrol,请遵循 Patrol 入门指南。