我读过这个问题的答案question https://stackoverflow.com/questions/52463714/how-to-test-localized-widgets-in-flutter,但这并没有帮助我理解在我的情况下该怎么做,也许也是因为这个问题有点老了。所以,我再次问这个问题。
我使用骨架模板创建了一个新的 flutter 项目:
flutter create skeleton -t skeleton
我更改文件sample_item_details_view.dart
如下:
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(AppLocalizations.of(context)!.itemDetails),
),
body: Center(
child: Text(AppLocalizations.of(context)!.itemDetailsMoreInfo),
),
);
}
现在,我想为这个小部件编写一个小部件测试:
import 'package:skeleton/src/sample_feature/sample_item_details_view.dart';
void main() {
group('Sample item details', () {
testWidgets('should display appbar', (WidgetTester tester) async {
await tester.pumpWidget(const SampleItemDetailsView());
});
});
}
此操作失败并出现以下错误,因为AppLocalizations.of(context)
is NULL
The following _CastError was thrown building SampleItemDetailsView(dirty):
Null check operator used on a null value
为了测试我需要执行哪些步骤SampleItemDetailsView
?