python 读取yaml文件的两种方法(在unittest中使用)
作者:做梦的人(小姐姐)
出处:https://www.cnblogs.com/chongyou/
python读取yaml文件使用,有两种方式:
1.使用ddt读取
2,使用方法读取ddt的内容,在使用方法中进行调用
1.使用ddt读取
@ddt.ddt classloginTestPage(unittest.TestCase): @ddt.file_data(path) @ddt.unpack deftestlogin(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.使用已有的方法进行调用
classHandleYmal: """ 获取测试环境的配置 """ def__init__(self,file_path=None): iffile_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" defget_data(self): fp=open(self.file_path,encoding="utf-8") data=yaml.load(fp) return data @ddt.ddt classloginTestPage(unittest.TestCase): @classmethod defsetUpClass(cls): """前置应该是读取所有内容""" yaml=HandleYmal() cls.kwargs=yaml.get_data()['testenvironment'] cls.driver=webdriver.Chrome() deftestlogin(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文件的资料请关注毛票票其它相关文章!