python webdriver 测试框架-数据驱动txt文件驱动,带报告的例子
数据驱动txt文件驱动的方式,带报告
data.txt:
gloryroad test||光荣之路
摔跤爸爸||阿米尔
超人||电影
data_driven_by_txt_file.py:
#encoding=utf-8
from selenium import webdriver
import time
with open(u"e:\\数据驱动\\data.txt") as fp:
data=fp.readlines()
driver=webdriver.Ie(executable_path="e:\\IEDriverServer")
test_result=[]
for i in range(len(data)):
try:
driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys(\
data[i].split("||")[0].strip().decode("gbk"))
driver.find_element_by_id("su").click()
time.sleep(3)
assert data[i].split('||')[1].strip().decode('gbk')\
in driver.page_source
test_result.append(data[i].strip()+u"||成功\n".encode("gbk"))
print data[i].split('||')[0].strip().decode('gbk')+u"搜索测试执行成功"
except AssertionError,e:
print data[i].split('||')[1].strip().decode('gbk')+u"测试断言失败"
test_result.append(data[i].strip()+u"||断言失败\n".encode("gbk"))
except Exception,e:
print data[i].split('||')[1].strip().decode('gbk')+u"测试执行失败"
test_result.append(data[i].strip()+u"||异常失败\n".encode("gbk"))
with open(u"e:\\数据驱动\\result.txt","w") as fp:
fp.writelines(test_result)
driver.quit()
结果:
D:\test>python test.py
gloryroad test搜索测试执行成功
摔跤爸爸搜索测试执行成功
超人搜索测试执行成功
Result.txt:
gloryroad test||光荣之路||成功
摔跤爸爸||阿米尔||成功
超人||电影||成功
修改data.txt使断言失败的结果:
data.txt:
gloryroad test||光荣之路1
摔跤爸爸||阿米尔1
超人||电影1
D:\test>python test.py
光荣之路1测试断言失败
阿米尔1测试断言失败
电影1测试断言失败
Result.txt:
gloryroad test||光荣之路1||异常失败
摔跤爸爸||阿米尔1||异常失败
超人||电影1||异常失败
python webdriver 测试框架-数据驱动txt文件驱动,带报告的例子的更多相关文章
- python webdriver 测试框架-数据驱动json文件驱动的方式
数据驱动json文件的方式 test_data_list.json: [ "邓肯||蒂姆", "乔丹||迈克尔", "库里||斯蒂芬", & ...
- python webdriver 测试框架-数据驱动excel驱动的方式
简介: 数据驱动excel驱动方式,就是数据配置在excel里面,主程序调用的时候每次用从excel里取出的数据作为参数,进行操作, 需要掌握的地方是对excel的操作,要灵活的找到目标数据 测试数据 ...
- python webdriver 测试框架-数据驱动xml驱动方式
数据驱动xml驱动的方式 存数据的xml文件:TestData.xml: <?xml version="1.0" encoding="utf-8"?> ...
- python webdriver 测试框架-数据驱动exce驱动,不用ddt的方式
data.xlsx: 脚本: #encoding=utf-8from selenium import webdriverimport timeimport datetimefrom openpyxl ...
- python webdriver 测试框架-数据驱动DDT的例子
先在cmd环境 运行 pip install ddt 安装数据驱动ddt模块 脚本: #encoding=utf-8 from selenium import webdriver import un ...
- python webdriver 测试框架-行为驱动例子
安装行为驱动模块lettuce(卷心菜)模块 pip install lettuce Successfully installed argparse-1.4.0 colorama-0.3.9 extr ...
- python nose测试框架全面介绍九---各种html报告插件对比
一直在使用Nose-html-reporting,并输出html报告,但今天在使用时发出有点问题:于时,将python目前可能的html报告插件下载后进行对比,如下 一.Nose-html-repor ...
- python nose测试框架全面介绍七--日志相关
引: 之前使用nose框架时,一直使用--logging-config的log文件来生成日志,具体的log配置可见之前python nose测试框架全面介绍四. 但使用一段时间后,发出一个问题,生成的 ...
- python nose测试框架全面介绍十---用例的跳过
又来写nose了,这次主要介绍nose中的用例跳过应用,之前也有介绍,见python nose测试框架全面介绍四,但介绍的不详细.下面详细解析下 nose自带的SkipTest 先看看nose自带的S ...
随机推荐
- Keil MDK从未有过的详细使用讲解(转)
这博主关于MDK 的使用的文章,写的得TM的好 TM的实用! 真心收藏! 熟悉Keil C 51的朋友对于Keil MDK上手应该比较容易,毕竟界面是很像的.但ARM内核毕竟不同于51内核,因此无论 ...
- 给大家推荐一个好的android模拟器genymotion,非常流畅,跟真机差不多
http://www.genymotion.cn/这里是下载地址, 下载的时候会要求输入邮箱并注册,这个邮箱尽量用网易这类的邮箱,我试过qq邮箱无法收到验证邮件, 程序下载安装完成后,打开客户端选择设 ...
- mongodb学习链接
mongodb安装部署:http://www.cnblogs.com/yoolonet/archive/2011/08/27/2155701.html 基础: http://blog.csdn.ne ...
- Swift - 实现tableView单选系统样式
// 实现tableView单选 import UIKit class ViewController: UIViewController { var tableView: UITableView! o ...
- onethink封装arclist调用文章列表!
其实没有什么东西,做个记录,方便以后使用! <ul> <arclist mid='2' cid='2' row='2'> <li>{$title}</li&g ...
- Redis构建文章聚合信息分类网站
本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...
- treeview(树加载)
数据库结构 id:int类型,主键,自增列: Name:char类型: paraid:int类型 窗台拖入控件treeview. 1.版本1 using System; using S ...
- HDU 4238 You Are the One
You Are the One Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- 解析导航栏的url
前段时间做ui自动化测试的时候,导航栏菜单始终有点问题,最后只好直接获取到url,然后直接使用driver.get(url)进入页面: 包括做压测的时候,比如我要找出所有报表菜单的url,这样不可能手 ...
- Elasticsearch之settings和mappings(图文详解)
Elasticsearch之settings和mappings的意义 简单的说,就是 settings是修改分片和副本数的. mappings是修改字段和类型的. 记住,可以用url方式来操作它们,也 ...