测开学习DAY39

黑马程序员网课学习(Appium框架)

IOS

一、使用模拟器进行自动化测试

1. 运行 iOS 程序到模拟器

(1)使用 Xcode 打开要运行的程序

(2)选择将要运行的 程序 和 模拟器设备

(3)快捷键 command + r 运行

2. 查看 iOS 元素特征

(1)打开 appium

(2)启动 appium

(3)左上角菜单栏选择 appium - new session window

3. 编写和运行自动化脚本

python 复制代码
import time

from appium import webdriver

desired_caps = dict()
desired_caps['platformName'] = 'iOS'
desired_caps['platformVersion'] = '12.1.2'
desired_caps['deviceName'] = 'iPhone 6s Plus'
desired_caps['app'] = 'com.itcast.HMiOSTest'

# 真机需要使用的参数
desired_caps['udid'] = 'cda2396af94373603f21f071c322b957246cbd7f'

driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

# 点击 进入列表
driver.find_element_by_id("进入列表").click()

# 在控制台输出所有的文字内容
# 在 android 中只会查找到屏幕上所显示的控件
# 在 iOS 中都会找到控件,但是如果进行操作的时候,也同样需要展示在屏幕上
text_views = driver.find_elements_by_class_name("XCUIElementTypeStaticText")
for text_view in text_views:
    print(text_view.text)

# 滑动一次
# driver.swipe(100, 2000, 100, 1000)
driver.execute_script("mobile: swipe", {"direction": "up"})

# 点击 20
driver.find_element_by_xpath("//*[@name='20']").click()

# 清空文本框
text_field = driver.find_element_by_class_name("XCUIElementTypeTextField")
text_field.clear()

# 输入 hello
text_field.send_keys("hello!!!")

# 点击 返回
driver.find_element_by_xpath("//*[@name='Back']").click()

time.sleep(5)

driver.quit()

二、使用真机进行自动化测试

1. 运行 iOS 程序到真机

(1)在 Xcode 中登录自己的 Apple ID

(2)配置开发者信息

(3)选择将要运行的 程序 和 设备

(4)快捷键 command + r 运行

(5)在手机中进入 设置 - 通用 - 设备管理 - 自己Apple ID - 信任程序

(6)重新 command + r 运行

2. 配置 WebDriverAgent

(1)进入到下载的 WebDriverAgent 项目下

(2)输入命令 ./Scripts/bootstrap.sh

(3)启动 WebDriverAgent.xcodeproj

(4)配置 WebDriverAgentLib 的开发者信息

(5)配置 WebDriverAgentRunner 的开发者信息

(6)配置 IntegrationApp 的开发者信息

(7)修改 WebDriverAgentRunner 的 Product Bundle Identifier

(8)修改 IntegrationApp 的 Product Bundle Identifier

(9)数据线连接真机

(10)选择将要运行的 WebDriverAgentRunner 和 真机设备

(11)使用 command + u 运行

  • 稍等之后会在log中出来一个 url 地址
  • 在浏览器中打开这个地址,如果显示一串 json 数据即为正确连接手机
  • 并且,真机会多一个程序

(12)将配置好的 WebDriverAgent 项目替换到 appium 的 WebDriverAgent 项目

  • 打开 finder
  • 快捷键 command + shift + g
  • 输入路径 /Applications/Appium.app/Contents/Resources/app/node_modules/appiumxcuitest-driver
  • 回车
  • 将旧项目换个名字,当做备份
  • 将配置好的项目放在这个目录下

3. 运行自动化脚本

(1)修改对应的 platformVersion、deviceName

(2)查看 udid 并增加为启动参数

(3)运行即可

刷题记录:

1. 两数之和

相关推荐
小唔w15 分钟前
2026年AI培训行业观察:主流学习渠道一览
人工智能·学习
Nan_Shu_6141 小时前
学习:MapVGL 地理信息可视化
学习
皖山文武1 小时前
逻辑代数基础学习笔记--概述
笔记·学习·机器学习
fanged1 小时前
高通学习24--XBL(TODO)
学习
咸甜适中2 小时前
rust语言AI编程学习笔记(五)clap命令行参数解析
学习·rust·ai编程
诗句藏于尽头2 小时前
deepseek harness对接商汤科技免费大模型使用教程
人工智能·科技·学习
chemddd2 小时前
豆包生成 亚马逊链接的视频
学习·交友
weixin_431600442 小时前
NestJS 入门(7):生命周期钩子——构造函数和 `OnModuleInit` 差在哪?
前端·后端·学习·node.js·nest.js
工业HMI实战笔记3 小时前
解放双手,声控未来:抗噪语音交互如何革新嘈杂车间的HMI操作体验
人工智能·学习·自动化·制造
知识分享小能手3 小时前
线性代数学习教程,从入门到精通,相似矩阵及二次型 — 知识点详解(9)
学习·线性代数·机器学习