移动端混合型App(hybrid app)自动化测试选型与实践

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:41   1244   0

背景

  公司产品的业务已经发展到了移动端,开发选型已经结束,决定使用phonegap做移动端的web应用开发平台。考虑到业务的复杂与多样,移动端的测试同样需要自动化。在网上看了很多,最终锁定了3个移动端测试工具:Selendroid,Appium,Robotium。之所以选择他们3个,是因为团队已经有了以Selenium为基础的测试框架,而这三个工具与Selenium可以说一脉相承。

目标

  基于phonegap的混合型app(hybrid app)web应用移动端自动化测试

选型过程

Selendroid(放弃)

放弃Selendroid的原因是在按照官网教程操作后,运行测试时,报错,拿着报错在网上查询,结果都没有解决。资料少的可怜,后来看到Appium中集成了Selendroid后,果断放弃。

Robotium(放弃)

其实Robotium在尝试的过程中是最顺利的一个,功能也强大。

但其只支持Android设备,而且其以Android Test工程测试的方式很难集成到公司团队已有的框架中,所以也放弃了。

但是仍然会关注其发展,社区活跃,功能够精深有很多可以借鉴的地方。在Appium的研究过程中也起了很大的作用。

Appium(选中)

Appium支持ios和android设备,支持hybrid app,集成了Selendroid,易于集成到公司现有框架中,社区正在形成,文档资料也在丰富中。

在尝试的过程中虽有曲折,但最后也顺利实现了。

混合型app以Appium搭建自动化测试开发环境

Appium

官方网址:http://appium.io/

中文社区:http://testerhome.com/

下载地址(由testerhome社区提供):http://pan.baidu.com/s/1jGvAISu#dir

1. 下载最新版本AppiumServer 1.2.0,解压后,进入目录下找到Appium.exe,运行即可,此程序作为Appnium与被测设备之间通讯的服务端

出现如下界面说明启动成功

2. 将真机连接到PC端

3. 我使用Eclipse作为开发IDE,建立一个maven工程appium-demo,在pom中引用了公司框架中的Selenium核心工程,这样可以省去添加Selenium依赖的过程

,同时在maven的中央库中找到Appium包,并引用

Appium的maven引用

GroupId:io.appium

ArtifactId:java-client

Version:1.5.0

4. 建立工程后,就可以写测试代码了,在工程中建立一个Junit Test类Test1.java,代码如下:

package com.example.hello;

import io.appium.java_client.AppiumDriver;

import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Set;

import junit.framework.TestCase;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.BlockJUnit4ClassRunner;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebElement;

转载于:https://www.cnblogs.com/zzzhuxf/p/3860647.html

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP