不论是 Email 客户端还是音乐应用,绝大多数 app 都使用到列表来展示内容。我们期望使用集成测试来验证列表中的内容,并需要一种方法去滚动列表来查找特定的项。
为了在集成测试中检验滚动列表,我们可以使用 flutter_driver
这个 package 中的 FlutterDriver
类:
在本章节,我们将学习如何在滚动列表中验证是否正在显示特定的 Widget,并讨论不同方法的优缺点。
本教程包含以下步骤:
1. 创建带有列表的 app
2. 测试 app
3. 编写列表滚动的测试用例
4. 运行测试
1. 创建带有列表的 app
在本章节,我们创建一个带有长列表的 app。为了能够在本章节中专注于测试,我们将使用在 文章中创建的 app。如果你不确定如何处理内容列表,请自行查看相关章节的介绍。
正如我们在 文章中做的那样,我们还将向集成测试内我们需要互动的 widget 添加 key。
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp(
items: List<String>.generate(10000, (i) => "Item $i"),
));
}
class MyApp extends StatelessWidget {
final List<String> items;
MyApp({Key key, @r