HaaS UI基础教学八:JSAPI自动化测试方法

 

名词解释

AliOS Things: 阿里云智能IoT团队自研的物联网操作系统

HaaS:全称是Hardware as a Service,阿里云智能IoT团队基于AliOS Things系统推出的硬件即服务

HaaS UI:全称是Hardware as a Service User Interface,是源自AliOS Things操作系统上的一套应用&图形解决方案,支持C/C++和 JS两种开发语言

 

1、HaaS UI应用创建

     AliOS Things团队为了让开发者能够快速地进行HaaS UI应用开发,特提供了一个demo应用,开发者只要根据《HaaS UI小程序解决方案基础教学之一: 快速开始》,就能够快速搭建应用工程,详见https://blog.csdn.net/HaaSTech/article/details/112426137

 

2、HaaS UI自动化测试架构

分层介绍

1、硬件设备:HaaS UI目前支持HAAS100和MTK单板,未来为支持更多的AIOT带屏终端设备;为了解决用户手上没有硬件的场景,AOS团队特开发了基于MAC和Windows模拟器,让用户只需关注上层应用的开发。

2、OS:HaaS UI是运行在AliOS Things操作系统上的一套应用&图形解决方案。

3、HaaS UI应用框架:包括轻应用框架、轻应用API、容器、HaaS UI渲染框架和动态卡片前端框架。

4、HaaS UI自动化测试框架:AOS对外提供了JS API和组件的能力,同时开放了JS API和组件的接口,可以由用户自定义,因此,提供了接口测试的自动化测试框架和UI自动化测试的自动化测试框架。目前实现了接口测试的自动化测试框架。

5、测试类型:覆盖接口测试、功能测试、场景测试、稳定性测试和性能测试。

 

3、API

3.1、内置API

HaaS UI目前内置了一些基本的JSAPI供开发者使用,这些JSAPI提供与应用生命周期、页面导航、数据存储、包管理、网络请求等强关联的接口,接口宿主为框架提供的基础类($falcon,App,Page等)。

接口宿主

JSAPI

调用方法

接口功能

$falcon

navTo

$falcon.navTo(target:String, options:Object)

应用、页面管理

closeApp

$falcon.closeApp()

closePageByName

$falcon.closePageByName(pageName:String)

closePageById

$falcon.closePageById(pageId:String)

getPage

$falcon.getPage(component:Component)

app

finish

$falcon.$app.finish()

page

setRootComponent

this.setRootComponent(component:Component)

// this指针属于继承$falcon.Page的类

finish

this.finish()

// this指针属于继承$falcon.Page的类

package

getInstalledAppInfo

$falcon.jsapi.pm.getInstalledAppInfo

应用包管理

packageInstalled

$falcon.jsapi.pm.on("packageInstalled", param => {})

$falcon.jsapi.pm.off("packageInstalled", param => {})

packageUninstalled

$falcon.jsapi.pm.on("packageUninstalled", param => {})

$falcon.jsapi.pm.off("packageUninstalled", param => {})

storage

setStorage

$falcon.jsapi.storage.setStorage({key: 'key', data: 'data'})

数据存储

getStorage

$falcon.jsapi.storage.getStorage({key: 'key'})

removeStorage

$falcon.jsapi.storage.removeStorage({key: 'key'})

clearStorage

$falcon.jsapi.storage.clearStorage()

net

http.request

$falcon.jsapi.http.request(options:Object)

网络请求

 

3.2、自定义API

HaaS UI内置的JSAPI为虽然JS提供了调用底层系统能力的接口,例如数据存储、网络管理、文件操作等,但是这些内置的JSAPI不能满足用户所有的开发需求。HaaS UI提供了扩展JSAPI的方法,用户可以根据项目需求和平台能力实现不同的扩展,以满足不同的功能需要。用户如果想要自定义一些JSAPI,详细参考https://blog.csdn.net/HaaSTech/article/details/112848290

 

4、接口自动化测试

4.1、创建自动化测试文件

根据第一章节创建HaaS UI应用,然后在对应目录下新增自动化测试目录及文件,详细操作参考第一章节。

 

4.2、 编写测试用例

在apitest.vue文件的methods中增加测试用例,例:

 

4.3、添加测试用例

在apitest.vue文件中的created中添加对应的测试用例

 

4.4、编译运行

  • npm run build命令生成小程序包
  • 下载模拟器

Mac模拟器:下载地址

Windows模拟器:下载地址

  • 基于模拟器运行

运行模拟器需要先cd到模拟器所在路径,再执行./bin/appx,(因为模拟器是根据相对路径来加载资源目录的)

运行方法:

  • 1、./bin/appx                (运行模拟器预置的应用包)
  • 2、./bin/appx  {appPath}  {page}   (传入应用构建出来的目录绝对路径来运行,page可选)

例如:./bin/appx /Users/Documents/code/testproject/.falcon_ test

运行结果如下:

 

5、相关学习文章

1.HaaS UI 免费开源的轻量级IoT小程序解决方案   https://blog.csdn.net/HaaSTech/article/details/112306194

2.HaaS UI小程序解决方案基础教学之一: 快速开始  https://blog.csdn.net/HaaSTech/article/details/112306194

3.HaaS UI小程序解决方案基础教学之二: 搭建第一个UI页面

https://blog.csdn.net/HaaSTech/article/details/112674174

4.HaaS UI小程序解决方案基础教学之三: JSAPI页面导航

https://blog.csdn.net/HaaSTech/article/details/112681511

5.HaaS UI小程序解决方案基础教学之四: JSAPI数据存储

https://blog.csdn.net/HaaSTech/article/details/112766128

6.HaaS UI小程序解决方案基础教学之五: JSAPI文件管理

https://blog.csdn.net/HaaSTech/article/details/112766128

 

开发者技术支持

如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号

更多技术与解决方案介绍,请访问阿里云AIoT首页https://iot.aliyun.com/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值