Flutter自动化测试-集成测试篇

发表于:2020-9-14 10:06

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:佚名    来源:今日头条

  Flutter集成测试
  Flutter官方对Flutter应用测试类型做了三个阶段划分,分别为Unit(单元)测试、Widget(组件)测试、Integration(集成)测试。
  按照维护成本来看的话从左到右依次增高,按照投资回报方面看的话依次是Widget>Integration>Unit,而作为测试人员来说,我们主要关注点在集成测试这一类型。
  官网对于集成测试的定义:
  “Unit(单元)测试和Widget(组件)测试对于测试单个类、方法或者组件来讲非常方便,然而他们通常不会将各个部分作为整体一起进行测试,又或者是想要获取应用在真实设备上的表现,此时我们就需要集成测试了。”
  FlutterDriver
  FlutterDriver提供API去测试运行在真实设备和模拟器里面的Flutter应用,执行时会和测试脚本在不同的进程中,可以简单认为就是Flutter版本的Selenium WebDriver
  添加FlutterDriver依赖
  在介绍Flutter工程的目录结构时,其中pubspec.yaml文件可以对依赖和配置进行管理,类似于Maven工程的pom.xml。找到dev_denpendencies添加如下配置
  其中
  ·flutter_driver: sdk: flutter配置表示添加FlutterDriver依赖
  ·test: any配置表示添加测试库,因为我们写TestCase需要用到里面的方法和断言
  集成测试步骤
  1、创建测试App
  使用创建的Demo工程,其中包括悬浮按钮和中间的文本显示。
  需要注意的是:默认demo没有给这些元素加上标识,而且flutter中不支持ID,一般通过Key属性进行标识(对应定位方法为valueKey)。
  我们这里给悬浮按钮和中间的文本显示元素加上key属性:
  2、创建test脚本
  1)在工程根目录下创建test_driver文件夹
  2)创建xx.dart文件:用于启动运行应用
  3)创建xx_test.dart文件:Test脚本文件
  官方解释为什么需要创建这两支文件的原因:
  集成测试中TestCase和应用运行在不同的进程中,所以需要test_driver目录里有两个文件分别用来执行应用和执行TestCase。
  3、开启Flutterdriver扩展支持
  在xx.dart文件中添加如下代码:
  4、编写测试脚本
  在xx_test.dart文件中添加如下代码:
  5、执行测试
  1、连接设备,我们可以选择
  ·Windows上测试Android设备/模拟器
  ·在MacOs上测试Android设备/模拟器 or IOS设备/模拟器
  2、在项目的根目录下开启命令终端
  命令解释:
  ·构建目标App包并将其安装到设备/模拟器中
  ·启动目标App
  ·运行xx_test.dart
  ·执行效果:
  关于FlutterDriver实现自动化测试就介绍到这里。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号