我试图编写颤振集成测试,并使用一个配置文件来运行它们,而不是为每个测试创建配置文件。有什么办法吗?
现在,我有login.dart和login_test.dart等等,对于每一个测试。我知道它的惯例是每个配置和测试文件必须有相同的名称,但这不是我所需要的,更可配置的东西是受欢迎的。提前谢谢。
这是我的配置文件(login.dart)
import 'package:flutter_driver/driver_extension.dart';
import 'package:seve/main.dart' as app;
void main() {
enableFlutterDriverExtension();
app.main();
}测试(login_test.dart)看起来像这样
import ...
FlutterDriver driver;
void main() {
setUpAll(() async {
driver = await FlutterDriver.connect();
});
tearDownAll(() async {
if (driver != null) {
driver.close();
}
});
test('T001loginAsDriverAndVerifyThatDriverIsLogedInTest', () async {
some_code...
});
});现在,我希望创建新的测试文件(例如login_warning.dart),并且能够通过调用单个配置文件(login.dart)来启动这两个测试。这可能吗?
发布于 2019-06-25 18:22:10
是的,使用相同的“配置”运行多个“测试”文件是可能的。
在流行行话中,您的配置文件是您的目标,您的测试文件是您的驱动程序。您的目标始终是login.dart,但是您有两个驱动程序login_test.dart和login_warning.dart。
使用flutter drive命令,您可以指定target和driver。
因此,为了运行这两个驱动程序,只需执行以下命令
flutter drive --target=test_driver/login.dart --driver=test_driver/login_test.dart
flutter drive --target=test_driver/login.dart --driver=test_driver/login_warning.dart这首先执行login_test.dart,然后执行login_warning.dart驱动程序。
发布于 2019-10-14 17:13:27
您总是可以启动一个主测试文件,例如
flutter drive --target=test_driver/app_test.dart然后调用你的测试组作为函数,就像-
void main() {
test1();
}
void test1() {
group('test 1', () {});}因此,使用一个命令可以执行main()中提到的所有情况
发布于 2020-12-30 04:38:28
与vzurd的回答一样,我最喜欢和最干净的是创建一个测试文件,并从内部调用所有主要方法:
import './first_test.dart' as first;
import './second_test.dart' as second;
void main() {
first.main();
second.main();
}然后只需在单个测试文件上运行驱动程序:
flutter drive --driver=test/integration/integration_test_driver.dart --target=test/integration/run_all_test.darthttps://stackoverflow.com/questions/56236606
复制相似问题