1. 程式人生 > >Monkeyrunner學習之任意節點控制元件獲取及獲取對應控制元件的相對座標實現對控制元件的操作

Monkeyrunner學習之任意節點控制元件獲取及獲取對應控制元件的相對座標實現對控制元件的操作

最初我是用device.touch(button_x,button_y,'')的方法來實現對終端介面的操作,使用過程中發現這種方式可移植性很差,便發現了使用控制元件ID的方式來操作,我通過下面這2篇文章學習到如何獲取任意節點控制元件以及獲取其相對座標進行操作

原文:http://www.51testing.com/html/81/22381-854342.html

百度文庫:http://wenku.baidu.com/link?url=XbyfngGfFsbd3loF5Jbc9EQhBr9mgbmyKm1YeHFuwOMklxFzNbCPugxVkaAHu6fIPkE_-uT6NIe-tidCzxjXXnpz-YdBckPvOKS9-a9AsAS

通過文件中的函式,我實現了安卓5.1中從設定進入WI-FI的操作,設定主介面相應控制元件的ID都是重複的,所以必須要獲取想要操作的子節點控制元件ID,程式碼如下:


但是此程式碼在次需要獲取節點控制元件ID時都需要複製一遍程式碼,並且修改相應的父控制元件ID以及節點,我希望將此程式碼中定義的2個函式在我需要的時候直接匯入,不用再次複製所有的相關程式碼,所以我對上面的程式碼進行了下面的改善:


以上是我在通過Monkeyrunner學習Android自動化過程中的一點收貨,希望我可以在自動化測試的道路上一點點進步。第一次發文,描述中有不準確的地方請各位指正,祝大家學習愉快!

相關推薦

Monkeyrunner學習任意節點控制元件獲取獲取對應控制元件相對座標實現控制元件操作

最初我是用device.touch(button_x,button_y,'')的方法來實現對終端介面的操作,使用過程中發現這種方式可移植性很差,便發現了使用控制元件ID的方式來操作,我通過下面這2篇文章學習到如何獲取任意節點控制元件以及獲取其相對座標進行操作 原文:http

MFC學習 對話方塊設定背景顏色控制元件透明的方法

對話方塊設定背景色之後控制元件不透明的問題。 1.對話方塊設定背景色: 方法1:(用OnPaint()) 在Dlg.h中:宣告 afx_msg void OnPaint();                                HICON m_hIcon; 在Dl

Elasticsearch學習ES節點類型以及各種節點的分工

重要 決定 ont 增刪改查 和數 建議 獨立 cpu bsp ES各種節點的分工 1. 客戶端節點   當主節點和數據節點配置都設置為false的時候,該節點只能處理路由請求,處理搜索,分發索引操作等,從本質上來說該客戶節點表現為智能負載平衡器。獨立的客戶端節點在一個比較

nio學習channel,基於流的方式獲取channel

package nio; import java.io.FileInputStream; import java.io.FileOutputStream; import java.nio.ByteBuffer; import java.nio.channels.FileCh

wepy學習路2-初始化專案額外元件的使用

文章目錄 基礎專案生產 1、使用wepy指令生成一個空wepy專案 2、安裝npm依賴包 3、關閉eslint程式碼檢查 4、配置完成 額外元件

JS Node節點的 屬性、方法 &獲取

JS Node節點的常見屬性和方法使用 & 如何獲取相應節點和值 一、節點的常用屬性和方法 (一)通過具體的元素節點呼叫如下方法和屬性 《1》getElementsByTagName() 方法,獲取當前節點的指定標籤名孩子節點 《2》a

Monkeyrunner學習二(如何使用id去點選的方法)

Monkeyrunner學習之一中學習到如何檢視控制元件id,接下來我們學習Monkeyrunner如何使用id去點選的方法 from com.android.monkeyrunner import MonkeyRunner, MonkeyDevicefrom com.an

Monkeyrunner學習

MonkeyRunner是Google Android SDK下的一個工具,用於自動化測試Android程式。 Monkeyrunner工具提供了一套API,使用這些api寫出的Python程式可以在黑盒地控制Android設定和模擬器。有了Monkeyrunner,我們

