060 Python语法之测试

文档测试

# Author:Luo
def add(a, b):
    """
    期望结果前面一定记得前面不要有空格,后面一定不要有其他无意义的数据
    :param a: 第一个数
    :param b: 第二个数
    :return: 返回a+b
>>> print(add(10,20))
30
    """
    return a+b

import doctest

# print(add(10,10))
doctest.testmod()

单元测试

# Author:Luo
def add(x, y):
    return x + y


def sub(x, y):
    return x - y


def mul(x, y):
    return x * y


# def sub(x,y):
#     return x/y

import unittest


class Test(unittest.TestCase):
    def setUp(self):  # 每个测试函数运行前运行
        pass

    def tearDown(self):  # 每个测试函数运行完后执行
        pass

    @classmethod
    def setUpClass(cls):  # 必须使用@classmethod 装饰器,所有test运行前运行一次
        pass

    @classmethod
    def tearDownClass(cls):  # 必须使用@classmethod装饰器,所有test运行完后运行一次
        pass

    def testAdd(self):
        self.assertEqual(first=add(1, 2), second=3, msg="你妹的加法都不会")

    def testSub(self):
        self.assertEqual(first=sub(2, 5), second=-3, msg="你妹的减法都不会")

    def testMul(self):
        self.assertEqual(first=mul(7, 8), second=56, msg="就你这样还会乘法?")


if __name__ == "__main__":
    unittest.main() # 启动测试

实例化测试类

class data:
    def __init__(self):
        pass
        
    def add(self,a,b):
        return a+b
        
    def sub(self, a, b):
        return a - b

import unittest
import myclass
class  mytest(unittest.TestCase):
    def setUp(self):
        self.tclass=myclass.data()#实例化测试的类
        pass
    def tearDown(self):
        pass
    def  testsum(self):
        self.assertEquals(self.tclass.add(1,2),31,"错误")
        pass
    def  testsub(self):
        self.assertEquals(self.tclass.sub(1, 2), -11, "错误")
        pass


if __name__=="__main__":
    unittest.main()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 13,010评论 2 126
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 22,272评论 7 278
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    宇文臭臭阅读 11,688评论 5 100
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,800评论 19 139
  • Android单元测试介绍 处于高速迭代开发中的Android项目往往需要除黑盒测试外更加可靠的质量保障,这正是单...
    东经315度阅读 8,588评论 6 37