(更新2017.05.08)Appium(JAVA)Windows 7系統搭建及示例執行
1、搭建Android環境
注:需要設定系統變數“ANDROID_HOME”。
2、下載安裝Eclipse及ADT
3、安裝Microsoft .NET Framework 4.5
3、安裝Appium(安裝前必須安裝上一步的Microsoft .NET Framework 4)
(1)下載地址:
下載完畢後直接執行appium-desktop-Setup-1.0.0.exe 安裝直至完畢。
4、建立虛擬機器或使用實際裝置
建立一個4.4.2的虛擬機器
5、建立Java工程(Eclipse)
(1)啟動Eclipse;
(2)點選“File”>“New”>“Project...”;
(3)選擇點選“Java Project”;
(4)“Project name”輸入“AppiumDemo”;
(5)點選“Finish”,彈出對話方塊點選“yes”;
(6)“src”目錄滑鼠右鍵“New”>“Package”,輸入“com.test”(此處可以自己定義);
(7)在“com.test”滑鼠右鍵“New”>“Class”,輸入Name為“AppiumTest”,並點選“Finish”按鈕;
(8)匯入Selenium類庫
- 解壓縮到本地;
- 在專案滑鼠右鍵點選“Properties”,點選左側欄“Java Build Path”,點選“Libraries”,點選“Add External JARs”按鈕,選擇本地jar檔案新增。
注:需要匯入兩個Jar,一個是客戶端,一個是服務端,服務端庫不匯入會導致執行時報錯。
(9)匯入Appium類庫(方法同上)
注:此處如果選擇下載最新的2.0以上的版本,會導致編譯new
AppiumDriver時報錯。解決辦法見:
http://blog.csdn.net/zhubaitian/article/details/39717889
6、執行Appium示列
(1)下載示例程式
並將該apps放到當前專案的apps目錄下(目錄自行建立)
(2)下載示例程式測試
內容經過更改如下
package com.Demo;
import io.appium.java_client.AppiumDriver;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import java.io.File;
import java.net.URL;
import java.util.List;
public class AppDemo {
private AppiumDriver driver;
@Before
public void setUp() throws Exception {
// set up appium
File classpathRoot = new File(System.getProperty("user.dir"));
File appDir = new File(classpathRoot, "apps");
File app = new File(appDir, "ContactManager.apk");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("deviceName","Android Emulator");
capabilities.setCapability("platformVersion", "4.4");
capabilities.setCapability("app", app.getAbsolutePath());
capabilities.setCapability("appPackage", "com.example.android.contactmanager");
capabilities.setCapability("appActivity", ".ContactManager");
driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
}
@After
public void tearDown() throws Exception {
driver.quit();
}
@Test
public void addContact(){
WebElement el = driver.findElement(By.name("Add Contact"));
el.click();
List<WebElement> textFieldsList = driver.findElementsByClassName("android.widget.EditText");
textFieldsList.get(0).sendKeys("Some Name");
textFieldsList.get(2).sendKeys(" [email protected]");
driver.swipe(100, 500, 100, 100, 2);
driver.findElementByName("Save").click();
}
}
(3)啟動android4.4.2虛擬機器
(4)命令列啟動後輸入:appium
(5)專案右鍵>“Run As”>“JUnit Test”(選擇Eclipse JUnit Launcher)
以上步驟確認可以執行成功,但由於筆者也是剛接觸Appium,可能存在遺漏,也請大家幫忙指出,另外也可以使用maven和相關Eclipse外掛會更方便些,網上例子很多可自行查詢。
相關推薦
(更新2017.05.08)Appium(JAVA)Windows 7系統搭建及示例執行
1、搭建Android環境 注:需要設定系統變數“ANDROID_HOME”。 2、下載安裝Eclipse及ADT 3、安裝Microsoft .NET Framework 4.5 3、安裝Appium(安裝前必須安裝上一步的Microsoft .NET Fr
Appium(JAVA)Windows 7系統搭建及示例執行
1、搭建Android環境 注:需要設定系統變數“ANDROID_HOME”。 2、安裝Node.js 下載相關作業系統的版本 安裝過程,一路“Next”。 3、安裝Appium (1)下載地址:http://appium.io/ 下載完畢後解壓
資料結構與演算法(2)—— 棧(java)
1 棧的實現 1.1 簡單陣列實現棧 package mystack; public class ArrayStack { private int top; //當前棧頂元素的下標 private int[] array; public ArraySt
資料結構與演算法(3)—— 佇列(java)
1 陣列實現的佇列 public class ArrayQueue { private String[] items; private int n=0; //陣列的大小 private int head
前(AngluarJS)後(Java)端分離微信授權
1、前端請求正常介面,進入攔截器,後臺從Cookie中沒取到值,返回54000給前端。 2、由前端頁面發起授權跳轉(跳轉到微信官方的那個授權介面)。 3、使用者點選同意後,跳轉後臺介面接收code。 4、後端通過code獲取使用者的access_token和openid,然後獲取使用者資訊,進行登入/註冊,將
Nginx(代理) + Tomcat(Java) + Apache(PHP) 共用80埠,叢集
問題闡述:很多時候我們一臺伺服器同時安裝了 java執行環境、php執行環境、.net執行環境,不同的環境會使用不同的埠,那麼訪問的時候就需要用不同的埠來訪問專案,顯然這對使用者的友好度不行。文章目的:解決的核心問題是:使用一個80埠,根據域名或者子域名 同時訪問java +
Spark+ECLIPSE+JAVA+MAVEN windows開發環境搭建及入門例項【附詳細程式碼】
前言 本文旨在記錄初學Spark時,根據官網快速入門中的一段Java程式碼,在Maven上建立應用程式並實現執行。 首先推薦一個很好的入門文件庫,就是CSDN的Spark知識庫,裡面有很多spark的從入門到精通的形形色色的資料, 1.開發軟體恭喜你,拿到spark駕考
2017面向對象程序設計(Java) 第1周學習指導及要求(2017.8.24-2017.8.27)
令行 str applet 面向 學習目標 對象 com 變量 課程學習 2017面向對象程序設計(Java) 第1周學習指導及要求(2017.8.24-2017.8.27) 學習目標 了解課程上課方式及老師教學要求,掌握課程學習必要的軟件工具; 簡單了解Java特點
對於“2017面向對象程序設計(Java)第五周工作總結”存在問題的反饋及本周教學計劃
語法 調整 特點 構造 選擇 問題 關於 答疑 功夫 一:問題反饋 “上周我們學習的新內容主要是第五章,並對第四章內容做了鞏固。從學生上交的實驗報告完成情況以及學習Java心得博客中的反饋可以看出,學生對構造器、重載、超類、多態、抽象類這幾個概念理解的不到位,仍有困惑,在具
HDU——1166(敵兵佈陣 )單點更新,區間求和(java)
C國的死對頭A國這段時間正在進行軍事演習,所以C國間諜頭子Derek和他手下Tidy又開始忙乎了。A國在海岸線沿直線佈置了N個工兵營地,Derek和Tidy的任務就是要監視這些工兵營地的活動情況。由於採取了某種先進的監測手段,所以每個工兵營地的人數C國都掌握的一清二楚,每個工兵營地的人數都有可能發生
CCF CSP 2017 12-1 最小差值 (java)
問題描述試題編號:201712-1試題名稱:最小差值時間限制:1.0s記憶體限制:256.0MB問題描述:問題描述 給定n個數,請找出其中相差(差的絕對值)最小的兩個數,輸出它們的差值的絕對值。輸入格式 輸入第一行包含一個整數n。 第二行包含n個正整數,相鄰整數之間使用
2017 暑期實習校園招聘(Java後臺開發方向)面經分享
分享一下我這兩個月裡找暑期實習過程中記錄總結的面試經驗吧,希望能對大家有所幫助。本人研二,電子科學與技術專業,本科電子資訊科學與技術專業,有三個多月的java開發實習經驗,暑期實習投遞的是Java研發工
Appium左右、上下滑動(Java)
網上很多文章都說用swipe來左右滑動,你把程式碼一貼,結果報錯,看半天,原來是java-client中swipe早就被廢除了!!!下面介紹一種Java寫法來左右上下滑動: 首先,建立一個Swipe類 import org.openqa.selenium.
2017華為校招粵港澳廣州場it應用軟體開發(java)面經
先說整個流程吧,我走的華為校招通道。在官網投了簡歷後會有線上程式設計題(9.23)和線上性格測試(9.24),接下來就是面試(10.11),面試完就是等結果了,先是簡訊通知通過面試進入offer資源池(10.16)然後是簡訊通知簽約邀請(10.26),收到簽約邀請就是拿到o
2017第八屆藍橋杯 01 外星日曆(java)
標題:外星日曆某星系深處發現了文明遺蹟。他們的計數也是用十進位制。他們的文明也有日曆。日曆只有天數,沒有年、月的概念。有趣的是,他們也使用了類似“星期”的概念,只不過他們的一個星期包含了9天,為了方便,這裡分別記為: A,B,C....H,I從一些資料上看到,他們的23日是星
排序算法之高速排序(Java)
大於 一個數 大小 main div 移動 swap 交換 system //高速排序 public class Quick_Sort { // 排序的主要算法 private int Partition(int[] data, int start, int en
session與cookie-----2017-05-08
之前 控制 uid -- 5-0 php代碼 會話 默認 安全性 會話控制:目的是記錄不同用戶身份。 1、session:有實效性 特點: (1)存在在服務器 (2)每個用戶都會存一份 (3)可以存儲任意類型的數據 優點:安全性高 缺點:服務器壓力過大 2、
2017/05/08學習筆記
信號量 存儲器 運行時 程序代碼 數據位 內容 提高 加載 數據區 我們將處理器的指令集架構和處理器的微體系結構區分開來:指令集架構描述的是每條機器代碼效果,而微體系結構描述的是處理器實際上是如何實現的。 運行程序 當我們在鍵盤上輸入字符串./hello後,shell程序將
《劍指offer》面試題39 二叉樹的深度(java)
設計模式 博客 rgs 歷史 存在 復制 pri 取值 今天 摘要: 今天翻到了《劍指offer》面試題39,題目二中的解法二是在函數的參數列表中通過指針的方式進行傳值,而java是沒有指針的,所以函數要進行改造。然而我翻了下別人的java版本(我就想看看有什麽高大上的改造
selenium測試(Java)--元素操作(五)
ear 獲取驗證碼 wid 輸入 static pri 元素 sta email 元素的操作有 1. 清除文本 2. 模擬按鍵輸入 3. 單擊元素 4. 返回元素尺寸 5. 獲取文本 6. 獲取屬性值 7. 判斷是否可見 8. 提交 下面通過操