【Appnium+C#+Winform自动化测试系列】前言
目录(后期持续更新)
一、前言
1、为什么选择Appnium
最近这些年APP保持着持续的火热,对应的APP测试行业也是跟着水涨船高。由于市场的需求,APP测试平台也涌出大量的自动化测试工具。
在对MonkeyRunner、Monkey、Appnium和instrumentation进行比较分析后,我选择了Appnium这个工具。该工具最大的特点就是支持多平
台多语言,而且竟然同时支持JS这种脚本语言和C#、java编译型语言。跨平台的话,同时支持IOS和Android,只需要安装对应Appnium
就可以实现了。
2、Appnium原理图
关于具体Appnium运行的原理以及如何支持跨平台多语言的架构,大家可以自行搜索,作者也无法通过大脑背出这些原理,大概就是类似
有一个中间件平台来完成的。
我们可以把Appium看做是一个翻译人员。
它可以把你的自动化测试脚本,翻译成UIAutomator能识别的语言,然后调用UIAutomator来执行测试,它只是一个中间人。
运行测试脚本的电脑,我们称为Client。
打开Appium,就开启了Appium Server,默认监听4723端口。
Appium Server接收到Client命令(测试脚本),翻译成测试机器可以理解的语言,然后发送给手机平台运行。
测试机器运行结束后,再把测试结果返回给Appium Server,之后Appium Server再把测试结果返回给Client。
注:图片来自互联网搜索


3、如何实现C#语言下的脚本
与其他语言一样,都是需要引用对应的插件或者动态链接库文件,点此下载dll>>,点此下载Appnium
只需要对其进行引用后,便可实现客户端与服务端的连接和指令的发布了。
第一篇序言,就这样完结吧,环境的搭建相信大家都能轻松解决。本人也是5月份开始入手研究App自动化测试的,当时一片空白,对移动端几乎没有一些认识,
所有的知识都是通过搜索引擎学到的,然后发现网上很多只是都是一些零散的碎片,最夸张的时候,同时打开了十几个浏览器页面结合着学习。一开始,我没
有立马去学习工具,而是先对移动端的系统进行熟悉,再尝试去阅读移动端的一些代码和app运行机制,再是对工具进行熟悉和对比,选择一款适合自己下手
的工具。接下来,我将会把一个完整的Appnium自动化测试作品一步一步的讲解,希望在整理知识的同时带给大家帮助,敬请期待。。。
【Appnium+C#+Winform自动化测试系列】前言的更多相关文章
- 【Appnium+C#+Winform自动化测试系列】一、获取本机连接的设备、启动多个Appnium和获取本机启动的Appnium
本系列内容,准备根据所完成的项目为基线,一步一步的把整个设计和实现过程梳理. 先从基本的一些环境问题入手,梳理清楚关于手机设备和Appnium.因为我们在后面的建立Appnium连接时,需要设备名字和 ...
- angularjs自动化测试系列之jasmine
angularjs自动化测试系列之jasmine jasmine参考 html <!DOCTYPE html> <html lang="en"> <h ...
- angularjs自动化测试系列之karma
angularjs自动化测试系列之karma karma test with jasmine 更好的利用工具是为了让生活更美好. 需要安装的东西: npm install karma -g mkdir ...
- C# WinForm开发系列 - ListBox/ListView/Panel
转自会飞的小猪文章 C# WinForm开发系列 - ListBox/ListView/Panel 在博客园看到了一篇博文,觉得很不错,就转载过来了. 包含自定义绘制的ListBox, 带拖动, ...
- C# WinForm开发系列 - WebBrowser
原文:C# WinForm开发系列 - WebBrowser 介绍Vs 2005中带的WebBrowser控件使用以及一些疑难问题的解决方法, 如如何正确显示中文, 屏蔽右键菜单, 设置代理等; 收集 ...
- RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难
消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速 ...
- C# WinForm开发系列 - 文章索引
该系列主要整理收集在使用C#开发WinForm应用文章及相关代码, 平时看到大家主要使用C#来开发Asp.Net应用,这方面的文章也特别多,而关于WinForm的文章相对少很多,而自己对WinForm ...
- C# WinForm开发系列 - GDI+【转】
http://blog.csdn.net/blue_sky6/article/details/53811435?locationNum=6&fps=1 C# WinForm开发系列 - GDI ...
- Cypress自动化测试系列之三
本文技术难度★★★,如果前编内容顺利执行,请继续. 如果Selenium尚无法灵活运用的读者,本文可能难度较大. “理论联系实惠,密切联系领导,表扬和自我表扬”——我就是老司机,曾经写文章教各位怎么打 ...
随机推荐
- VopSdk一个高逼格微信公众号开发SDK
一.我们的目标 分离基础参数和业务参数. 具有高重用和扩展性. 轻量级. 二.实现目标 (一)分离基础参数和业务参数 仔细分析所有接口,抽离出每个模块接口的公共参数. A.针对微信公众号所有接口分析( ...
- TypeScript入门-高级类型
高级类型 交叉类型 交叉类型,就是将多个类型合并为一个新的类型,这个新的类型具有这多个类型的成员,含有这几个类型的所有特性,是他们的综合体,像是集合的并集 例子: function extend< ...
- spring注解读取json文件
开发时候在接口没有提供的时候,可以用json文件提前模拟接口数据 1.service层 package com.syp.spring.service; import java.io.File; imp ...
- 云计算之路-阿里云上:负载均衡错误修改Cookie造成用户无法登录
最近陆续有用户反馈在我们网站上登录时遇到登录死循环问题.输入用户名与密码提交后,显示登录成功,但跳转到目标网址后(由于依然处于未登录状态)又跳转回登录页面,再次登录,再次这样...就这样一直循环,怎么 ...
- 【Windows 10 应用开发】跟随系统主题颜色
有些时候,希望应用程序中的某些颜色可以与系统的主题颜色相同,并且当系统主题色改变时进行同步. 实现过程并不复杂,主要用到 UISettings 类,它公开一个 GetColorValue 方法,访问这 ...
- IOS的UIPickerView 和UIDatePicker
1.UIPickerView的常见属性 //数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id<UIPikerViewData ...
- ReactiveCocoa学习总结(2)
信号(signal)- RACSignal类 1. 一般表示将来有数据传递,只要有数据改变,信号内部接收到数据,就会马上发出数据. 2. 事件类型: next:发送数据到下一个管道 error:发送数 ...
- 深入分析 Java I/O 的工作机制
I/O 问题可以说是当今互联网 Web 应用中所面临的主要问题之一,因为当前在这个海量数据时代,数据在网络中随处流动.这个流动的过程中都涉及到 I/O 问题,可以说大部分 Web 应用系统的瓶颈都是 ...
- 配置网络yum源
有的时候服务器需要下载一些软件,是本地yum源没有的,这时候需要配置网络yum源 #cd /etc/yum.repos.d/ 把这个目录下的配置文件备份,改名:或者是把文件里边的enabled=1的 ...
- PHP是什么文件? 如何打开?
PHP是什么文件? PHP,一个嵌套的缩写名称,是英文"超级文本预处理语言"(PHP:Hypertext Preprocessor)的缩写.PHP 是一种 HTML 内嵌式的语言 ...