提供思路,别粘贴,可能报错
listview我们在android端测试,就是从几个方面入手,比如item的数量,page是否正确,代码逻辑是否使用了优化等等
在这里我就写一个简单点的listview实验一下
def test_listview_scroll(self):
# 注意 在ios里面叫 tableview,androd 里面叫listview, H5里面没有列表控件,都是for循环直接搞定
# H5 通过js首先滑动
# 点击一下:
btn_click_webview = self.driver.find_element_by_id("com.bawei.a1509e:id/btn_click_webview")
btn_click_webview.click()
time.sleep(5)
# 查询一组listview控件
items = self.driver.find_elements_by_id("com.bawei.a1509e:id/tv_mylistview")
# listvie 使用的控件复用,也就是说我们的控件,其实没有20个,只比屏幕的控件多一个
print items,len(items)
# 设置从第0个滑动5个
# self.driver.scroll(items[5],items[2])
action = TouchAction(self.driver);
action.long_press(items[5]).move_to(items[1]).release().perform()
# 休眠
time.sleep(10)
pass
九宫格解锁:思路:是通过定位的坐标进行模拟手势滑动的
def test_gesture(self):
# 点击返回键盘
self.driver.keyevent(4)
# 设置休眠
time.sleep(4)
# 点击 iv_left_view
iv_left_view = self.driver.find_element_by_id("com.jifenguanggao.weijifen:id/iv_left_view")
# 点击一下
iv_left_view.click()
# 休眠
time.sleep(2)
linearlayout_safe_center = self.driver.find_element_by_id("com.jifenguanggao.weijifen:id/linearlayout_safe_center")
linearlayout_safe_center.click()
# 进行解锁
action = TouchAction(self.driver)
# 手势滑动
# action.press(x=567,y=490).wait(1000)\
# .move_to(x=370,y=480).wait(1000)\
# .move_to(x=170,y=482).wait(1000)\
# .move_to(x=375,y=690).wait(1000)\
# .move_to(x=573,y=893).wait(1000)\
# .move_to(x=367,y=896)\
# .release()\
# .perform()
action.press(x=567, y=490).wait(1000) \
.move_to(x=-197, y=0).wait(1000) \
.move_to(x=-200, y=0).wait(1000) \
.move_to(x=197, y=210).wait(1000) \
.move_to(x=197, y=203).wait(1000) \
.move_to(x=-197, y=0) \
.release().wait(100)\
.perform()
# action.press(x=567, y=490).wait(100)\
# .move_to(x=-197, y=0).wait(100)\
# .release().wait(100)\
# .perform()
pass
# 切换到H5 进行网页控件元素的查找
def test_switch_to_webview(self):
# 查找webview 控件
btn_click_webview = self.driver.find_element_by_id("com.bawei.a1509e:id/btn_click_webview")
btn_click_webview.click()
# 设置休眠
time.sleep(2)
# 查找H5控件
# my_webview = self.driver.find_element_by_id("com.bawei.a1509e:id/my_webview")
# 获取所有窗口
windows = self.driver.contexts
print windows
# 使用 for循环切换到H5窗口
for windwow in windows:
if windwow == "WEBVIEW_com.bawei.a1509e":
# 切换到H5里面
self.driver.switch_to.context(windwow)
# 开始查找控件
word = self.driver.find_element_by_id("word")
bn = self.driver.find_element_by_class_name("bn")
# 输入内容
word.send_keys("helloword")
# 点击百度一下
bn.click()
# 设置休眠
time.sleep(2)
pass