• 单元测试 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 中写入代码并运行

      

  • 相关阅读:
    PAT 1065. A+B and C (64bit) (20)
    PAT 1042. Shuffling Machine (20)
    PAT 1001. A+B Format (20)
    HDU 2082 找单词 母函数
    NYOJ 138 找球号(二) bitset 二进制的妙用
    POJ 1151 Wormholes spfa+反向建边+负环判断+链式前向星
    POJ 1511 Invitation Cards 链式前向星+spfa+反向建边
    zzuli 2130: hipercijevi 链式前向星+BFS+输入输出外挂
    NYOJ 323 Drainage Ditches 网络流 FF 练手
    POJ 1273 Drainage Ditches 网络流 FF
  • 原文地址:https://www.cnblogs.com/xinzaiyuan/p/14621610.html
Copyright © 2020-2023  润新知