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() # 返回到我的页
运行结果图:
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· 软件产品开发中常见的10个问题及处理方法
· Vite CVE-2025-30208 安全漏洞
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· MQ 如何保证数据一致性?