单元测试 unittest 读取文件 (CSV, XML)

目录

  1. CSV 文件读取

  2. XML 文件读取

    2.1 定义

    2.2 XML 和 HTML 的差异

    2.3 XML 命名规则

    2.4 XML 使用

      2.4.1 XML 测试加减法

1. CSV 文件读取

  1) 在data 目录下新建 test.csv 并写入数据

  

 

  2)新建 readdata 目录与 data 目录同级

  

 

  3)新建 readcsv.py 并写入代码

import csv   #导入csv模块
class ReadCsv():
    def read_csv(self):
        item =[]    #定义一个空列表
        c = csv.reader(open("../commonDemo/test1.csv","r"))    #得到csv文件对象
        for csv_i in c:
            item.append(csv_i)      #将获取的数据添加到列表中
        return item
            
r = ReadCsv()
print(r.read_csv())
读取 csv 数据

  

 

  4)在测试目录下的 unittestdemo.py 中导入并实例化

  

   5)在测试用例中调用开发代码中的加方法并运行看效果

   

  此时发现报错,这是因为字符串不能相加,所以需要转成int类型

 

 

2. XML 文件读取

  2.1 定义

  XML指可扩展标记语言
  XML是一种标记语句,很类似HTML
  XML标签没有被预定义,需要自行定义标签

  2.2 XML 和 HTML 的差异

  1.XML为不同的目的而设计

  2.XML被设计为传输和存储数据,其焦点是数据的内容,HTML被设计用来显示数据, 其焦点是数据的外观

  3.XML意在传输信息,而HTML意在显示信息

  2.3 XML 命名规则

  名称可以含字母、数字以及其他的字符
  名称不能以数字或者标点符号开始
  名称不能以字符 “xml”(或者 XML、Xml)开始
  名称不能包含空格

  2.4 XML 使用

from xml.dom import minidom
class Readxml():
    def read_xml(self,filename,onename,twoname):
        root =minidom.parse(filename)
        firstnode =root.getElementsByTagName(onename)[0]
        secondnode=firstnode.getElementsByTagName(twoname)[0].firstChild.data
        return secondnode

 

from xml.dom import minidom

class Readxml():
    def read_xml(self):
        root = minidom.parse("../data/test1.xml")
        firstnode = root.getElementsByTagName("add")[0]
        secondnode = firstnode.getElementsByTagName("add1")[0].firstChild.data
        return secondnode

r = Readxml()
print(r.read_xml())

  1)在 data 目录下新建 test1.xml 并写入数据

  

   2)在 readdata 目录下新建 readxml.py 并写入数据

  

 

   3)在测试目录下的 unittestdemo.py 中导入并实例化

  

   4)在测试用例 test02 中写入方法并运行

  

 

 

   此时发现报错,那是因为字符串不能相加,所以需要转为int类型

  

 

   

   2.4.1 XML 测试减法

  1)在xml 中写入数据 reduce 标签

  

 

  2)实例化

  

  3)在测试用例test03 中写入代码并运行

  

 

posted @ 2021-04-06 14:06  Mr-刘  阅读(445)  评论(0编辑  收藏  举报