对java熟悉一些,所以想用java把appium给做起来。今天用myeclipse给环境和Demo弄了一下,网上没有一篇全套资料的。

各块环境的搭建:

1、安装appium客户端,省略下载和安装步骤

2、在myeclipse中新建一个java project,省略步骤,我的结构是这样的

3、在java project中新建libs和apps的目录,用于存放第三方jar包和apk包

java-client-4.1.2.jar

链接:http://pan.baidu.com/s/1hse8yaw 密码:kijn

selenium-java-2.48.0.jar

链接:http://pan.baidu.com/s/1hrAgpmc 密码:f55p

selenium-server-standalone-2.48.0.jar

链接:http://pan.baidu.com/s/1gfhsqhd 密码:sma8

4、创建junit test cast:点击项目src-new-other-java-JUnit-JUnit test cast

然后调用普通java中的测试用例

我的测试用例:也就是连接appium-启动应用-关闭appium连接

 package pc.driver.com.cn;

 import io.appium.java_client.android.AndroidDriver;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL; import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities; public class AndroidTestDemo {
private AndroidDriver<WebElement> driver;
public void setUp(){
//设置apk的路径
File clasPathRoot = new File(System.getProperty("user.dir"));
File appDir = new File(clasPathRoot,"apps");
File app = new File(appDir,"modeng.apk");
//设置自动化相关参数
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "Android Emulator");
capabilities.setCapability(CapabilityType.BROWSER_NAME,"");
//设置安卓系统版本和平台
capabilities.setCapability("platformVersion", "4.4");
capabilities.setCapability("platformName", "Android");
//设置apk路径
capabilities.setCapability("app", app.getAbsolutePath());
//设置app的主包名和主类名
capabilities.setCapability("appPackage", "cn.com.pclady.modern");
capabilities.setCapability("appActivity", "cn.com.pclady.modern.module.launcher.SplashActivity"); //初始化
try {
driver =new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"),capabilities);
Thread.sleep(10000);
//driver.findElement(By.id("com.android.packageinstaller:id/ok_button")).click();
Thread.sleep(10000);
driver.quit();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
} }

这里要注意,如果find方法找元素无法找到,会报错,junit会报错

5、运行的时候,必是运行junit程序,

记得一定要关appium不然,再运行,会报无法创建新的session

如果成功:

然后完成后,再进入Console控制台打印我的日志输出。

OK了,一个简单的demo就可以了,但是如果要想用好appium,那它的api必须得熟悉如何调用才可以。再继续研究吧

appium+java+junit demo运行的更多相关文章

  1. 如何利用 JConsole观察分析Java程序的运行,进行排错调优

    原文链接:http://jiajun.iteye.com/blog/810150 一.JConsole是什么 从Java 5开始 引入了 JConsole.JConsole 是一个内置 Java 性能 ...

  2. 利用jdk自带的运行监控工具JConsole观察分析Java程序的运行

    利用jdk自带的运行监控工具JConsole观察分析Java程序的运行 原文链接 一.JConsole是什么 从Java 5开始 引入了 JConsole.JConsole 是一个内置 Java 性能 ...

  3. java Junit 测试中异常处理

    错误提示: junit.framework.AssertionFailedError: No tests found in错误解决办法 用junit Test运行后,出现如下的错误:junit.fra ...

  4. JVM学习001通过实例总结Java虚拟机的运行机制

    JVM学习(1)——通过实例总结Java虚拟机的运行机制-转载http://www.cnblogs.com/kubixuesheng/p/5199200.html 文章转载自:http://www.c ...

  5. appium+java (六) 手机chrome浏览器操作

    一.前言 早之前写过一段时间的appium for native app(即原生app脚本),但尴尬的是从未写过类似的文章,后期有时间我会陆续接着写,近一阶段有时间又把appium捡起来了,由于公司产 ...

  6. appium+java(五)微信小程序自动化测试实践

    前言: 上一篇<appium+java(四)微信公众号自动化测试实践>中,尝试使用appium实现微信公众号自动化测试,接着尝试小程序自动化,以学院小程序为例 准备工作 1.java-cl ...

  7. JDK自带的运行监控工具JConsole观察分析Java程序的运行

    原文地址:https://blog.csdn.net/libaolin198706231987/article/details/55057149 一.JConsole是什么 从Java 5开始 引入了 ...

  8. Java Junit测试框架

    Java    Junit测试框架 1.相关概念 Ø JUnit:是一个开发源代码的Java测试框架,用于编写和运行可重复的测试.它是用于单元测试框架体系xUnit的一个实例(用于java语言).主要 ...

  9. 如何利用JConsole观察分析JAVA程序的运行

    今天在CSDN看到一朋友说关于对JVM的研究,正好看到有关于jconsole的文章,特意找了下资料,留着备用 ps:jconsole建议用JDK1.6的1.5的界面太简陋了,另外还有增强版jvisua ...

随机推荐

  1. asp.net、 mvc session影响并发

    现象:在一个网站中,当访问一个处理比较耗时的页面(A页面),页面请求还没有返回时,此时再点击访问该网站的其他页面(B页面)会出现B页面很久都没有响应和返回,直到A页面输出返回数据时才开始处理B页面的请 ...

  2. Javascript中的循环变量声明,到底应该放在哪儿?

    相信很多Javascript开发者都在声明循环变量时犹豫过var i到底应该放在哪里:放在不同的位置会对程序的运行产生怎样的影响?哪一种方式符合Javascript的语言规范?哪一种方式和ecma标准 ...

  3. ajax post(copy part)

    srcpage var q=new XMLHttpRequest(); var data='usr=weidiao&pwd=haha'; data=encodeURI(data); var u ...

  4. 《HTTP 权威指南》

    第一篇:  Web基础  (HTTP概述. URL.HTTP报文.连接管理) 0. scheme:方案!     协议类型 1.HTTP:超文本传输(状态转移)协议:通信协议方案.     web浏览 ...

  5. 《Javascript DOM编程艺术》 读书笔记 —— 好书,通俗易懂!!!!! 相当的严谨!!!!

    1.javascript弱类型语言,解释性语言. 2.javascript数据类型:字符串(String).数字(Number).布尔(Boolean).数组(Array).对象(Object).空( ...

  6. oracle 在分区内查询数据

    查看当前分区 select t.partition_name,t.num_rows from all_tab_partitions t where table_name='table_name' 单个 ...

  7. iOS开发小技巧--根据文字,计算label中文字高度

  8. ie-css3.htc 可以让IE低版本浏览器支持CSS3 的一个小工具

    ie-css3.htc 先说道说道这斯是弄啥嘞 ie-css3.htc是一个可以让IE浏览器支持部份CSS3属性的htc文件,不只是box-shadow,它还可以让你的IE浏览器支持圆角属性borde ...

  9. SSM框架搭建(转发)

    SSM框架,顾名思义,就是Spring+SpringMVC+mybatis. 通过Spring来将各层进行整合, 通过spring来管理持久层(mybatis), 通过spring来管理handler ...

  10. 【POJ 1269】判断两直线相交

    题 利用叉积解方程 #include <cstdio> #define MAX 1<<31 #define dd double int xmult(dd x1,dd y1,dd ...