appium class代码(封装click动作)

作者在 2016-04-08 21:17:21 发布以下内容
#-*- coding:UTF-8 -*-  # 
'''
Created on 2016-4-8

@author: poptest
'''
import time
from appium import webdriver

class PublicFunClass(object):
    def clickAct(self,getType,getValue):  #将点击动作封装成def
        if getType == "id":
            return  lee.find_element_by_id(getValue).click() 
        elif getType == "name":
            return lee.find_element_by_name(getValue).click()
        elif getType == "link_text":
            return lee.find_element_by_link_text(getValue).click()
        elif getType == "xpath":
            return lee.find_element_by_xpath(getValue).click()
        
    def addgoodsaddress(self,userName,userTel,userAddr):
        time.sleep(3)
        M.clickAct("id","com.subject.zhongchou:id/avatar_img")    #登陆进去,点击头像、
        time.sleep(2)
        M.clickAct("id","com.subject.zhongchou:id/address_layout")   #点击地址
        time.sleep(2)
        M.clickAct("id","com.subject.zhongchou:id/add_address_btn")   #点击添加地址按钮 
        time.sleep(2)
        lee.find_element_by_id("com.subject.zhongchou:id/add_address_name_edit").send_keys(userName)     #进去后点击增加名字
        time.sleep(2)
        lee.find_element_by_id("com.subject.zhongchou:id/add_address_tel_edit").send_keys(userTel)    #输入手机号
        time.sleep(2)
        M.clickAct("id","android:id/text1")       #点击选择省份
        time.sleep(2)
        lee.swipe(360, 1000, 360, 370, 500)     #滑屏坐标,上下滑屏
        time.sleep(2)
        #需要滑屏2次,才能找见需要的省份
        lee.swipe(360, 1000, 360, 370, 500)
        time.sleep(2)
        lee.find_element_by_android_uiautomator("new UiSelector().text(\"山西\")").click()   #找见山西,点击选择
        time.sleep(2)
        M.clickAct("id","com.subject.zhongchou:id/add_address_city_name_text")      #    选择城市
        time.sleep(2)
        lee.find_elements_by_android_uiautomator("new UiSelector().className(\"android.widget.CheckedTextView\")")[2].click()    #选择下表为2 的城市
        time.sleep(2)
        lee.find_element_by_id("com.subject.zhongchou:id/add_address_detail_edit").send_keys(userAddr)     #输入地址
        time.sleep(1)
        M.clickAct("id","com.subject.zhongchou:id/save_text")       #点击保存
    def login(self,telPhone,passW):
        time.sleep(4)
        lee.find_elements_by_id("com.subject.zhongchou:id/item_name")[1].click()
        time.sleep(2)
        M.clickAct("id","com.subject.zhongchou:id/login_now_tv")      #点击登录
        time.sleep(3)
        lee.find_element_by_id("com.subject.zhongchou:id/loginnumber_phones").send_keys(telPhone)      #    输入手机号
        time.sleep(2)
        lee.find_element_by_id("com.subject.zhongchou:id/loginnumber_password").send_keys(passW)     #    输入密码
        time.sleep(2)
        M.clickAct("id","com.subject.zhongchou:id/go_numberlogin")

    def enterApp(self):
        global lee,M
        descried_caps={}
        descried_caps["unicodeKeyboard"] = "True"     #设置键盘
        descried_caps["resetKeyboard"] = "True"    #重设键盘
        descried_caps['device']='2014813'
        descried_caps['platformName']='Android'     #传输设备好   
        descried_caps['deviceName']='HM2014813'
        descried_caps['version']='5.1'
        lee = webdriver.Remote("http://127.0.0.1:4723/wd/hub",descried_caps)     #找见appium的IP地址和端口号  
        M = PublicFunClass()     #将类实例化
         
#-*- coding:UTF-8 -*-  # 
'''
Created on 2016-4-8

@author: poptest
'''
import unittest,time
from publicfunction import PublicFunClass
C = PublicFunClass.PublicFunClass()
class Test(unittest.TestCase):
    def setUp(self):
        C.enterApp()


    def tearDown(self):
        pass

    def testLogin(self):
        C.login("13613552859","111111")
        time.sleep(2)
        C.addgoodsaddress(u"李小龙","133333333333",u"it is diffcalt to do")  
        #如果放在不同的用例中,流程为setup-testlong-teardown,第二遍执行setup-test-testAddr.因为无法登陆所以会出现添加地址失败。
        
#    def testAddr(self):
#        C.login("13613552859","111111")
#        time.sleep(2)
#        C.addgoodsaddress(u"李小龙","13333333333",u"honest to express oneself")      
if __name__ == "__main__":
    #import sys;sys.argv = ['', 'Test.testName']
    unittest.main()
appium | 阅读 10880 次
文章评论,共0条
游客请输入验证码
浏览2344065次