栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python中根据xml、csv批量执行单元测试和生成测试报告

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python中根据xml、csv批量执行单元测试和生成测试报告

1、需要导入unittest

import unittest
from codeTest.codeTest01 import Demo01
from readdata.readxml import Readxml
r = Readxml()
d = Demo01()
add1 = r.read_xml('../data/test01.xml','add','add1')
add2 = r.read_xml('../data/test01.xml','add','add2')
add3 = r.read_xml('../data/test01.xml','add','add3')
jian1 = r.read_xml('../data/test01.xml','jian','jian1')
jian2 = r.read_xml('../data/test01.xml','jian','jian2')
jian3 = r.read_xml('../data/test01.xml','jian','jian3')
cheng1 = r.read_xml('../data/test01.xml','cheng','cheng1')
cheng2 = r.read_xml('../data/test01.xml','cheng','cheng2')
cheng3 = r.read_xml('../data/test01.xml','cheng','cheng3')
chu1 = r.read_xml('../data/test01.xml','chu','chu1')
chu2 = r.read_xml('../data/test01.xml','chu','chu2')
chu3 = r.read_xml('../data/test01.xml','chu','chu3')
aa = d.add(int(add1),int(add2))
bb = d.jian(int(jian1),int(jian2))
cc = d.cheng(int(cheng1),int(cheng2))
dd = d.chu(int(chu1),int(chu2))
class Test01(unittest.TestCase):
    def setUp(self) -> None:
        print('我是setUp')
    def test01(self):
        self.assertEqual(int(add3),aa)
    def test02(self):
        self.assertEqual(int(jian3),bb)
    def test03(self):
        self.assertEqual(int(cheng3),cc)
    def test04(self):
        self.assertEqual(int(chu3),dd)
    def tearDown(self) -> None:
        print('我是tearDown')
    @classmethod
    def tearDownClass(cls) -> None:
        print('我是tearDownClass')
    @classmethod
    def setUpClass(cls) -> None:
        print('我是setUpClass')
if __name__ == '__main__':
    unittest.main()

 2、创建后端代码

class Demo01(object):
    def add(self,a,b):
        c = a + b
        return c
    def jian(self,a,b):
        c = a - b
        return c
    def cheng(self,a,b):
        c = a * b
        return c
    def chu(self,a,b):
        c = a / b
        return c

3、写入数据


    
        11
        11
        22
    
    
        12
        11
        1
    
    
        1
        2
        2
    
    
        6
        2
        3
    

 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

r = Readxml()
print(r.read_xml('../data/test01.xml','add','add1'))

 5、将测试模板导入到data中

 测试报告导入模板

https://download.csdn.net/download/qq_58232649/29660311https://download.csdn.net/download/qq_58232649/29660311

 编写测试模板代码块

import unittest
from data.HTMLTestRunner import HTMLTestRunner
from test.unittestTest01 import Test01
class HtmlClass():
    def htmlMethod(self):
        #设置套件
        suite = unittest.TestSuite()
        lists = ["test01","test02","test03","test04"]
        for i in lists:
            suite.addTest(Test01(i))
        with open("../response.html", "wb") as f:
            HTMLTestRunner(
                stream=f,
                title="加减操作",
                description="测试一期",
                verbosity=2
            ).run(suite)
h = HtmlClass()
h.htmlMethod()

 执行完成,在根目录会生成一个文件

 点击生成的文件,将文件用浏览器打开,打开后就可以看到你的测试报告

 编写csv的代码

去读取csv里面的数据 csv的数据展示

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/303081.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号