Android Studio學習路 --通過json傳圖片id獲取圖片的數據適配器

控件 text 賦值 文件 pac settag pre imageview flat 因為圖片的Id是int類型的,而json直接傳過來的值是字符串,如果你強制轉化,會報 非法的int數據, 所以我就在網上了解到 int img = getResources().

Linux學習路-Linux-DHCP設置PXE【13】---20180101

tla x86 rect gte vml 實現 安全性 itl pass 一、DHCP服務 DHCP(動態主機配置協議)是一種協議,它允許IP網絡上的各個設備從DHCP服務器獲取自己的網絡配置信息(IP地址,子網掩碼,廣播地址等)。 DHCP的總體目的是使管理

React學習旅----mock模擬假資料封裝axios,動態渲染表格

import React from 'react'; import { Card, Table, Modal, Button, message } from 'antd'; import axios from './../../axios/index' import Utils from './..

React學習旅----配置多頁面路由巢狀路由demo

const menuList = [ { title: '首頁', // key: '/home' key: '/admin/home' }, { title: 'UI', key: '/ui', children: [ {

Linux 學習路(二):使用者許可權詳解

作業: 1.ls 命令是否可以顯示某目錄的整體大小,即包括其內部的所有檔案的整體大小? 可以,使用ls -s xxx 2.通過幫助手冊,學習使用du命令: # du 估計檔案空間使用量 ​ -s 分割資料夾,不包括子目錄大小 ​ -h 以可讀格式展示

Git學習路(五)-通過branch刪除恢復分支

一、通過branch刪除分支 1、刪除一個已被終止的分支 如果需要刪除的分支不是當前正在開啟的分支,使用branch -d直接刪除 $ git branch -d <branch_name> 2、刪除一個正開啟的分支 如果我們在試圖刪除一個分支時自己還沒轉移到

VVC程式碼 BMS 幀內預測學習六:Planar、DC角度模式下預測值的計算

1、Planar模式,函式xPredIntraPlanar(): 預測畫素是水平、垂直兩個方向上4個參考畫素的平均值。 left, top為預測畫素正左,正上方參考畫素值; right = leftColumn[height]- left, bottom =

JavaWeb學習Servlet(一)----MyEclipseTomcat的配置(jdk1.8)

【宣告】 【開發環境】 物理機版本:Win 7旗艦版(64位) jdk版本:jdk1.8.0_20 MyEclipse版本:10.7.1 Tomcat版本:apache-tomcat-7.0.57 一、Servlet的基本概念: Servlet是su

四十五、python學習Djnago(DRF框架一):介紹環境搭建

引入DjangoRESTframework 一、Web應用模式: 在開發Web應用中,有兩種應用模式: 前後端不分離 前後端分離 1.前後端不分離:   在前後端不分離的應用模式中,前端頁面看到的效果都是有後端控制的,有後端渲染頁面重定向,也就是後端需要控

Spring系列學習Spring Cloud Zookeeper服務發現分散式配置

英文原文:https://spring.io/projects/spring-cloud-zookeeper 目錄 概述 特性 快速開始 學習 文件 示例 概述 Spring Cloud Zookeeper通過自動配置和Spring環境以及其他Spring程式

Python小白學習路(二十)—【開啟檔案的模式二】【檔案的其他操作

開啟檔案的模式(二) 對於非文字檔案,我們只能使用b模式,"b"表示以位元組的方式操作(而所有檔案也都是以位元組的形式儲存的,使用這種模式無需考慮文字檔案的字元編碼、圖片檔案的jgp格式、視訊檔案的avi格式) rb:    以位元組方式讀檔案 wb:  以位元組方式寫檔案ab:   以位元組方式追加檔案 注

你想看的整合學習bagging和boosting區別特徵例子

這篇文章主要講述整合學習的bagging和boosting。 首先bagging和boosting是整合學習的兩個大家族,每個家族也包括很多成員,例如boosting包括adaboost、xgboost,bagging也有RandomForest等方法。既然b