python selenium 数据驱动测试 _笔记

python selenium 数据驱动测试

1、概念

数据驱动:测试数据的改变引起执行结果的改变叫数据驱动;

关键字驱动:测试对象名字的改变起引起测试结果的改变叫关键字驱动。

举例:

d:\data.txt文件:
    Selenium
    python
    linux

我们可以通过脚本循环执行,读取一文件中不同的内容来完成自动化工作,也就是说我们每次取的文件里的搜索关键字不同,而每次百度搜索的的结果不同,这也是数据驱动的本质。 代码如下:

#coding:utf-8
from selenium import webdriver
import os, time

source = open("d:\\Python27\\data.txt", "r")  # 只读方法打开文件
values = source.readlines()  #逐行读取文件内容
source.close()

for search in values:
    browser = webdriver.Firefox()
    browser.get("http://www.baidu.com")
    browser.find_element_by_id("kw").send_keys(search)
    browser.find_element_by_id("su").click()
    browser.quit

用户名密码参数化

使用字典实现用户名密码参数化

#coding:utf-8
import os, time
from selenium import webdriver
def UsrPwd():  
    d = {'abc':'123456', 'def':'789456'}   #使用字典
    print "read username and password!"
    return d
for usr,pwd in UsrPwd().items():  # 循环读取字典里的用户名及密码
    driver = webdriver.Firefox()
    driver.get("http://-------")
    driver.find_element_by_id("user_name").clear()
    driver.find_element_by_id("user_name").send_keys(usr)
    time.sleep(3)
    
    driver.find_element_by_id("user_pwd").clear()
    driver.find_element_by_id("user_pwd").send_keys(v)
    time.sleep(3)

    driver.find_element_by_id("dl_an_submit").click()
    time.sleep(1)
    driver.close()

用户名密码的参数化

def user(k='fnngj',v=123456):  #定义带用户名密码参数的函数user
    print "suess read username and password!!"
    return k,v
k,v = user()   #调用user函数获得用户名和密码
print k,v
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • //我所经历的大数据平台发展史(三):互联网时代 • 上篇http://www.infoq.com/cn/arti...
    葡萄喃喃呓语阅读 51,315评论 10 200
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 21,987评论 7 278
  • 终于翻开了期待已久的《接纳不完美的自己》,翻来第一页思绪便被紧紧吸引住了,故事里的人不就是过往的我吗?那么敏感、那...
    夢瑤阅读 927评论 0 0
  • 聆听第一堂课的时候,我还穿的是外套,而今天,窗外竟响起了“聒聒”的蝉鸣。 时光就悄悄地在指缝中溜...
    习茶小记阅读 518评论 0 0