• 【13】Appium进阶篇-数据配置-Yaml


    一、数据配置—Yaml简介

      下载地址:http://pyyaml.org/wiki/PyYAML

      安装完成后在python引入yaml检测是否安装成功,输入import  yaml  无错误表示成功

      yaml语法注意事项:注意大小写,使用缩进时不能用tab快捷键,数据键值对冒号后面要加空格,数组元素使用“-”开头

    二、Yaml数据类型简介

    name: zhangsan
    #1.纯量(scalars):单个的、不可再分的值
    age: 28
    wife:
      name: xiaoqing
      age: 28
    children:
    #2.数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
      - name: gege
        age: 5
      - name: didi
        age: 3
    #3.对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)

    三、Yaml数据读取

      ①、数据读取

    #coding:utf-8
    import yaml
    
    
    f=open('lession01.yaml','r')    #打开文件
    data=yaml.load(f)    #读取yaml文件数据
    print(data)
    print(data['children'][0]['name'])
    
    f.close()

      ②、数据修改

    f=open('lession01.yaml','r')    #打开文件
    data=yaml.load(f)    #读取yaml文件数据
    print(data)
    print('修改前内容:',data['children'][0]['name'])
    data['children'][0]['name']='张小强'
    print('修改后内容:',data['children'][0]['name'])
    f.close()

      ③、数据转化

    data1={'name': 'zhangsan', 'children': 
        [{'name': 'gege', 'age': 5}, {'name': 'didi', 'age': 3}], 
           'age': 28, 'wife': {'name': 'xiaoqing', 'age': 28}}
    print('修改前内容:',type(data1))
    data2=yaml.dump(data1)
    print('修改前内容:',type(data2))

    五、Capability配置数据与代码分离

      在appium自动化测试中,可以把Capability的配置信息用yaml文件分离出来

    #Capability.yaml
    platformName: Android
    platformVersion: 4.1.3
    deviceName: H8U4C16B08001830
    app: C:UsersDesktopAppium softwareAppzhihu.apk
    noReset: False
    appPackage: com.tal.zhihu
    appActivity: com.tal.zhihu.ui.activity.SplashActivity
    # coding:utf-8
    
    import yaml
    #Capability_yaml.py
    
    file=open('Capability.yaml','r')
    data=yaml.load(file)
    
    desired_caps={}
    desired_caps['platformName']=data['platformName']
    
    desired_caps['platformVersion']=data['platformVersion']
    desired_caps['deviceName']=data['deviceName']
    
    desired_caps['app']=data['app']
    desired_caps['noReset']=data['noReset']
    
    desired_caps['appPackage']=data['appPackage']
    desired_caps['appActivity']=data['appActivity']
    
    print('数据结果:',type(desired_caps),desired_caps)
  • 相关阅读:
    (三)字符串、列表、元组、字典
    (二)判断语句和循环语句
    (一)python基础知识
    Python之禅
    《Vue.js实战》一书 p117 练习 1& 2 (2019.12.19)
    React练习 17:02_11_鼠标移过修改图片路径
    React练习 16:02_10_提示框效果
    React练习 15:02_09_单一按钮显示隐藏
    React练习 14:02_08_简易js年历
    React练习 13:02_07_简易选项卡
  • 原文地址:https://www.cnblogs.com/qingbaobei7370/p/12410762.html
Copyright © 2020-2023  润新知