测开学习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. 两数之和

相关推荐
龙文浩_24 分钟前
Attention Mechanism: From Theory to Code
人工智能·深度学习·神经网络·学习·自然语言处理
爱上好庆祝2 小时前
svg图片
前端·css·学习·html·css3
嵌入式小企鹅2 小时前
蓝牙学习系列(八):BLE L2CAP 协议详解
网络·学习·蓝牙·ble·协议栈·l2cap
jiayong234 小时前
第 8 课:开始引入组合式函数
前端·javascript·学习
格鸰爱童话4 小时前
向AI学习项目技能(五)
java·学习
技术人生黄勇4 小时前
拆解 Hermes Agent:开源 Agent 里唯一的闭环学习系统
学习
凉、介5 小时前
别再把 PCIe 的 inbound/outbound、iATU 和 eDMA 混为一谈
linux·笔记·学习·嵌入式·pcie
speop5 小时前
TASK01 | Reasoning Kindom
学习
2301_822703206 小时前
鸿蒙flutter三方库实战——教育与学习平台:Flutter Markdown
学习·算法·flutter·华为·harmonyos·鸿蒙
码喽7号6 小时前
vue学习四:Axios网络请求
前端·vue.js·学习