python 读取yaml文件的两种方法(在unittest中使用)

 更新时间:2020年12月01日 16:11:54   作者:做梦的人-  
这篇文章主要介绍了python 读取yaml文件的两种方法(在unittest中使用),帮助大家更好的理解和学习python,感兴趣的朋友可以了解下

作者:做梦的人(小姐姐)
出处:https://www.cnblogs.com/chongyou/

python读取yaml文件使用,有两种方式:

1.使用ddt读取

2,使用方法读取ddt的内容,在使用方法中进行调用

1.使用ddt读取

@ddt.ddt
class loginTestPage(unittest.TestCase):
    @ddt.file_data(path)
    @ddt.unpack
    def testlogin(self,**kwargs):
        u'''
       "输入邮件账号、用户名、密码符合要求
       勾选同意协议"  1、注册成功,跳转到注册成功页面    "
        1、验证URL,https://www.XX.com/site/register-success.html
        2、邮箱收到注册成功邮件
        3、数据库中user表中有成功添加注册账号数据"
 
        :return:
        '''
 
        self.loginPage = CBLogin(self.driver)
        log.info(kwargs)
        self.page = Page(self.driver,kwargs.get('login_url'))
 
        self.page.send_text(self.loginPage.login_sendkes_username(),kwargs.get('username'))
        self.page.send_text(self.loginPage.login_sendkes_password(),kwargs.get('password'))
        self.page.click(self.loginPage.login_click_btn())
        # 断言登录是否成功
        self.assertIsNotNone(self.loginPage.is_success(),"元素没有查找到,登录失败")

2.使用已有的方法进行调用

class HandleYmal:
    """
    获取测试环境的配置
    """
    def __init__(self,file_path=None):
        if file_path:
            self.file_path=file_path
        else:
            #获取path
            root_dir=os.path.dirname(os.path.abspath('.'))
            print(root_dir)
            self.file_path=root_dir+"/config/base.yaml"
    def get_data(self):
        fp=open(self.file_path,encoding="utf-8")
        data=yaml.load(fp)
        return  data
 
 
 
@ddt.ddt
class loginTestPage(unittest.TestCase):
 
    @classmethod
    def setUpClass(cls):
        """前置应该是读取所有内容"""
 
        yaml=HandleYmal()
        cls.kwargs=yaml.get_data()['testenvironment']
        cls.driver = webdriver.Chrome()
 
    def testlogin(self):
        u'''
       "输入邮件账号、用户名、密码符合要求
       勾选同意协议"  1、注册成功,跳转到注册成功页面    "
        1、验证URL,https://www.chinabrands.com/site/register-success.html
        2、邮箱收到注册成功邮件
        3、数据库中user表中有成功添加注册账号数据"
 
        :return:
        '''
 
        self.loginPage = CBLogin(self.driver)
        log.info(self.kwargs)
        self.page = Page(self.driver,self.kwargs.get('login_url'))
        self.page.send_text(self.loginPage.login_sendkes_username(),self.kwargs.get('username'))
        self.page.send_text(self.loginPage.login_sendkes_password(),self.kwargs.get('password'))
        self.page.click(self.loginPage.login_click_btn())
        # 断言登录是否成功
        self.assertIsNotNone(self.loginPage.is_success(),"元素没有查找到,登录失败")

以上就是python 读取yaml文件的两种方法(在unittest中使用)的详细内容,更多关于python 读取yaml文件的资料请关注脚本之家其它相关文章!

相关文章

  • 在Python中使用异步Socket编程性能测试

    在Python中使用异步Socket编程性能测试

    异步网络据说能极大的提高网络server的连接速度,所以打算写一个专题,来学习和了解异步网络.因为Python有个非常出名的异步Lib:Twisted,所以就用Python来完成.
    2014-06-06
  • 浅谈pyqt5在QMainWindow中布局的问题

    浅谈pyqt5在QMainWindow中布局的问题

    今天小编就为大家分享一篇浅谈pyqt5在QMainWindow中布局的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 对Django 中request.get和request.post的区别详解

    对Django 中request.get和request.post的区别详解

    今天小编就为大家分享一篇对Django 中request.get和request.post的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Python正则表达式函数match()和search()使用全面指南

    Python正则表达式函数match()和search()使用全面指南

    在Python中,正则表达式是强大的工具,能够用于文本匹配、搜索和替换,re模块提供了许多函数来处理正则表达式,其中match()和search()是两个常用的函数,本文将深入探讨这两个函数的用法、区别和示例,帮助你更好地理解它们的功能
    2024-01-01
  • Python中json.dumps()函数的使用解析

    Python中json.dumps()函数的使用解析

    json.dumps将一个Python数据结构转换为JSON,本文介绍了Python中json.dumps()函数的具体使用方法,以及和dump的区别,感兴趣的可以了解一下
    2021-05-05
  • PyQT5实现选项卡窗口、堆栈窗口、停靠窗口、子窗口

    PyQT5实现选项卡窗口、堆栈窗口、停靠窗口、子窗口

    这篇文章主要介绍了PyQT5实现选项卡窗口、堆栈窗口、停靠窗口、子窗口,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • 小众实用的Python 爬虫库RoboBrowser

    小众实用的Python 爬虫库RoboBrowser

    这篇文章主要介绍了Python 爬虫库RoboBrowser的使用简介,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-03-03
  • OpenCV中Canny边缘检测的实现

    OpenCV中Canny边缘检测的实现

    本文主要介绍了OpenCV中Canny边缘检测的实现,边缘检测一般是识别目标图像中亮度变化明显的像素点,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 快速解决cv2.imread()读取图像为BGR的问题

    快速解决cv2.imread()读取图像为BGR的问题

    这篇文章主要介绍了快速解决cv2.imread()读取图像为BGR的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • pandas中Series的使用方式

    pandas中Series的使用方式

    这篇文章主要介绍了pandas中Series的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09

最新评论