移动端自动化测试-WTF Appium?

news/2024/7/10 2:42:23 标签: java, python, vue, 软件测试, js

手机App分为两大类,原生App(Native App)和混合APP(Hybrid App)

原生App(Native App)

原生App实际就是我们所常见的传统App开发模式,云端数据存储+App应用客户端。App应用客户端,包含了所有的UI元素、框架逻辑等。只有数据存储在云端。

混合App(Hybrid App)

混合App就是HTML5 App,混合App通常由两部分组成,HTML5云网站+App应用客户端,这里的App应用客户端实际只是个架子,里面的UI元素和逻辑,都是存储在云端的,每次在打开App时,去云端获取数据呈现给手机用户。说白了混合App就是将Web页面嵌套到了App应用客户端中。由于每次打开App都要向HTML云端服务请求数据,所以会产生不小的数据流量,并且如果没有网络,会导致无法看到HTML App。这就是常说的H5页面。

Appium介绍

Appium是一个开源、跨平台的自动化测试框架,它适用于Native App、Hybrid App。

Appium有个比较好的设计哲学,简单的说就是不要为了移动端自动化测试而单独开发一套Api接口,所以Appium也是基于Selenium的Webdriver进行了扩展,扩展了一些操作移动端的Api接口,在我们学习完Selenium的Api接口后,我们在学习Appium只需要学习扩展的那些操作移动端的Api接口即可。

Appium最牛之处在于支持跨平台操作。实际上我们在测试时是启动了一个Appium Server,这个Server可以放到任意的机器上,供公司的自动化测试人员共同使用。

Appium原理

Appium既然是基于Selenium做的二次扩展,那么Appium也是一个经典的Client-Server的设计模式,我们的Code就是狭义上的客户端,Server端与Selenium不同,Selenium直接测试浏览器Web页面,将浏览器作为服务端。而Appium的服务端是我们自己启动的Appium-Server。数据与操作命令传递与Selenium Api接口相同,遵守REST设计风格的Api接口。(所谓的REST设计风格,只是一帮喜欢写论文的人装逼搞出来的名词,让大家看的云里雾里。简单的理解,就是一种接口设计方式,网上对于REST的解释层出不穷,翻译成三句话,看URL知道要什么、看HTTP Metod知道干什么、看HTTP Status Code知道结果。)

Appium工作流


http://www.niftyadmin.cn/n/1346004.html

相关文章

软件测试的错题汇总

立志做一名软件测试猿,记一下牛客网上的题目 vv 1.alpah测试和beta测试 α测试是指软件开发公司组织内部人员模拟各类用户对即将面市软件产品(称为α版本)进行测试,试图发现错误并修正。 α测试的关键在于尽可能逼真地模拟实际运行…

如何检查c语言错误提示,C语言错误提示

Ambiguous operators need parentheses不明确的运算需要用括号括起Ambiguous symbol xxx不明确的符号Argument list syntax error参数表语法错误Array bounds missing丢失数组界限符Array size toolarge数组尺寸太大Bad character in paramenters参数中有不适当的字符Bad file …

实现Interface的方法不能使用static修饰符

今天在写程序时, 在一个方法前加了static, 而这个方法实现了interface中的一个成员。编译时,总是出现“不会实现接口成员”的错误,百思不得其解,后来将static去掉,编译就成功。在www.asprelated.com上看到这么一段话:&…

在科技圈不懂“机器学习”?那你就out了

当联网的终端设备越来越多时,产生的信息数据也将呈指数式增长,大型、复杂、增长快速的数据收集已经无处不在。而机器学习能够扩增这些数据的价值,并基于这些趋势提出更广泛的应用情境。 那么,被人们津津乐道的机器学习到底是什么呢…

今天研究了一下关于Asp.net文件上传时的内存消耗问题

晕啊,写了半天,突然间所有的格式都没了,我不得不在写字板中重新排版,DuDu哥,你还是快捷键都去掉吧。 简单研究了一下如何解决Asp.net连续上传文件时对内存占用越来越多的问题。但目前只能解决一部份问题,要…

移动端自动化测试-AppiumApi接口详解及常用adb命令

Appium 初始化配置信息(Desired Capabilities),Desired Capabilities实际上就是一个字典,它主要用于向Appium Server提供初始化配置参数,如:想要测试的系统是Android还是IOS,测试哪款软件,软件的入口是哪里…

Fedora LVM磁盘大小调整

umount /dev/fedora/swap e2fsck -f /dev/fedora/swap 转载于:https://www.cnblogs.com/mkxzy/p/7351939.html

电气自动化c语言考试题,【2017年整理】C语言程序设计自测练习.doc

【2017年整理】C语言程序设计自测练习PAGEPAGE 1《C语言程序设计》自测练习一、选择题1. 由C语言源程序文件编译而成的目标文件的缺省扩展名为( )。A. cpp B. exe C. obj D. C2. C语言程序的基本模块为( )。A. 表达式 B. 标识符 C. 语句 D. 函数3. x>0 || y5的相反表达式为(…