Appium+Robotframework实现Android应用的自动化测试-2:Windows中启动Appium和模拟器

一.启动Appium

安装好了之后,在桌面或者菜单中找到Appium,分别双击或点击打开Appium.exe,如果一切正常,接着会出现一个Appium启动后的界面窗口,如下图所示。


1.1 Android Settings

点击左上角的第一个机器人图标,弹出Android Settings窗口,如下图所示。


在该窗口可以对将要进行测试的Android应用进行设置,因为接下来我们写脚本来跑测试,所以可以统统不进行设置,保持其默认值即可。如果不在脚本中设置,则需要在这里设置下,不过大部分保持默认值即可,需要进行设置主要有5个:

1.Application Path:点击Choose按钮后会弹出选择Android应用的路径选择框,选择需要测试的应用即可。

2.Launch AVD: 如果有多个模拟器,这里选择一个作为测试用的模拟器。

3.Platform Name:这个当然选择Android,因为现在是在说Android的自动化测试。

4.Automation Name:当然选择Appium,我们不是在玩Appium吗?

5.PlatformVersion:这个当然选择和模拟器中一样的版本啦。

1.2 General Settings

点击Appium左上角的第二个齿轮图标则弹出General Settings 窗口,如下图所示。


如果就在本机安装了Appium,则都可以保持默认值,如果把Appium安装在了其他机器,则需要设置Server Address,值就是Appium所在机器的IP地址,端口号一般无需更改。

1.3 启动Appium

这次直接跑Appium,所以进行相关的设置,点击Appium右上角的正方形图标启动Appium,如果能看到如下图所示的信息就表示启动成功了。


二.启动模拟器

2.1 启动虚拟设备管理器

进入到ANDROID_HOME\sdk目录中,然后双击AVD Manager.exe文件,如果没有该文件,则可双击SDK Manager.exe文件,然后在打开的窗口中点击菜单Tools,接着点击其Manage AVDs,,,子菜单项,这样就打开了Android Virtual Device(AVD) Manager,如下图所示。这个是Android虚拟设备管理器,利用它我们可以创建,编辑和启动具体的模拟器。



 

2.2 创建和编辑模拟器

点击Create按钮用于创建一个新的模拟器,这将会打开一个创建新的模拟器的窗口,如下图所示。


在这个窗口中输入或者选择所需的模拟器的参数,这里需要注意的是Target要选择和Appium或者脚本中相同的参数,Device要选择符合对应的Target,另外要保证CPU/ABI的值不能为空,Memory Options中的RAM不要设置过大,我一般设置为256或者512,VM Heamp设置为64,其他选项都保持默认值即可,最后点击底部的OK按钮就创建完毕了。创建成功后会出现在列表中。选中该项,可进行编辑操作,和创建类似,不再赘述。

2.3  启动模拟器

确定都没有问题了,选中需要启动的模拟器,点击Start按钮,在弹出的Launch Options对话框中直接点击Launch按钮,就会出现启动模拟器的进度条,之后出现模拟器的窗口,刚开始该窗口中一片漆黑,那是因为模拟器还没有启动完毕,等待一会儿,可以趁机泡杯茶,就看到启动成功了,如下图所示。完全就是一个Android手机的感觉有木有。


 

转自:http://bbs.51testing.com/thread-1051395-1-1.html

转载于:https://www.cnblogs.com/testlife007/p/4925318.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据导出生成word附件使用POI的XWPFTemplate对象

比较常用的实现Java导入、导出Excel的技术有两种Jakarta POI和Java Excel。Jakarta POI 是一套用于访问微软格式文档的Java API。Jakarta POI有很多组件组成,其中有用于 操作Excel格式文件的HSSF和 用于操作Word的HWPF; 一、前端使用get请求和post请求都…

python小仙女_python——time库整理(基础知识+实例)

先上目录,1.Time库的作用2. Time库的使用3.实例1.Time库的作用time库是Python中处理时间的标准库提供获取系统时间并格式化输出功能提供系统级精确计时功能,用于程序性能分析2. Time库的使用先明确几个概念:时间戳:格林威治时间19…

JavaScript调用Web Services实现无刷新三联动

http://singlepine.cnblogs.com/articles/301009.html 使用微软提供的webservice.htc实现通过JavaScript调用WebService.1.首先从微软网站上下载webservice.htc,我附件源代码也包含,不下载也可以http://msdn.microsoft.com/workshop/author/webservice/webservice.h…

python爬虫-异常处理

URLerror产生原因: 网络未连接(即不能上网)服务器不存在1 #-*-coding:utf-8-*- 2 import urllib2 3 requesturllib2.Request(http://www.wujiadong.com)#这是一个不能打开的网址 4 responseurllib2.urlopen(request) 5 htmlresponse.read() 6…

将给定数据源生成静态HTML页面持久化到项目之外的硬盘

