data.xlsx:

脚本:

#encoding=utf-8
from selenium import webdriver
import time
import datetime
from openpyxl import *
wb=load_workbook(r'd:\\test\\data.xlsx')
ws=wb.active#获取第一个sheet
print u"最大行号:",ws.max_row

#excel行是从1开始的,所以我们从2开始迭代遍历
#且使用切片,必须有结束行的索引号,不能写[1:],这样不行
#列号是从0开始的,列取出来是个元祖
driver=webdriver.Firefox(executable_path='c:\\geckodriver')
test_result=[]
#print 'ws:', ws[2:ws.max_row]
#for row in ws[2:ws.max_row]:
#    print row

for row in ws[2:ws.max_row]:
    print row[1],row[2]
    try:
        driver.get('http://www.baidu.com')
        driver.find_element_by_id('kw').send_keys(row[1].value)
        driver.find_element_by_id('su').click()
        time.sleep(3)
        assert row[2].value in driver.page_source
        row[3].value=time.strftime('%Y-%m-%d %H:%M:%S')
        row[4].value=u'成功'
    except AssertionError,e:
        row[3].value=time.strftime('%Y-%m-%d %H:%M:%S')
        row[4].value=u"断言失败"
    except Exception,e:
        row[3].value=time.strftime('%Y-%m-%d %H:M:%S')
        row[4].value=u"出现异常失败"
        
    
driver.quit()
wb.save(u"d:\\test\\0627\\data0629.xlsx")#注意:将直接覆盖,不是更新。

结果:

d:\test\0627>python test.py
最大行号: 4
<Cell u'Sheet1'.B2> <Cell u'Sheet1'.C2>
<Cell u'Sheet1'.B3> <Cell u'Sheet1'.C3>
<Cell u'Sheet1'.B4> <Cell u'Sheet1'.C4>

Data0629.xlsx:

 

python webdriver 测试框架-数据驱动exce驱动,不用ddt的方式的更多相关文章

  1. python webdriver 测试框架-数据驱动excel驱动的方式

    简介: 数据驱动excel驱动方式,就是数据配置在excel里面,主程序调用的时候每次用从excel里取出的数据作为参数,进行操作, 需要掌握的地方是对excel的操作,要灵活的找到目标数据 测试数据 ...

  2. python webdriver 测试框架-数据驱动xml驱动方式

    数据驱动xml驱动的方式 存数据的xml文件:TestData.xml: <?xml version="1.0" encoding="utf-8"?> ...

  3. python webdriver 测试框架-数据驱动txt文件驱动,带报告的例子

    数据驱动txt文件驱动的方式,带报告 data.txt: gloryroad test||光荣之路 摔跤爸爸||阿米尔 超人||电影 data_driven_by_txt_file.py: #enco ...

  4. python webdriver 测试框架-数据驱动json文件驱动的方式

    数据驱动json文件的方式 test_data_list.json: [ "邓肯||蒂姆", "乔丹||迈克尔", "库里||斯蒂芬", & ...

  5. python webdriver 测试框架-数据驱动DDT的例子

    先在cmd环境 运行 pip install ddt 安装数据驱动ddt模块  脚本: #encoding=utf-8 from selenium import webdriver import un ...

  6. python webdriver 测试框架-行为驱动例子

    安装行为驱动模块lettuce(卷心菜)模块 pip install lettuce Successfully installed argparse-1.4.0 colorama-0.3.9 extr ...

  7. python nose测试框架全面介绍十---用例的跳过

    又来写nose了,这次主要介绍nose中的用例跳过应用,之前也有介绍,见python nose测试框架全面介绍四,但介绍的不详细.下面详细解析下 nose自带的SkipTest 先看看nose自带的S ...

  8. python nose测试框架全面介绍七--日志相关

    引: 之前使用nose框架时,一直使用--logging-config的log文件来生成日志,具体的log配置可见之前python nose测试框架全面介绍四. 但使用一段时间后,发出一个问题,生成的 ...

  9. python nose测试框架全面介绍六--框架函数别名

    之前python nose测试框架全面介绍二中介绍了nose框架的基本构成,但在实际应该中我们也会到setup_function等一系列的名字,查看管网后,我们罗列下nose框架中函数的别名 1.pa ...

随机推荐

  1. vsftp服务启动失败

    Linux下的服务如果启动失败,一般是看报错和日志进行排查的 报错看不出什么,那么就看下日志记录了什么/var/log/vsftpd.log: 一般是配置文件有问题 /etc/vsftpd/vsftp ...

  2. C++说明符和限定符

    有些被称为存储说明符(storage class specifier)或cv-限定符(cv-qualifier)的C++关键字提供了一些有关存储的信息.下面是存储所说明符:* auto (在C++11 ...

  3. jdbc链接数据库,获取表名,字段名和数据

    import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import  ...

  4. 如何搭建本地WordPress

    今天就来介绍一下如何在Windows下搭建本地WordPress. 安装前准备 1.正常的电脑 2.PHPNow  http://www.phpnow.org 这里面的PHPNow环境包其实包含了常见 ...

  5. JS:“分享到”之类的悬浮框的运动原理(代码)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. LeetCode——Best Time to Buy and Sell Stock III

    Description: Say you have an array for which the ith element is the price of a given stock on day i. ...

  7. LightOJ 1348(Aladdin and the Return Journey )

    题目链接:传送门 题目大意:一棵无根树,每个点上有权值,两种操作,0 x y询问x~y路径上权值和 1 x y将 节点 x 权值变为y.对于询问操作输出答案. 题目思路:树链剖分 #include & ...

  8. Unity3D之Unity3D 4.3.0 破解方法

    Dear  All 破解有风险,破解不尊重知识产权,如果有涉及请删除或者联系我……以下呢 是我这几天捣鼓的4.3.0版本 供学习!请大家支持正版! 1.下载最新版本 我是在Unity官网下载的最新版本 ...

  9. ExecutorService的四种线程池

    转自:https://www.cnblogs.com/zhaoyan001/p/7049627.html 1.new Thread的弊端 执行一个异步任务你还只是如下new Thread吗? new ...

  10. sort命令详解及Nginx统计运用

    sort命令是帮我们依据不同的数据类型进行排序,其语法及常用参数格式: sort [-bcfMnrtk][源文件][-o 输出文件] 补充说明:sort可针对文本文件的内容,以行为单位来排序. 参 数 ...