Yaml-学习与使用

Yaml是一种文件格式

python中使用yaml需要安装Yaml模块 : pip install pyyaml

yaml格式:

dic1:
  name: zff
  age: 15
dic2:
  name: ttt
  age: 98
dic3: "测试数据"
list1:
  - 1
  - 2
  - 3
  - 4

用冒号+空格 : 代表对象/字典
用 岗+空格 - 代表列表
使用yaml 需要导包使用load方法

import yaml
# 打开yaml文件
file = open('test.yaml','rb')
#使用yaml
data = yaml.load(stream=file, Loader=yaml.FullLoader)
print(data)
print(type(data))

在这里插入图片描述
使用ddt +file_data循环读取yaml数据

import pytest
from ddt import ddt, file_data

@ddt
class TestYaml():
    @file_data('test.yaml')
    def test_1(self,**kwargs):
        a = kwargs['data1']
        b = kwargs['data2']
        c = kwargs['data3']
        print(a)
        print(b)
        print(c)

if __name__ == '__main__':
    pytest.main(['-s','testyaml2.py'])

yaml数据

-
  data1: a
  data2: b
  data3: c
-
  data1: 1
  data2: 2
  data3: 3
-
  data1: aaaa
  data2: bbb
  data3: ccc



基于yaml驱动selenium:

#正确的账号名密码
-
  url: http://XXXX.sm.chinajzhl.com/User/Login
  text:
    - 1709348XXXX
    - 123456
  element:
    input: /html/body/div[2]/div[1]/input
    pasw: /html/body/div[2]/div[2]/input
    button: /html/body/div[2]/button[2]
#错误的账号名密码
-
  url: http://XXXXX.sm.chinajzhl.com/User/Login
  text:
    - 1709348XXXX
    - 123457
  element:
    input: /html/body/div[2]/div[1]/input
    pasw: /html/body/div[2]/div[2]/input
    button: /html/body/div[2]/button[2]
import pytest
from ddt import ddt, file_data
from selenium import webdriver
import time

@ddt
class TestYaml():
    @file_data('test.yaml')
    def test_1(self,**kwargs):
        driver = webdriver.Chrome()
        driver.get(kwargs['url'])
        driver.find_element_by_xpath(kwargs['element']['input']).send_keys(kwargs['text'][0])
        driver.find_element_by_xpath(kwargs['element']['pasw']).send_keys(kwargs['text'][1])
        driver.find_element_by_xpath(kwargs['element']['button']).click()
        time.sleep(5)
        driver.quit()


if __name__ == '__main__':
    pytest.main(['-s','testyaml2.py'])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值