我一直在使用 flutter_dotenv 来加载.env整个应用程序中保存的环境变量,到目前为止它运行良好。虽然我正在尝试编写测试,但我似乎无法从测试文件中访问这些。
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:flutter_test/flutter_test.dart';
void main() {
setUp(() async {
await DotEnv().load();
});
test('Incorrect password should be rejected', () {
var password = DotEnv().env['PASSWORD'];
// stuff
});
}
Run Code Online (Sandbox Code Playgroud)
运行测试结果:
Shell: [flutter_dotenv] Load failed: file not found
Shell: [flutter_dotenv] No env values found. Make sure you have called DotEnv.load()
Run Code Online (Sandbox Code Playgroud)
它似乎无法找到该.env文件。我什至.env在测试目录中制作了一个副本,但它也无法识别。
我尝试使用 Platform.environment 而不是 flutter_dotenv 来访问变量,但这也不起作用,返回 null。
抱歉,如果我在这里很傻,这是我第一次编写 Flutter 测试,但希望得到建议。
更新:
这是我的pubspec.yaml样子:
name: //name
description: //description
version: 1.0.0+3
environment:
sdk: ">=2.1.0 …Run Code Online (Sandbox Code Playgroud)