python使用yaml 管理selenium元素的示例
作者:做梦的人- 发布时间:2023-11-18 10:53:29
标签:python,yaml,selenium
作者:做梦的人(小姐姐)
出处:https://www.cnblogs.com/chongyou/
1.所有元素都在PageElement下的.yaml,如图
login_page.yaml文件:
username:
dec: 登录页
type: xpath
value: //input[@class='custom-text']
password:
dec: 密码输入框
type: xpath
value: //input[@class='custom-text password']
loginbtn:
dec: 登录按钮
type: xpath
value: //button[@type='submit']
解析yaml文本
def parseyaml():
#当前脚本路径的父类
basepath=os.path.dirname(os.path.dirname(__file__))
#yaml_path=basepath+"\\PageElement"
yaml_path = basepath + "\\PageElement"
pageElements = {}
# 遍历读取yaml文件
for fpath, dirname, fnames in os.walk(yaml_path):
for name in fnames:
# yaml文件绝对路径
yaml_file_path = os.path.join(fpath, name)
print(yaml_file_path)
# 排除一些非.yaml的文件
if ".yaml" in str(yaml_file_path):
with open(yaml_file_path, 'r', encoding='utf-8') as f:
page = yaml.load(f)
pageElements.update(page)
#返回字典内容
#for i in pageElements[pagename]['locators']:
# print(i)
return pageElements
if __name__ == "__main__":
a = parseyaml()
print(a)
print("*******************")
print(a["username"]["type"])
print(a["username"]["value"])
解析结果
来源:https://www.cnblogs.com/chongyou/p/11060928.html


猜你喜欢
- 本文实例讲述了MySQL截取和拆分字符串函数用法。分享给大家供大家参考,具体如下:首先说截取字符串函数:SUBSTRING(commenti
- 什么是Css Hack?由于不同的浏览器,比如Internet Explorer 6,Internet Explorer 7,Mozilla
- 前言大家都知道在oracle中,默认的监听端口号为1521,一旦有人扫描出这个端口号就会知道此服务器为oracle数据库服务器,存在极其大的
- GetRef 函数 返回一个指向一过程的引用,此过程可绑定某事件。 Set object.eventname = GetRef(procna
- 理解新概念Python V2.2 中引入了迭代器的思想。唔,这并不十分正确;这种思想的“苗头”早已出现在较老的函数 xrange() 以及文
- 刚才画散点图要用到图例,可是matplotlib.pyplot.plot(x,y,'.')画出的散点图中图例是两个点(因为p
- 问题一:安装模块时出现报错 Microsoft Visual C++ 14.0 is required,也下载安装了运行库依然还是
- 两个容器,一个flask-demo,一个是redis-server在一个自定义网络bridge,相互ping,不需要知道ip,只用名字就能p
- 在连接数据库的url地址有点不一样jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(ADDR
- 一、导读通常,开发大量原始代码是一个费时费力的工作而且有时候有很多专业知识我们不可能都一 一弄懂,为了避免这种情况,我们会尽可能多地使用库中
- 异常详细信息: System.Web.HttpException: 无法向会话状态服务器发出会话状态请求。请确保已启动 ASP.NET St
- 本文实例讲述了ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法。分享给大家供大家参考。具体实现方法分析如下:首先
- 实测mysqld –skip-grant-tables这样的命令行,在mysql8中无法成功启动,而且测试了该参数放在ini文件里面也同样无
- 本文实例讲述了Python实现获取本地及远程图片大小的方法。分享给大家供大家参考,具体如下:了解过Pillow的都知道,Pillow是一个非
- 最近设计一个优惠券列表,有个属性是有效日期,因为空间有限,必须要把开始日期和结束日期在一行显示,这样就出现一排的数字,日期有好几种我们习惯的
- 前言本文主要介绍了关于利用python将图片转换成excel文档的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
- 前言:今天教大家通过Python进行Socket网络编程(做一个聊天程序),可以实现在不同的主机(电脑)之间进行通话。具体效果如何,接着往下
- 废话不多说,直接上官网demopackage mainimport ("log""github.com/fsn
- 本文实例讲述了Python基于pygame模块播放MP3的方法。分享给大家供大家参考,具体如下:安装pygame(可参考:安装Python和
- 报错信息应该是这样的webpackEmptyContext (eval at ./src/store/modules sync recurs