目录(后期持续更新)

一、前言

 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. VopSdk一个高逼格微信公众号开发SDK

    一.我们的目标 分离基础参数和业务参数. 具有高重用和扩展性. 轻量级. 二.实现目标 (一)分离基础参数和业务参数 仔细分析所有接口,抽离出每个模块接口的公共参数. A.针对微信公众号所有接口分析( ...

  2. TypeScript入门-高级类型

    高级类型 交叉类型 交叉类型,就是将多个类型合并为一个新的类型,这个新的类型具有这多个类型的成员,含有这几个类型的所有特性,是他们的综合体,像是集合的并集 例子: function extend< ...

  3. spring注解读取json文件

    开发时候在接口没有提供的时候,可以用json文件提前模拟接口数据 1.service层 package com.syp.spring.service; import java.io.File; imp ...

  4. 云计算之路-阿里云上:负载均衡错误修改Cookie造成用户无法登录

    最近陆续有用户反馈在我们网站上登录时遇到登录死循环问题.输入用户名与密码提交后,显示登录成功,但跳转到目标网址后(由于依然处于未登录状态)又跳转回登录页面,再次登录,再次这样...就这样一直循环,怎么 ...

  5. 【Windows 10 应用开发】跟随系统主题颜色

    有些时候,希望应用程序中的某些颜色可以与系统的主题颜色相同,并且当系统主题色改变时进行同步. 实现过程并不复杂,主要用到 UISettings 类,它公开一个 GetColorValue 方法,访问这 ...

  6. IOS的UIPickerView 和UIDatePicker

    1.UIPickerView的常见属性 //数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id<UIPikerViewData ...

  7. ReactiveCocoa学习总结(2)

    信号(signal)- RACSignal类 1. 一般表示将来有数据传递,只要有数据改变,信号内部接收到数据,就会马上发出数据. 2. 事件类型: next:发送数据到下一个管道 error:发送数 ...

  8. 深入分析 Java I/O 的工作机制

    I/O 问题可以说是当今互联网 Web 应用中所面临的主要问题之一,因为当前在这个海量数据时代,数据在网络中随处流动.这个流动的过程中都涉及到 I/O 问题,可以说大部分 Web 应用系统的瓶颈都是 ...

  9. 配置网络yum源

    有的时候服务器需要下载一些软件,是本地yum源没有的,这时候需要配置网络yum源 #cd  /etc/yum.repos.d/ 把这个目录下的配置文件备份,改名:或者是把文件里边的enabled=1的 ...

  10. PHP是什么文件? 如何打开?

    PHP是什么文件?  PHP,一个嵌套的缩写名称,是英文"超级文本预处理语言"(PHP:Hypertext Preprocessor)的缩写.PHP 是一种 HTML 内嵌式的语言 ...