python语言使用yaml 管理selenium元素


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"])

  解析结果

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM