亲宝软件园·资讯

展开

python使用yaml 管理selenium元素的示例

做梦的人- 人气:0

作者:做梦的人(小姐姐)
出处: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"])

解析结果

加载全部内容

相关教程
猜你喜欢
用户评论