Appium模拟登录最美天气app

主要技术及工具:Python+Appium+Pytest+Genymotion+UIAutomatorViewer
以最美天气apk进行示范。
1.进入app,需要选择地址(以北京为例)。
image.png
2.选择地址后,要进行新手指导,需要点击屏幕两下。
image.png
3.个人主页 - '我' 定位 '登录账号' 选项
image.png
4.输入账号密码 登录成功。
image.png
上代码。
from appium import webdriver
import pytest
import time

class TestZmWeather:

    # 初始化
    def setup_class(self):
        # 服务启动参数配置
        desired_caps = {}
        desired_caps['platformName'] = 'Android'
        desired_caps['platformVersion'] = '4.2.2'
        desired_caps['deviceName'] = '192.168.56.101:5555'
        # 最美天气APK包名
        desired_caps['appPackage'] = 'com.icoolme.android.weather'
        # Activity
        desired_caps['appActivity'] = '.activity.MainWeatherActivity'
        # 服务器注册参数
        self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

    def test_login(self):
        self.driver.implicitly_wait(5)
        # 进入首页后 定位城市为北京
        self.driver.find_element_by_xpath('//*[@text = "北京"]').click()

        time.sleep(5)
        # 点击两下屏幕 去除新手指引
        self.driver.find_element_by_xpath('//*[@index = "2"]').click()
        time.sleep(3)
        self.driver.find_element_by_xpath('//*[@text = "我"]').click()
        time.sleep(3)

        # 定位到 '我'
        self.driver.find_element_by_xpath('//*[@text = "我"]').click()
        time.sleep(3)

        # 登录账号
        self.driver.find_element_by_xpath('//*[contains(@text = "账号")]').click()
        time.sleep(3)

        # 账号密码
        self.driver.find_element_by_xpath('//*[contains(@text = "请输入手机号")]').send_keys('你的账号')
        time.sleep(3)

        self.driver.find_element_by_xpath('//*[@password = "true"]').send_keys('你的密码')
        time.sleep(3)

        # 登录
        self.driver.find_element_by_xpath('//*[contains(@text = "登录")]').click()
        time.sleep(3)

    def teardown_class(self):
        self.driver.quit()

    # PS: 运行命令: pytest -s 文件路径/文件名称

你可能感兴趣的:(Appium模拟登录最美天气app)