appium和monkey的区别?
monkey不足之处:
·元素定位依赖于坐标点,稳定性差
·不支持跨平台使用(iOS平台无法使用)
·没有成熟系统的管理框架
·只适用于冒烟测试,检测app稳定性。
Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试。 它使用WebDriver协议驱动iOS,Android和Windows应用程序。
Appium优势
可以跨平台同时支持android、ios
支持多种语言,java、python、php、Ruby等等
不用为复杂的环境发愁
如果你有selenium经验,直接上手。
Appium架构原理
Appium是在手机操作系统自带的测试框架基础上实现的,Android和iOS的系统上使用的工具分别如下:
Android(版本>4.3):UIAutomator,Android 4.3之后系统自带的UI自动化测试工具。
Android(版本≤4.3):Selendroid,基于Android Instrumentation框架实现的自动化测试工具。
·iOS:UIAutomation(instruments框架里面的一个模板),iOS系统自带的UI自动化测试工具。
自动化测试的主流框架有哪些?
自动化测试的主流框架有哪些?
自动化测试框架分类,根据功能平台来划分:
1. 基于前端的WebUI框架:Junit、TestNG、自定义框架,咱们主要以自定义框架来演示。
基于Selenium自动化测试工具前端的WebUI测试框架,主要使用关键字驱动与数据驱动来实现自动化测试。
什么是关键字驱动?
1. 将测试过程中一些常用的操作封装为方法关键字,方便之后的脚本进行调用。使脚本管理更加具有逻辑性,并且维护更加方便。
2. 使用关键字能够让脚本可读性更高,更富有逻辑性,便于维护,执行更顺畅。
什么是数据驱动?
通过读取excel编写的用例,调用关键字执行,让用例的管理和执行更加简便和规范。
2. 基于接口的自动化测试框架
一般来说接口测试开源框架各类繁多,但是如果使用开源框不够灵活,所以本人是以自主开发框架内容来演示,当然大家也可以去搭建开源的测试框架例如:jmeter+ant+jenkins这种类似于postman+ant+jenkins的测试框架,他们也能帮助我们提升工作效率,只是在使用容易受限,即然是开源的一般都是适用于大众的,但是会存在一些缺点就是个性的需求无法满足要求,所以有能力的建议自研框架。
使用excelwriter时,做完操作之后一定记得使用save函数将内存中的内容写进文件,否则文件当中没有变化。
3. 基于APP的单元测试框架。
App测试咱们也使用关键字数据驱动来编写测试框架,当然基于App测试你可以使用java或python语言来开发框架,基于App框架与WebUI 自动化测试框架类似,RobotFramWork+Appium项目实操,都是基于元素的操作进一步封装方法,从而调用方法。基于Python语言有unittest框架与pytest框架各自随需要而选择。