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()
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 文章來自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鵬閱讀 9,215評論 2 126
  • 1.測試與軟件模型 軟件開發生命周期模型指的是軟件開發全過程、活動和任務的結構性框架。軟件項目的開發包括:需求、設...
    Mr希靈閱讀 22,002評論 7 278
  • 1.測試與軟件模型 軟件開發生命周期模型指的是軟件開發全過程、活動和任務的結構性框架。軟件項目的開發包括:需求、設...
    宇文臭臭閱讀 6,751評論 5 100
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,981評論 19 139
  • Android單元測試介紹 處于高速迭代開發中的Android項目往往需要除黑盒測試外更加可靠的質量保障,這正是單...
    東經315度閱讀 3,153評論 6 37