一、目录结构

二、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存储测试数据的更多相关文章

  1. Excel与XML相互转换 - C# 简单实现方案

    Excel与XML相互转换 - C# 简单实现方案 在日常工作中,我需要将数据存储在Excel中进行数据分析和处理,然后再将数据转换为XML格式进行跨平台的数据交换.网上搜索Excel转换为XML的实 ...

  2. mysql命令行的导入导出sql,txt,excel(都在linux或windows命令行操作)(转自筑梦悠然)

    原文链接https://blog.csdn.net/wuhuagu_wuhuaguo/article/details/73805962 Mysql导入导出sql,txt,excel 首先我们通过命令行 ...

  3. TestLink学习七:TestLink测试用例Excel转换XML工具

    TestLink对于测试用例的管理来说,是蛮强大的,但是在导入导出这块,功能有点弱,本文针对测试用例的导入,转载了一个Excel转换成xml工具. 1.根据到处的测试用例xml,定义一下我的Excel ...

  4. csv,txt,excel文件之间的转换,perl脚本

    最近接触一些需要csv,txt,excel文件之间的转换,根据一些网上搜索加上自己的改动,实现自己想要的结果为主要目的,代码的出处已经找不到了,还请见谅,以下主要是针对csv&excel 和t ...

  5. 转:TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码

    TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码 http://blog.csdn.net/candle806/article/details/7490599 以 ...

  6. 转:Excel转换XML工具<一>

    http://blog.csdn.net/candle806/article/details/7441695最近在整理测试用例,所以想找一个合适的工具来完成对测试需求.测试用例的管理.对比了一翻,发现 ...

  7. [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 ...

  8. 电影管理器之XML存储电影信息数据

    电影管理器之XML存储电影信息数据 但凡管理器之类的软件,存储数据是必不可少的.存储数据的话,有几种选择.一是用数据库,把数据存储到数据库里:一是用文本文件,把数据存储到文本文件里:一种是利用XML文 ...

  9. testlink用例转换小工具(excel转为xml,python版)

    前面文章记录了testlink的安装方法(CentOS 7下安装xampp和testlink),由于testlink仅支持xml格式的用例导入,研究了下excel转xml的方法, 从网上其他网友那里借 ...

随机推荐

  1. redis慢查询笔记

    慢查询 生命周期 两个配置 三个命令 运维经验 生命周期 1.发送命令 2,排队执行命令因为单线程 3.执行命令 4.返回结果 慢查询发生在第三阶段 客户端超时并不一定有慢查询,但慢查询是客户端超时的 ...

  2. SRS之SrsHlsCache::reap_segment详解

    1. 是否可切片的检测 首先在调用 SrsHlsCache::reap_segment 函数进行切片时,针对音频或视频,都会有一个函数来进行检测当前片的时长是否符合所要求的时长. 对于音频,会调用 S ...

  3. 解决Linux下Firefox无法启动的问题

    在linux下使用Firefox连接被测系统的GUI,一次偶然操作导致linux系统运行缓慢,Firefox无法正常操作,从system monitor 杀掉所有java进程将Firefox强行关闭. ...

  4. git 命令简洁手册

    1.从当前目录初始化 git init 2.对文件进行跟踪 或  将已跟踪的文件放到暂缓区 或 把有冲突的文件标记为已解决状态 git add <file> 3.从现有仓库克隆 git c ...

  5. js 时间戳格式化日期格式

    时间戳转换为日期,网上搜了好几个或多或少都有点问题,自己整理了一下,写了个方法 console.log(formatDate(1565280000000)) 输出: 2019-08-09 00:00: ...

  6. Handler处理消息

    UI主线程通过Looper循环查询消息队列UI_MQ,当发现有消息存在时会将消息从消息队列中取出.首先分析消息,通过消息的参数判断该消息对应的Handler,然后将消息分发到指定的Handler进行处 ...

  7. 批量执行(Linux命令,上传/下载文件)

    前言: 每个公司的网络环境大都划分 办公网络.线上网络,之所以划分的主要原因是为了保证线上操作安全: 对于外部用户而言也只能访问线上网络的特定开放端口,那么是什么控制了用户访问线上网络的呢? 防火墙过 ...

  8. NLP - Log-linear Models

    1.The Language Modeling Problem         现在抛开我们之前讲的马尔科夫模型的假设,对于一门语言的定义,肯定不能简单依赖于每个单词的前两个单词,这是常识.比如英语中 ...

  9. VBA ListView控件使用实例

    功能:ListView控件实现连接数据库实现显示查询数据空能. 图片: 代码: Private Sub CommandButton1_Click() Dim res As String res = T ...

  10. 每个开发者都应该知道的SOLID原则

    每个开发者都应该知道的SOLID原则 单一职责原则(SRP) 它为什么违反了 SRP? 这种设计将来会带来什么问题? 开闭原则(OCP) 如何使它(AnimalSound)符合 OCP? 里氏替换原则 ...