目录(后期持续更新)

一、前言

 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自动化测试系列】前言的更多相关文章

  1. 【Appnium+C#+Winform自动化测试系列】一、获取本机连接的设备、启动多个Appnium和获取本机启动的Appnium

    本系列内容,准备根据所完成的项目为基线,一步一步的把整个设计和实现过程梳理. 先从基本的一些环境问题入手,梳理清楚关于手机设备和Appnium.因为我们在后面的建立Appnium连接时,需要设备名字和 ...

  2. angularjs自动化测试系列之jasmine

    angularjs自动化测试系列之jasmine jasmine参考 html <!DOCTYPE html> <html lang="en"> <h ...

  3. angularjs自动化测试系列之karma

    angularjs自动化测试系列之karma karma test with jasmine 更好的利用工具是为了让生活更美好. 需要安装的东西: npm install karma -g mkdir ...

  4. C# WinForm开发系列 - ListBox/ListView/Panel

    转自会飞的小猪文章 C# WinForm开发系列 - ListBox/ListView/Panel 在博客园看到了一篇博文,觉得很不错,就转载过来了.    包含自定义绘制的ListBox, 带拖动, ...

  5. C# WinForm开发系列 - WebBrowser

    原文:C# WinForm开发系列 - WebBrowser 介绍Vs 2005中带的WebBrowser控件使用以及一些疑难问题的解决方法, 如如何正确显示中文, 屏蔽右键菜单, 设置代理等; 收集 ...

  6. RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难

    消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速 ...

  7. C# WinForm开发系列 - 文章索引

    该系列主要整理收集在使用C#开发WinForm应用文章及相关代码, 平时看到大家主要使用C#来开发Asp.Net应用,这方面的文章也特别多,而关于WinForm的文章相对少很多,而自己对WinForm ...

  8. C# WinForm开发系列 - GDI+【转】

    http://blog.csdn.net/blue_sky6/article/details/53811435?locationNum=6&fps=1 C# WinForm开发系列 - GDI ...

  9. Cypress自动化测试系列之三

    本文技术难度★★★,如果前编内容顺利执行,请继续. 如果Selenium尚无法灵活运用的读者,本文可能难度较大. “理论联系实惠,密切联系领导,表扬和自我表扬”——我就是老司机,曾经写文章教各位怎么打 ...

随机推荐

  1. 【算法系列学习】线段树 单点覆盖,区间查询最大值 [kuangbin带你飞]专题七 线段树 B - I Hate It

    https://vjudge.net/contest/66989#overview #include<iostream> #include<cstdio> #include&l ...

  2. Vue2.0的变化 ,组件模板,生命周期,循环,自定义键盘指令,过滤器

    组件模板: 之前: <template> <h3>我是组件</h3><strong>我是加粗标签</strong> </templat ...

  3. ORA-22835 缓冲区对于 CLOB 到 CHAR 转换或 BLOB 到 RAW 转换而言太小

    在使用Oralce时,直接取出 CLOB 到 CHAR 转换或 BLOB 到 RAW 转换时,会出现ORA-22835的异常,以下是个人的解决方案 create or replace Function ...

  4. R语言分析(二)——薛毅R语言第二章后面习题解析

    包括2.2—2.6中间的习题,2.2的习题中第三问和第四问,应该有其他的解答方法,但我看他的题目,似乎是在A和B的基础上进行,所以就选择了使用for循环的方法 做着习题,又不断查着书,这样,书籍也熟悉 ...

  5. maven 聚合工程的创建和打包

    ---恢复内容开始--- 使用eclipse创建maven项目 第一步:创建父工程hg-parent,如图; 右击空白处,new创建新maven工程: 搜索maven项目 父工程使用pom打包方式 第 ...

  6. SUSE 11下安装DPDK

    SUSE下安装与centos下安装有稍许不同: # cd  dpdk-1.8.0 # grep -rn Werror . |grep -iE "Makefile|mk" |awk ...

  7. int类型和byte类型的强制类型转换

    今天在读<Java网络编程>这本书的第二章 流 时,看到书中有一个地方关于int强制转换为byte类型时应注意的地方.这个地方有点细节,不过就应该把这种细节把握住. 情况是这样的,讲到In ...

  8. 取代netcat

    前言 众所周知,netcat是网络界的瑞士军刀,它的主要作用是:提供连接其他终端的方法,可以上传文件,反弹shell等等各种利于别人控制你电脑的操作.所以聪明的系统管理员会将它从系统中移除,这样当别人 ...

  9. iOS 比较版本号大小的方法

    比较iOS版本号大小 eg:3.2.0和3.1.0 或者 3.2.0和3.2比较 返回bool值变量YES or NO -(BOOL)compareVesionWithServerVersion:(N ...

  10. VHDL乘除法及转换

    首先鄙视一下这个不智能的语言 1.要进行乘法与除法,数据类型必须是signed 2.两个16位的数相乘,结果必须是32位的 3.乘以2的n次幂的数可以直接乘,之后截位也比较方便,(其实直接移位就可以) ...