Skip to content

Commit 7f3e02c

Browse files
committed
update
1 parent aebe449 commit 7f3e02c

File tree

2 files changed

+62
-0
lines changed

2 files changed

+62
-0
lines changed

.github/workflows/flutter.yaml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Flutter CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main # 根据你的默认分支修改
7+
pull_request:
8+
branches:
9+
- main
10+
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout code
16+
uses: actions/checkout@v2
17+
18+
- name: Set up JDK
19+
uses: actions/setup-java@v1
20+
with:
21+
java-version: "11"
22+
23+
- name: Install Flutter
24+
uses: subosito/flutter-action@v2
25+
with:
26+
flutter-version: "3.24.3" # 更新为你的 Flutter 版本
27+
28+
- name: Install Dependencies
29+
run: flutter pub get
30+
31+
- name: Run Tests
32+
run: flutter test
33+
34+
- name: Build APK
35+
run: flutter build apk --release
36+
37+
- name: Upload Release APK
38+
uses: actions/upload-artifact@v2
39+
with:
40+
name: app-release.apk
41+
path: build/app/outputs/flutter-apk/app-release.apk

test/main_page_test.dart

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:flutter_test/flutter_test.dart';
3+
import 'package:dns_speed_test/main.dart'; // 根据实际项目名更新
4+
import 'package:shared_preferences/shared_preferences.dart';
5+
6+
void main() {
7+
testWidgets('MainPage 有标题和语言按钮', (WidgetTester tester) async {
8+
// 模拟 SharedPreferences
9+
SharedPreferences.setMockInitialValues({});
10+
final prefs = await SharedPreferences.getInstance();
11+
12+
await tester.pumpWidget(MyApp(prefs: prefs));
13+
14+
// 检查标题是否存在
15+
expect(find.text('DNS Speed Test'), findsOneWidget); // 用实际标题替换
16+
17+
// 检查语言按钮是否存在
18+
expect(find.byIcon(Icons.language), findsOneWidget);
19+
});
20+
21+
}

0 commit comments

Comments
 (0)