1. 程式人生 > >第二章002 定位元素

第二章002 定位元素

date ets cli city getattr pre 否則 roi 定位

一、常用的定位元素方式

1、通過id

2、通過name

3、通過classname,常用於定位一組元素

4、通過xpath

二、獲取元素屬性

.text

.getattribute("text")

 1 #coding=utf-8
 2 from appium import webdriver
 3 import time
 4 
 5 desired_caps = {}
 6 desired_caps[platformName] = Android
 7 desired_caps[platformVersion] = 5.1
 8 desired_caps[deviceName
] = 6T3HMU162P007147 9 desired_caps[appPackage] = com.Qunar#被測app包名 10 desired_caps[appActivity] = com.mqunar.splash.SplashActivity#被測app的activity 11 desired_caps[unicodeKeyboard] = True #繞過系統自帶的鍵盤 12 desired_caps[resetKeyboard] = True 13 desired_caps[newCommandTimeout] = 7200 14 15 driver = webdriver.Remote(
http://127.0.0.1:4725/wd/hub, desired_caps)#啟動app 16 time.sleep(15)#增加等待時間,否則可能報錯,找不到元素 17 18 #進入汽車票 19 driver.find_element_by_id(com.mqunar.atom.alexhome:id/atom_alexhome_mod_bus_ticket).click() 20 time.sleep(5) 21 22 #獲取默認出發地 23 dep = driver.find_element_by_id("com.mqunar.atom.bus:id/atom_bus_tv_dep_city
") 24 print dep.get_attribute("text") 25 26 #獲取默認到達地 27 arr = driver.find_element_by_id("com.mqunar.atom.bus:id/atom_bus_tv_arr_city") 28 print arr.get_attribute("text") 29 #獲取默認日期 30 print driver.find_element_by_id("com.mqunar.atom.bus:id/atom_bus_tv_dep_date").text 31 32 #通過xpath定位搜索,並點擊搜索 33 driver.find_element_by_xpath("//android.widget.Button[@text=‘搜 索‘]").click() 34 time.sleep(5) 35 36 #xpath定位汽車票,點擊進入車次詳情 37 driver.find_element_by_xpath("//android.widget.LinearLayout[@index=‘3‘]").click() 38 time.sleep(10) 39 40 #name定位預訂車次,點擊進入預約界面 41 driver.find_element_by_name(u"汽車票預訂").click() 42 time.sleep(5)

三、元素賦值

1、屏蔽軟鍵盤

增加兩行代碼

技術分享圖片

代碼如下

desired_caps[unicodeKeyboard] = True  #屏蔽軟鍵盤
desired_caps[resetKeyboard] = True

2、輸入中文

在前面加上小u,如driver.find_element_by_id("com.mqunar.patch:id/pub_pat_title_etSearch").send_keys(u"上海")

第二章002 定位元素