1つ、単体テスト:
役割:関数、クラス、またはモジュールの正当性を検証するために使用されます
結果:ユニットテストに合格しました。 テストの機能が正常であることを示します。テストは失敗し、機能にバグがあるか、テスト条件の入力が正しくないことを示します。
2、クラスのユニットテスト
テストするクラスコード
class Person ( ) :
def __init__ ( self, name, age) :
self. name = name
self. age = age
def GetName ( self) :
return self. name
def GetAge ( self) :
return self. age
テストコード
import unittest
from UnitTestClass import Person
class Test ( unittest. TestCase) :
def setUp ( self) - > None :
print ( "开始测试时自动调用" )
def tearDown ( self) - > None :
print ( "结束测试时自动调用" )
def testInit ( self) :
PersonObj = Person( "Tom" , 20 )
self. assertEqual( PersonObj. name, "Tom" , "Name属性值有误" )
self. assertEqual( PersonObj. age, PersonObj. GetAge( ) , "age属性值有误" )
if __name__ == '__main__' :
unittest. main( )
>> > Ran 1 test in 0. 014s
>> >
>> > OK
>> > 开始测试时自动调用
>> > 结束测试时自动调用
>> >
>> > 进程已结束, 退出代码0
テストコードを実行しているときは、Unittestで実行するように変更する必要があります
3、機能のユニットテスト
テストする機能コード
def MySum ( a, b) :
return a + b
def MySub ( a, b) :
return a - b
テストコード
import unittest
from UnitTestFunc import UnitTestFunc
class Test ( unittest. TestCase) :
def setUp ( self) - > None :
print ( "开始测试时自动调用" )
def tearDown ( self) - > None :
print ( "结束测试时自动调用" )
def testMySum1 ( self) :
self. assertEqual( UnitTestFunc. MySum( 1 , 2 ) , 3 , "加法有误" )
def testMySub ( self) :
self. assertEqual( UnitTestFunc. MySub( 2 , 1 ) , 1 , "减法有误" )
if __name__ == '__main__' :
unittest. main( )
>> > Ran 2 tests in 0. 004s
>> >
>> > OK
>> > 开始测试时自动调用
>> > 结束测试时自动调用
>> > 开始测试时自动调用
>> > 结束测试时自动调用
>> >
>> > 进程已结束, 退出代码0
4、機能のユニットテスト
import doctest
def MySum ( a, b) :
"""
Get the sum from a and b
:param a: firstNum
:param b: secondNum
:return: sum
注意有空格
example
>>> print(MySum(1,2))
3
"""
return a + b + b
print ( MySum( 2 , 3 ) )
>> > 5
doctest. testmod( )