Flutter 初始專案單元測試解讀
解讀全在程式碼的註釋裡,請慢用 ?
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:flutter_app4/main.dart';
void main() {
testWidgets('Counter increments smoke test', (WidgetTester tester) async {
// 載入 MyApp 類
await tester.pumpWidget(MyApp());
// findsOneWidget 表示找到一個文字為「0」的 Widget
expect(find.text('0'), findsOneWidget);
// findsOneWidget 表示沒有文字為「1」找到 Widget
expect(find.text('1'), findsNothing);
// 模擬按了一下「+」號圖片
await tester.tap(find.byIcon(Icons.add));
IconData icon = Icons.add; // 圖片返回的是 IconData 型別
Finder addIcon = find.byIcon(icon); // find.xxx 返回的是 Finder 型別
await tester.tap(addIcon); // 再模擬按了一下「+」號圖片
// tester 「抽身逃走」
await tester.pump();
// tester 已經「跑路」了,所以 tap 不會執行,但也不會報錯
await tester.tap(find.byIcon(Icons.add));
// findsOneWidget 表示沒有文字為「0」找到 Widget
expect(find.text('0'), findsNothing);
// findsOneWidget 表示找到一個文字為「2」的 Widget
expect(find.text('2'), findsOneWidget);
});
}
相關文章
- 解讀Android官方MVP專案單元測試AndroidMVP
- Flutter 單元測試Flutter
- .NET 專案中的單元測試
- 如何測試 Flutter 應用? ー 單元測試Flutter
- 為vue的專案新增單元測試Vue
- 程式碼重構與單元測試——測試專案(二)
- Flutter 學習之路 - 測試(單元測試,Widget 測試,整合測試)Flutter
- 專案必備技術之單元測試
- 個人專案----詞頻統計----單元測試
- vue2專案,踩坑Jest單元測試Vue
- 測試 之Java單元測試、Android單元測試JavaAndroid
- 單元測試:單元測試中的mockMock
- 【vue系列】vue2.0 專案配置 Mocha 單元測試Vue
- 怎樣使用Spring Boot專案的單元測試Spring Boot
- 怎樣使用Spring Boot專案的單元測試?Spring Boot
- C# .Net4.0 專案怎麼做單元測試C#
- Android單元測試與模擬測試詳解Android
- Flutter測試(二):在專案中進行 Widget 測試Flutter
- [iOS單元測試系列]單元測試編碼規範iOS
- 用 jest 單元測試改善老舊的 Backbone.js 專案JS
- 有心無力,適合小專案的 Nodejs 單元測試NodeJS
- 為 IIncrementalGenerator 增量 Source Generator 原始碼生成專案新增單元測試REM原始碼
- Go單元測試Go
- 單元測試工具
- iOS 單元測試iOS
- 前端單元測試前端
- golang 單元測試Golang
- PHP 單元測試PHP
- phpunit單元測試PHP
- JUnit單元測試
- unittest單元測試
- Junit 單元測試.
- 前端測試:Part II (單元測試)前端
- Python專案維護不了?可能是測試沒到位。Django的單元測試和整合測試初探PythonDjango
- .NET專案開發—淺談面向介面程式設計、可測試性、單元測試、迭代重構(專案小結)程式設計
- javascript單元測試框架mochajs詳解JavaScript框架JS
- 圖文詳解C#單元測試C#
- Testing Flutter apps翻譯-單元測試簡介FlutterAPP