一、java代码 设置好数据源map Map<String,String> mapnew HashMap<>();map.put("knowledgeName",tBasKnowledgebase.getKnowledgeName());map.put("htmlContent",tBasKnowledgebase.getHtmlContent());map.put("publishDate",new j…

qt qthead里如何响应信号_Qt 中的多线程技术(翻译)

原文链接Multithreading Technologies in Qt​doc.qt.io正文Qt 提供一系列的类与函数来处理多线程。Qt 开发者们可以使用下面四种方法来实现多线程应用。QThread: 底层 API 与可选的事件循环作为 Qt 进行线程控制的基石&#xff0c;每一个 QThread 实例都代表并控制着一个线程。…

页面调用系统window打印

一、 打印&#xff1a;直接页面调用window.print()&#xff0c;当前页面就会转换成打印页面 当前页面是使用HTML拼接成A4纸表格样式的展示&#xff1b; doPrint:function(type) {// this.centerDialogVisiblefalse;$(#button).hide();window.print();$(#button).show(); } 二、…

为什么只看重结果_猫很现实?猫只是看重结果

猫的智谋是许多家养宠物难以比拟的&#xff0c;这和猫的思维模式有关。和一些看重过程的动物不同&#xff0c;猫非常重视结果。这意味着&#xff0c;猫会通过自己的观察&#xff0c;通过结果来倒推过程&#xff0c;从而记住最佳的行动方案。铲屎官教给猫的一些方法&#xff0c;…

Spring 3整合Quartz 2实现定时任务(转)

http://www.meiriyouke.net/?p82 最近工作中需要用到定时任务的功能&#xff0c;虽然Spring3也自带了一个轻量级的定时任务实现&#xff0c;但感觉不够灵活&#xff0c;功能也不够强大。在考虑之后&#xff0c;决定整合更为专业的Quartz来实现定时任务功能。 首先&#xff0c;…

android 编译之后黑屏_抖音BoostMultiDex:Android低版本上首次启动时间减少80%(一)...

我们知道&#xff0c;Android 低版本(4.X 及以下&#xff0c;SDK < 21)的设备&#xff0c;采用的 Java 运行环境是 Dalvik 虚拟机。它相比于高版本&#xff0c;最大的问题就是在安装或者升级更新之后&#xff0c;首次冷启动的耗时漫长。这常常需要花费几十秒甚至几分钟&…

[转]关于多线程并发:每个开发人员都应了解的内容(转自Mainz's)

Concurrency: What Every Dev Must Know About Multithreaded Apps 本文讨论: 多线程和共享内存线程模型争用及并发访问如何能够打破不变量作为争用标准解决方案的锁定何时需要锁定如何使用锁定&#xff1b;理解开销锁定如何能够各行其道十年前&#xff0c;只有核心系统程序员会…

Filter案例之登录验证

一、登录验证&#xff0c;权限控制 1、需求分析 其中&#xff0c;登录有关的资源被访问时要直接放行&#xff0c;不然会死循环&#xff1b; 2、代码实现 转载于:https://www.cnblogs.com/wmqiang/p/11604621.html

js导出excel单元格内换行符代码_前端和excel的那些事

前端和 excel 的那点事在开发需求中&#xff0c;经常会遇到需要和excel相关的需求&#xff0c;毕竟不是所有人都是程序员&#xff0c;很多的业务都是通过excel去进行数据的整理归类计算的&#xff0c;excel中提供的一系列快捷功能&#xff0c;统计功能也非常的实用&#xff0c;…

Filter案例之敏感词过滤和代理模式

一、需求分析 二 、代理模式 1、概念 2、代码实现 代理对象可以强转为真实对象&#xff0c;即对应的接口类&#xff1b; 3、通过代理增强方法 其中&#xff0c;方法对象invoke真实对象&#xff0c;反射原理&#xff1b; 三、过滤敏感词汇案例代码实现 本地的字符流和字节流创建…

555定时器回差电压计算公式_555时基电路引脚解析

555时基电路引脚解析凡是时基电路555&#xff0c;电路内部结构相同&#xff0c;性能都是相同的。 时基电路555有很多厂家型号&#xff0c;如MC555、CA555、XR555、LM555等&#xff1b;国产型号有SL555、FX555、5G1555等&#xff0c;典型的、也是最常用的是NE555。555前的字母只…

麻省理工学院(MIT)的公开课程

很早之前就听说麻省理工学院把很多课程公开了&#xff0c;今天偶尔搜到这个内容。还不错 http://www.core.org.cn/OcwWeb/index.htm 课程列表 http://www.core.org.cn/OcwWeb/Global/all-courses.htm转载于:https://www.cnblogs.com/chenxizhang/archive/2009/04/27/1444255.ht…

66319d电源使用说明书_矿用防爆交换机如何正确安装调试和使用?

矿用防爆交换机是矿山的通讯核心&#xff0c;它不同于普通交换机&#xff0c;因应用环境的特殊性&#xff0c;在安装以及后续使用过程中有更多要求。在使用过程中&#xff0c;出保障交换机本身的部件无损、性能不受影响外&#xff0c;还要注意使用环境&#xff0c;保证现场安全…

xcode7.1 安装不了Alcatraz怎么办.看这里

按照github上面的安装的方法,但是发现并没有成功.这是为什么呢? 解决的方法是什么呢? 看下面: 这个时候新的问题来了,要怎么获取7.1的UUIDs呢?看下面:   打开你的终端,输入下面的代码就可以了: defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibili…

epub 机器人系列 阿西莫夫_艾萨克·阿西莫夫是不是穿越来的,他怎么能那么准地预言机器人,互联网技术呢?...

机器人&#xff0c;纳米技术&#xff0c;网络图书馆&#xff0c;视频电话&#xff0c;当这些悄悄走进我们的生活&#xff0c;如果有人问你&#xff0c;是什么改变了我们的生活&#xff1f;你可能会回答&#xff0c;当然是科技的发展。如果再问你&#xff0c;这些科技的发展最初…

js怎么调用wasm_Long.js源码解析

基于现在市面上到处都是 Vue/React 之类的源码分析文章实在是太多了。(虽然我也写过 Vite的源码解析所以这次来写点不一样的。由于微信这边用的是 protobuf 来进行 rpc 调用。所以有时候需要将 JS 中的 Number 类型转换为 Long 类型传给后端。目前用的最多的就是 Long.js 了&am…