zoukankan      html  css  js  c++  java
  • python webdriver混合驱动测试框架(数据驱动+关键字驱动)

    混合驱动:把数据驱动、关键字驱动结合起来一起使用

    testdata.txt

    http://www.126.com
    http://www.sohu.com

    teststep.txt

    open||chrome
    visit||${url}
    sleep||3

    主程序脚本

    hybrid.py

    #encoding=utf-8
    import re
    from selenium import webdriver
    import time

    with open("teststep.txt") as fp:
    teststeps = fp.readlines()

    with open("testdata.txt") as fp:
    testdata = fp.readlines()

    driver = ""

    def open(browser_name):
    global driver
    if "ie" in browser_name:
    driver = webdriver.Ie(executable_path = "e:\IEDriverServer")
    elif "chrome" in browser_name:
    driver = webdriver.Chrome(executable_path = "e:\chromedriver")
    else:
    driver = webdriver.Firefox(executable_path = "e:\geckodriver")

    def visit(url):
    global driver
    driver.get(url)

    def click(xpath):
    try:
    driver.find_element_by_xpath(xpath).click()
    except:
    print("click fail!")
    raise

    def sleep(times):
    time.sleep(int(times))

    for data in testdata:
    print(data)
    for teststep in teststeps:
    action = teststep.split("||")[0].strip()
    value= teststep.split("||")[1].strip()
    if re.search(r"${w+}",value):
    value=re.sub(r"${w+}",data.strip(),value)
    try:
    command = "%s("%s")" %(action,value)
    exec(command)
    except:
    print("执行",command,"有异常")

    driver.quit()
    print ("DONE!")


  • 相关阅读:
    Bootstrap-CL:警告
    Bootstrap-CL:略缩图
    Bootstrap-CL:页面标题
    Bootstrap-CL:超大屏幕
    Bootstrap-CL:徽章
    Bootstrap-CL:标签
    Bootstrap-CL:分页
    Bootstrap-CL:面包屑导航
    Bootstrap-CL:导航栏
    Bootstrap-CL:导航元素
  • 原文地址:https://www.cnblogs.com/ff-gaofeng/p/12670414.html
Copyright © 2011-2022 走看看