Appium代码实例

【Appium代码实例】千金一刻莫空度,老大无成空自伤。这篇文章主要讲述Appium代码实例相关的知识,希望能为你提供帮助。

#coding=utf-8 from appium import webdriver from appium.webdriver.common.touch_action import TouchAction from selenium.webdriver.common.by import By import pytest from hamcrest import * ‘‘‘ appium入门,简单事例pytestsetup_class 类初始化时运行一次后面不再运行 setup每次都运行 hamcrest https://pypi.org/project/PyHamcrest/ ‘‘‘class TestAppium:@classmethod def setup(self): server = "http://localhost:4723/wd/hub" caps = {} caps["platformName"] = "android" caps["deviceName"] = "emulator-5554" caps["appPackage"] = "com.xueqiu.android" caps["appActivity"] = ".view.WelcomeActivityAlias" # caps["app"] = "./app/xueqiu.apk" #每次跑用例不重置app caps["noReset"]=True #权限弹窗自动处理 caps["autoGrantPermissions"] = Trueself.driver = webdriver.Remote(server, caps)self.driver.implicitly_wait(15)def test_phone(self):self.driver.find_element_by_xpath("//*[@text=‘我的‘]").click() self.driver.find_element(By.XPATH,"//*[@text=‘手机号‘]").click() self.driver.find_element_by_id("com.xueqiu.android:id/register_phone_number").send_keys("18612977085") print(self.driver.find_element_by_id("com.xueqiu.android:id/register_phone_number").get_attribute("class"))#获取当前activity print(self.driver.current_activity) print(self.driver.current_context) # print(self.driver.current_window_handle) # print(self.driver.current_url)def testswipe(self): self.driver.find_element_by_xpath("//*[@text=‘行情‘]").click()self.driver.find_element_by_xpath("//*[@text=‘市场‘]").click() size=self.driver.get_window_size() width=size["width"] height=size["height"] self.driver.swipe(width*0.8,height*0.8,width*0.8,height*0.1,1000) def test_long_press(self): self.driver.find_element_by_xpath("//*[@text=‘行情‘]").click() el=self.driver.find_element_by_xpath("//*[@text=‘伊利股份‘]") TouchAction.press().wait().move_to().perform() ‘‘‘ press按住某个空间,wait等待,moveto移动到某个空间,perform执行操作 long_press长按操作 ‘‘‘ TouchAction(self.driver).long_press(el,3000).perform()@pytest.mark.parametrize("keywords,stock_type,prices",[ ("阿里巴巴","BABA","202.67"), ("小米","01810","10.20") ]) def test_search(self,keywords,stock_type,prices): self.driver.find_element_by_id("com.xueqiu.android:id/tv_search").click() self.driver.find_element_by_id("com.xueqiu.android:id/search_input_text").send_keys(keywords) # lis=self.driver.find_elements_by_id("com.xueqiu.android:id/name") self.driver.find_elements_by_id("com.xueqiu.android:id/name")[0].click()# for i in lis: #if i.text==u"阿里巴巴": #i.click() #break price = self.driver.find_element_by_xpath("//*[contains(@text,‘"+stock_type+"‘)]/../../..//*[contains(@resource-id,‘current_price‘)]").text assert price==prices # self.driver.find_element_by_xpath("//*[contains(@text,‘阿里‘)]")def teardown(self): self.driver.quit()

 

    推荐阅读