关于appium环境搭建的例子网上比较多,不过都是关于python,java的,使用c#客户端的资料比较少,公司现有的测试系统是基于c#构建的,因为要和现有系统集成,所以选择的c#语言作为客户端, 下载appium 官网提供的c#例子,但是对应的android 版本,nunit 版本都比较旧,对于初次接触手机测试的人来说,一步一个坑,把例子拿下来,折腾了一两天,还是各种问题。最终通过百度,google,终于搭建好了环境,现在分享一下过程,希望对于后来人会有些帮助。
默认大家是安装了visual studio 的,如果没有安装,请百度如何安装visual studio
搭建环境有三部分,模拟器环境准备,appium服务器环境准备,c#单元测试工程环境准备,关于前两部分腾讯课堂,网易课堂都有视频资料,大家可以参考。
下面我们开始:
模拟环境搭建
模拟环境搭建建议用android studio ,这样配置简单,模拟器的性能也强一些。
下载地址:http://www.android-studio.org/ 最新版本是3.2
安装完成后打开 android studio
在tools菜单下找到 sdk manager 菜单打开( tools –>sdk manager)显示如下:
找到 android sdk (appearance & behavior ->system setting -> android sdk)
安装 android sdk 例如:android 6.0
接下来配置环境变量:
配置android_home 变量,对应的目录可用从下面位置找,
我对位置做过调整,和默认安装的位置不一样。
将 e:\android-sdk 替换成自己机器的地址。
在path 中追加:%android_home%\platform-tools; %android_home%\tools
安装完sdk 后就可以安装模拟器了,关闭sdk manager ,打开 avd manager (tools ->avd manager)
点击左下角的create virtual device 打开了 virtual device configuration
选择 phone ,找一个分辨率小一些的机型 例如 480×800 ,分辨率高了比较耗费资源。
点击next
选择 other images, 找到你刚才下载的sdk 对应的image ,上面选了android 5.0 我们就下 android 6.0 对应的image ,点击download 进行下载。完成后就可以点击next 到最后一个画面了。
点击finish 就完成了虚拟机的创建。
点击启动,启动虚拟机
这样虚拟机就配置并启动起来了,上面的镜像使用的是arm 版本,如果你的机器是x86,android studio 建议你使用x86的虚拟机。如果想使用x86的虚拟机,需要在bios中开启 virtualization technology 设定为enable ,操作系统可能也要做一些配置,这里就不细说了。
接下来我们安装appiumserver。可以到官网下载。
下载地址:https://github.com/appium/appium-desktop/releases/tag/v1.7.1
windows 操作系统 x86_64 处理器下载 appium-desktop-setup-1.7.1.exe 就可以了。
启动appium
点击 start server v1.9.1
这样appium server 就启动了。
最后我们来配置单元测试工程。
启动visual studio ,创建一个单元测试工程。
在 nuget 中查找 appium (tools ->nuget package manager -> manage nuget package for solution…)
找到 appium.webdriver ,选择单元测试工程进行安装。
完成后使用下面代码替换自动生成的单元测试代码。运行单元测试,就可以看到如下模拟器中的计算器被打开,并点击了数字5。如下图:
using microsoft.visualstudio.testtools.unittesting; using openqa.selenium.remote; using system; namespace androidtest { [testclass] public class unittest1 { [testmethod] public void testmethod1() { desiredcapabilities capabilities = new desiredcapabilities(); capabilities.setcapability("devicename", "android emulator"); capabilities.setcapability("automationname", "appium"); capabilities.setcapability("platformname", "android"); capabilities.setcapability("platformversion", "6.0"); //可以根据自己的模拟器版版本进行修改。 capabilities.setcapability("apppackage", "com.android.calculator2"); //安卓自带计算器 capabilities.setcapability("appactivity", ".calculator"); remotewebdriver wd = new remotewebdriver(new uri("http://127.0.0.1:4723/wd/hub"), capabilities); try { var result = wd.findelementbyid("digit_5"); result.click(); } catch (exception ex) { console.writeline(ex.message); } finally { wd.quit(); } } } }
上面代码最重要的就是关于 capabilities.setcapability 的参数,具体参数可以看官方的文档说明。官方说明如下:
http://appium.io/docs/en/writing-running-appium/caps/
好了,关于使用c#单元测试和appium进行android 测试环境的搭建就结束了。
以上就是详解搭建基于c#和appium的android自动测试环境的详细内容,更多关于搭建基于c#和appium的android自动测试环境的资料请关注www.887551.com其它相关文章!