python单元测试的unittest读取csv文件

python单元测试的unittest读取csv文件


前言:
读取xml主要是就是有四部分内容。

1.一个用来存放数据
2.一个用来读取那个存放数据的csv
3.一个用来执行测试脚本
4.一个用来生成html文件

注意点:
脚本里的内容需要都要测试通过才能成功…
比如要执行三个脚本,有一个脚本不成功,就会测试失败.

1.存放数据

// 创建一个csv文件输入数据
1,2,3
4,5,9

2.读取存放的csv数据

// 创建一个py文件,编写读取csv的脚本
# 首先导入csv模块
import csv
# 创建类
class ReadCsv():
    def read_csv(self):
        item = []  # 定义一个空列表
        c = csv.reader(open("../datademo/testcsv.csv", "r"))  # 得到csv文件对象
        # for循环这个列表
        for csv_i in c:
            item.append(csv_i)  # 将获取的数据添加到列表中
        return item

#     实例化类,打印值
readcsv = ReadCsv()
print(readcsv.read_csv())

3.执行测试脚本

// 创建一个py文件,执行脚本
#   导入unittest包
import unittest
#   引用读取csv文件的类
from readdemo.readcsv import ReadCsv

# 实例化读取文件的类
readscv = ReadCsv()
from demo.kaifa import KaiFa

# 获取类中的列表
lists = readscv.read_csv()
kaifa = KaiFa()

# 创建类
class TestCsv(unittest.TestCase):
    # 创建方法
    def test_csv(self):
        # for循环这个列表
        for csv_i in lists:
            # 定义一个值=开发的方法
            zhi = kaifa.add(int(csv_i[0]), int(csv_i[1]))
            # 比较值
            self.assertEqual(zhi, int(csv_i[2]))

# 运行
if __name__ == '__main__':
    unittest.main()

4.生成html文件

// 运行生成html的脚本
import unittest

from datademo.HTMLTestRunner import HTMLTestRunner
from test.testcsv import TestCsv

class HtmlClass():
    def shengchenghtml(self):
        suite = unittest.TestSuite()
        caselist = ["test_csv"]
        for case in caselist:
            suite.addTest(TestCsv(case))

        with open("../csvtest.html", "wb") as f:
            HTMLTestRunner(
                stream=f,
                title="单元测试",
                description="测试csv",
                verbosity=2
            ).run(suite)

if __name__ == '__main__':
    test = HtmlClass()
    test.shengchenghtml()

结果:
在这里插入图片描述
html:
在这里插入图片描述

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值