• appium +python 一个简单的例子


    appium 安装和python 安装好后。 

    1.      启动android模拟器--Genymotion-点击Start

    2.      启动appium 

    3.     运行代码。

    # -*- coding: utf-8 -*-
    from selenium import webdriver
    from selenium.webdriver import DesiredCapabilities
    from selenium.common.exceptions import TimeoutException
    from selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0
    from selenium.webdriver.support import expected_conditions as EC # available since 2.26.0
    from appium import webdriver
    import time
    import os

    desired_caps = {}

    desired_caps['platformName'] = 'Android'
    desired_caps['platformVersion'] = '4.2'
    desired_caps['deviceName'] = 'Android Emulator'
    desired_caps['app'] = os.path.abspath('../highpin_V100_91zhushou.apk')
    desired_caps['appPackage'] = 'com.zhaopin.highpin'
    desired_caps['appActivity'] = '.page.misc.starter'
    desired_caps['unicodeKeyboard'] = 'true'
    desired_caps['resetKeyboard'] = 'true'
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

    time.sleep(1)
    witdh = driver.get_window_size()['width']

    height = driver.get_window_size()['height']

    driver.swipe(witdh * 4 / 5, height / 2, witdh / 20, height / 2, 1000)
    driver.swipe(witdh * 4 / 5, height / 2, witdh / 20, height / 2, 1000) #滑屏

    driver.find_element_by_xpath("//android.widget.FrameLayout[@index='1']").click()
    time.sleep(5);
    driver.find_element_by_xpath("//android.widget.ImageView[@index='0']").click()
    driver.find_element_by_id("com.zhaopin.highpin:id/btn_keywords").click()
    time.sleep(2);
    driver.find_element_by_xpath("//android.widget.EditText[@index='1']").sendKeys("测试")
    time.sleep(5)
    driver.find_element_by_id("com.zhaopin.highpin:id/btn_submit").click()
    driver.find_element_by_id("com.zhaopin.highpin:id/btn_search").click()
    time.sleep(5)
    driver.find_element_by_xpath("//android.widget.ImageView[@index='0']").click()
    driver.find_element_by_xpath("//android.widget.ImageView[@index='0']").click()

    # 如果用户未登录状态 先切换到我的页 上点击登录/注册按钮

    driver.find_element_by_id("com.zhaopin.highpin:id/btn_tab_seeker").click() # 在我的页点击我的切换到登录页
    driver.find_element_by_id("com.zhaopin.highpin:id/tosign").click() # 在我的页面点击登录/注册按钮
    time.sleep(2)
    driver.find_element_by_id("com.zhaopin.highpin:id/my_editor").clear() # 用户名
    driver.find_element_by_id("com.zhaopin.highpin:id/my_editor").sendKeys("testzp@qq.com")
    time.sleep(5)
    driver.find_element_by_xpath(
    "//android.widget.FrameLayout[@index='2']//android.widget.EditText[@index='0']").clear() # 密码
    driver.find_element_by_xpath("//android.widget.FrameLayout[@index='2']//android.widget.EditText[@index='0']").sendKeys(
    "zp123456")
    time.sleep(5)
    driver.find_element_by_id("com.zhaopin.highpin:id/btn_signin").click() # 登录
    time.sleep(9)

    driver.find_element_by_xpath("//android.widget.LinearLayout[@index='0']").click() # 点击智能推荐进入详情页
    driver.find_element_by_xpath("//android.widget.TextView[@text='收藏']").click() # 收藏职位
    time.sleep(5)
    driver.find_element_by_xpath("//android.widget.TextView[@text='申请']").click() # 申请职位
    driver.find_element_by_id("com.zhaopin.highpin:id/nav_back").click()
    driver.find_element_by_id("com.zhaopin.highpin:id/btn_tab_seeker").click()
    driver.find_element_by_name("求职进展").click()

    driver.find_element_by_xpath("//android.widget.ImageView[@index='0']").click()
    driver.find_element_by_xpath("//android.widget.TextView[@text='我的收藏']").click()
    driver.find_element_by_xpath("//android.widget.TextView[@text='取消收藏']").click() # 取消收藏
    driver.find_element_by_xpath("//android.widget.Button[@text='确定']").click() # 确定取消收藏
    driver.find_element_by_xpath("//android.widget.ImageView[@index='0']").click() # 返回到我的页

    运行结果图:

    
    
  • 相关阅读:
    spring-cloud-gateway动态路由
    spring-cloud-gateway静态路由
    activiti6官方示例笔记
    spring-cloud-gateway过滤器实践
    spring-cloud-gateway简介
    设计模式--策略模式
    学习ConcurrentHashMap1.7分段锁原理
    SpringBoot Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
    MYSQL触发器的使用
    储存过程 (创建,调用,查询,删除)
  • 原文地址:https://www.cnblogs.com/wxll/p/6046230.html
Copyright © 2020-2023  润新知