阅读量:3
一、CentOS上Flutter测试前置准备
- 安装Java SDK:Flutter依赖Java环境,需安装JDK 17(或更高版本)。通过命令
sudo yum install -y java-17-openjdk-devel安装,安装后用java -version验证是否成功。 - 安装Flutter SDK:从Flutter官方仓库克隆SDK(
git clone https://github.com/flutter/flutter.git),解压至指定目录(如~/flutter),然后运行flutter doctor检查依赖完整性。 - 配置环境变量:将Flutter和Dart的
bin目录添加到PATH中。编辑~/.bashrc文件,添加以下内容:执行export PATH="$HOME/flutter/bin:$PATH" export PATH="$PATH:$HOME/.pub-cache/bin"source ~/.bashrc使配置生效。 - 安装Docker(可选):若需隔离环境,可通过Docker快速部署Flutter。拉取官方镜像(
docker pull flutter:latest),运行容器时挂载项目目录(-v $(pwd):/app)。
二、编写测试脚本
- 单元测试:在项目
test目录下创建测试文件(如counter_test.dart),使用flutter_test包编写测试用例。示例代码:import 'package:flutter_test/flutter_test.dart'; import 'package:your_app/main.dart'; // 替换为你的主文件 void main() { test('Counter increments correctly', () { final counter = Counter(); expect(counter.value, 0); counter.increment(); expect(counter.value, 1); }); } - 集成/UI测试:若需测试UI交互,需创建
test_driver目录,在其中编写测试脚本(如integration_test.dart)。示例代码:注意:集成测试需在真实设备或模拟器上运行。import 'package:flutter_test/flutter_test.dart'; import 'package:integration_test/integration_test.dart'; import 'package:your_app/main.dart' as app; void main() { IntegrationTestWidgetsFlutterBinding.ensureInitialized(); testWidgets('Tap button increments counter', (WidgetTester tester) async { app.main(); // 启动应用 await tester.pumpAndSettle(); // 等待界面渲染 // 查找并点击按钮 await tester.tap(find.byKey(ValueKey('increment_button'))); await tester.pump(); // 触发动画 // 验证文本变化 expect(find.text('Count: 1'), findsOneWidget); }); }
三、运行测试
- 本地运行:
- 单元测试:在项目根目录执行
flutter test,自动运行test目录下所有测试文件。 - 集成测试:先启动测试驱动应用(
flutter drive --target=test_driver/integration_test.dart),再运行测试脚本。
- 单元测试:在项目根目录执行
- Docker运行:若使用Docker,进入项目目录后执行:
此命令会将项目挂载到容器中并运行测试。docker run -v $(pwd):/app -w /app flutter:latest flutter test
四、集成到CI/CD管道
以GitHub Actions为例,创建.github/workflows/flutter_ci.yml文件,配置如下:
name: Flutter CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Install Flutter
run: |
git clone https://github.com/flutter/flutter.git -b stable --depth 1
echo "$HOME/flutter/bin" >> $GITHUB_PATH
flutter doctor
- name: Run tests
run: flutter test
此配置会在每次代码推送或拉取请求时自动运行测试,确保代码质量。
以上就是关于“centos上flutter测试怎么进行”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm