Capability配置借yaml实现数据分离

本文介绍如何使用YAML配置文件来分离Appium测试代码与数据,通过具体示例展示了如何将capability配置项从代码中抽离并存入YAML文件,再利用Python的yaml模块读取这些配置项,实现自动化测试的灵活配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、场景

Capability配置借yaml实现数据分离。

二、场景

可以把之前capability中各项写死的配置信息来抽离出来,放在一个yaml配置文件中,使用对象数据类型来存储数据;然后用load()方法读取数据,达到数据和代码的效果。

三、环境

Win 10
java version "1.8.0_181"
Appium v1.14.1(不能低于1.6.3)
selenium:3.141.0
测试设备:Android 5.1.1
Python:3.6
测试App:考研帮Android app V3.1.0

四、代码

desired_caps.yaml

platformName: Android
#platformVersion: 5.1.1
platformVersion: 9
#deviceName: 127.0.0.1:62025
deviceName: HUAWEI Mate 20
udid: 66J0218C28008638
app: D:\download\kaoyan3.1.0.apk
appPackage: com.tal.kaoyan
appActivity: com.tal.kaoyan.ui.activity.SplashActivity
noReset: False
ip: 127.0.0.1
port: 4723

test.py

from appium import webdriver
import yaml

file = open('desired_caps.yaml','r')
data = yaml.load(file,Loader=yaml.FullLoader)

desired_caps = {}
desired_caps['platformName'] = data['platformName']
desired_caps['platformVersion'] = data['platformVersion']
desired_caps['deviceName'] = data['deviceName']
desired_caps['udid'] = data['udid']
desired_caps['app'] = data['app']
desired_caps['appPackage'] = data['appPackage']
desired_caps['appActivity'] = data['appActivity']
desired_caps['noReset'] = data['noReset']

driver = webdriver.Remote('http://'+str(data['ip'])+':'+str(data['port'])+'/wd/hub',desired_caps)

五、结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值