txt\excel\cvs\xml存储测试数据
一、目录结构
二、txt存储数据
1、txtData.txt如下:
请您输入手机/邮箱/用户名
请您输入密码
请您输入验证码
2、helper中读取txt数据的代码
def readTXT(self):
f=open(os.path.join(os.path.dirname(os.path.dirname(__file__)), 'data', 'txtData.txt'),'r')
d=f.readlines()#按行读取所有数据,读取的结果类型为列表list
list1=''.join(d).split('\n')#''.join(d)将d转为字符串,但结果是带了换行的字符串,
# .split('/')是以换行‘/’将字符串分割为列表,列表里的元素为str类型
return list1
3、用例代码testTXT.py
#!/usr/bin/env python
#-*-coding:utf-8-*- from webDDT.basePage.webDri import *
from webDDT.pageOBJ.init import *
from webDDT.pageOBJ.loginPage import *
from webDDT.untis.helper import *
import unittest class baiduXMLtest(init,login):
def test01(self):
'''验证用户名和密码为空时的提示信息'''
hp = datahelp()
self.login('','')
self.assertEqual(self.getError.encode('utf-8'),hp.reafTXT()[0]) if __name__=='__main__':
unittest.main(verbosity=2)
三、xml存储数据
1、xml存储的数据,xml的标签可以自己随便定义
<?xml version="1.0" encoding="utf-8"?>
<DataDriven>
<login1 name="" pw=""></login1>
<login2 name="panda" pw=""></login2>
<login3 name="" pw=""></login3>
<nullError>请您输入手机/邮箱/用户名</nullError>
<nameNull>请您输入用户名</nameNull>
<pwNull>请您输入密码</pwNull>
</DataDriven>
2、helper中读取xml数据的代码
def readXml(self,value):
dom=xml.dom.minidom.parse(os.path.join(os.path.dirname(os.path.dirname(__file__)),'data','xmlData.xml'))
db=dom.documentElement
name=db.getElementsByTagName(value)
namevalue=name[0]#取Tagname为value的第一个标签
return namevalue.firstChild.data def readXmls(self,parent,child):
dom=xml.dom.minidom.parse(os.path.join(os.path.dirname(os.path.dirname(__file__)),'data','xmlData.xml'))
db=dom.documentElement
itemlist=db.getElementsByTagName(parent)
item=itemlist[0]#取Tagname为parent的第一个标签
return item.getAttribute(child)#取parent的字节点child的值
3、测试用例testXml.py
#!/usr/bin/env python
#-*-coding:utf-8-*- from webDDT.basePage.webDri import *
from webDDT.pageOBJ.init import *
from webDDT.pageOBJ.loginPage import *
from webDDT.untis.helper import *
import unittest class baiduXMLtest(init,login):
def test01(self):
'''验证用户名和密码为空时的提示信息'''
hp = datahelp()
self.login(hp.readXmls("login1","name"),hp.readXmls("login1","pw"))
self.assertEqual(self.getError,hp.readXml("nullError")) if __name__=='__main__':
unittest.main(verbosity=2)
四、CVS存储数据
1、CVS存储的数据
2、helper中读取cvs中数据的代码
def readCSV(self,v1,v2):
rows = []
datafile = open(os.path.join(os.path.dirname(os.path.dirname(__file__)), 'data', 'csvData.csv'))
reader = csv.reader(datafile) # reader返回的是个迭代,每一次迭代返回csv里的一行内容 for item in reader:
rows.append(item)
return rows[v1][v2].decode('gbk')
# 返回第value1行的value2列的数据,类型是字符串
3、测试用例testCvs.py
from webDDT.basePage.webDri import *
from webDDT.pageOBJ.init import *
from webDDT.pageOBJ.loginPage import *
from webDDT.untis.helper import *
import unittest class baiduCSVtest(init,login):
def test001(self):
data=datahelp()
self.login(data.readCSV(1,0),data.readCSV(1,1))
self.assertEqual(self.getError,data.readCSV(1,2)) if __name__=='__main__':
unittest.main(verbosity=2)
五、excel存储数据
1、Excel存储的数据
2、helper中读取数据的代码
def readEXCEL(self,a1,a2):
book=xlrd.open_workbook(os.path.join(os.path.dirname(os.path.dirname(__file__)), 'data', 'excelData.xlsx'))
sheet=book.sheet_by_index(0)
return sheet.cell_value(a1,a2) def readExcels(self):
rows=[]
book=xlrd.open_workbook(os.path.join(os.path.dirname(os.path.dirname(__file__)), 'data', 'excelData.xlsx'))
sheet=book.sheet_by_index(0)
for item in sheet.nrows:
rows.append(list(sheet.cell_value(item,0,sheet.ncols)))#sheet.row_slice(item,0,sheet.ncols)是将第item行的从第一列到最后一列的数据加入到list中
return rows
3、测试用例testExcel.py
from webDDT.basePage.webDri import *
from webDDT.pageOBJ.init import *
from webDDT.pageOBJ.loginPage import *
from webDDT.untis.helper import *
import unittest class baiduCSVtest(init,login):
def test001(self):
data=datahelp()
self.login(data.readEXCEL(1,0),data.readEXCEL(1,1))
self.assertEqual(self.getError,data.readEXCEL(1,2)) if __name__=='__main__':
unittest.main(verbosity=2)
txt\excel\cvs\xml存储测试数据的更多相关文章
- Excel与XML相互转换 - C# 简单实现方案
Excel与XML相互转换 - C# 简单实现方案 在日常工作中,我需要将数据存储在Excel中进行数据分析和处理,然后再将数据转换为XML格式进行跨平台的数据交换.网上搜索Excel转换为XML的实 ...
- mysql命令行的导入导出sql,txt,excel(都在linux或windows命令行操作)(转自筑梦悠然)
原文链接https://blog.csdn.net/wuhuagu_wuhuaguo/article/details/73805962 Mysql导入导出sql,txt,excel 首先我们通过命令行 ...
- TestLink学习七:TestLink测试用例Excel转换XML工具
TestLink对于测试用例的管理来说,是蛮强大的,但是在导入导出这块,功能有点弱,本文针对测试用例的导入,转载了一个Excel转换成xml工具. 1.根据到处的测试用例xml,定义一下我的Excel ...
- csv,txt,excel文件之间的转换,perl脚本
最近接触一些需要csv,txt,excel文件之间的转换,根据一些网上搜索加上自己的改动,实现自己想要的结果为主要目的,代码的出处已经找不到了,还请见谅,以下主要是针对csv&excel 和t ...
- 转:TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码
TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码 http://blog.csdn.net/candle806/article/details/7490599 以 ...
- 转:Excel转换XML工具<一>
http://blog.csdn.net/candle806/article/details/7441695最近在整理测试用例,所以想找一个合适的工具来完成对测试需求.测试用例的管理.对比了一翻,发现 ...
- [Head First Python]4.读取文件datafile.txt, 去除两边空格, 存储到列表,从列表格式化(nester.py)后输出到文件man.out,other.out
datafile.txt #文件 Man: this is the right room for an argument. Other Man: I've told you once. Man: N ...
- 电影管理器之XML存储电影信息数据
电影管理器之XML存储电影信息数据 但凡管理器之类的软件,存储数据是必不可少的.存储数据的话,有几种选择.一是用数据库,把数据存储到数据库里:一是用文本文件,把数据存储到文本文件里:一种是利用XML文 ...
- testlink用例转换小工具(excel转为xml,python版)
前面文章记录了testlink的安装方法(CentOS 7下安装xampp和testlink),由于testlink仅支持xml格式的用例导入,研究了下excel转xml的方法, 从网上其他网友那里借 ...
随机推荐
- nginx静态页面镜像
user root; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #error_lo ...
- Leetcode题目46.全排列(回溯+深度优先遍历+状态重置-中等)
题目描述: 给定一个没有重复数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], ...
- 汽车辐射监测系统-Qt开发[转]发
功能介绍: 利用在路边的两个探测器,探测汽车的辐射剂量,通过电子板进行数据采集,并串口传输到计算机,实时显示.可以保存采集数据,进行独立显示. 开发环境: VS2008,Qt4.7, QWT 6.0. ...
- 我现在A函数开启事务,然后调用B函数,B函数中也开启了事务
有一点要知道,就是MYSQL不支持事务嵌套.所以PHP再包装,也是一个事务 laravel的事务嵌套,就是一个栈.事务A开启事务(真实开启)事务B开启事务(只是标记,并非真实开启了事务)事务B提交事务 ...
- 性能测试 | 系统运行缓慢,CPU 100%,Full GC次数过多问题排查
处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题.当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警.本文主要针对系统运行缓慢这 ...
- react封装基于axios的API请求
一.最近做的一个后台管理项目,基于antd-pro做的,需要封装基于axios请求,便于开发,直接上代码. import axios from 'axios'; export const Method ...
- Laravel中Session的使用
以file为示例 1.Http request session方法$request->session()->put('key1','value1');echo $request->s ...
- Python3+RobotFramewok 快速入门(二)
1. 原理 首先解释一下RF的工作原理,官方文档介绍就不赘述了,笔者就框架架构做出一个更加具体的描述 测试套及测试用例集(Test Data即需要用户编写的脚本)通过RF特定的语法解析,然后知道用户要 ...
- echarts.js导致angular-translate加载模块失败
echarts.js导致angular-translate加载模块失败,待解决
- SQL中group by后面的having中不能使用别名
如下图中,SQL中需要对group by的结果使用having进行过滤,不能使用select中定义的别名,需要使用查询字段的原始名.否则会报错,列明未定义. 下图未错误演示: 修改后,正确的SQL语句 ...