python接口自动化测试四:unitests

import unittest

def aaa(a,b):
    
return b

class TestAdd(unittest.TestCase):    # 测试类可以随便命名
    @unittest.skip('跳过')      # 加在想要跳过的用例之前
    def testBbb_001(self):     # 测试用例必须以test开头
        c aaa(1,2)

        
# 断言:aaa的实际结果与预期结果相等:

        # 方法一:c:实际结果,3:预期结果
        self.assertEqual(c, 3)
        
# 方法二:断言“c==3”为真
        self.assertTrue(c==3)

        
# 判断一个元素是否在另一个元素里面
        d 'hello world'
        
self.assertIn('hello', d)     # 有先后顺序
        self.assertTrue('hello' in d)

        
#self.assertEqual(0 + 1, 1)

    def testCcc_001(self):
        
self.assertEqual((10), 1)   # 失败时,程序中断,不会继续执行
        self.assertEqual((8), 40)
if __name__ == '__main__':
    
unittest.main()

 

import unittest

class TestAdd(unittest.TestCase):    # 测试类可以随便命名
    @unittest.skip('test_01跳过')      # 加在想要跳过的用例之前,运行时将跳过此用例
    def test_01(self):     # 测试用例必须以test开头
        d = 'hello world'
       
self.assertIn('hellghjhjo', d)     # 有先后顺序

    def test_02(self):
       
self.assertEqual((0 * 10), 0)

   
def test_03(self):
       
self.assertEqual((5 * 8), 41)   # 断言失败时,此条用例不再执行,会执行下一条用例
        self.assertEqual((0 * 10), 0)

   
def test_04(self):
       
# 判断一个元素是否在另一个元素里面
        d = 'hello world'
       
self.assertIn('hello', d)     # 有先后顺序

    def test_05(self):
       
d = 'hello world'
       
self.assertTrue('hello' in d)

if __name__ == '__main__':
   
unittest.main()

 

import unittest

def add(a, b):
   
print('前置条件!!!!!:如登录')
   
return a+b
class TestAdd(unittest.TestCase):   # 继承unittest.TestCase

    # setUp:前置条件,每个用例执行之前都执行
    def setUp(self):
       
add(1, 2)   # 调用公共的函数

    # tearDown:每条用例执行之后执行
    def tearDown(self):
       
print('每条用例执行之后都执行')

   
# 开始执行测试用例
    def test_01(self):
       
print('执行第一条用例')

   
def test_02(self):
       
print('执行第二条用例')

   
def test_03(self):
       
print('执行第三条用例')

   
def test_04(self):
       
print('执行第四条用例')

if __name__ == '__main__':
   
unittest.main()

 

import unittest
import requests

def add(a, b):
   
print('前置条件!!!!!:如登录')
   
return a + b

class TestAAA(unittest.TestCase):

# 一次性的前置条件,                            运行优先级:1
    @classmethod    # 调用setUpClass方法需要此修饰符
    # 调用setUpClass方法
    def setUpClass(cls):
       
add(1, 2)   # 调用add方法,且只运行一次,如登录,只需登录一次
        cls.s = requests.session()
       
# 更新登录的cookies···

# 每个用例执行之前都执行的前置条件,             运行优先级:2
    def setUp(self):
       
print('每个用例执行之前都执行')
       此处self.s = (上面的cls.s):p = pay(self.s, money)
       
add(1, 2)   # 调用公共的函数

# 每个用例执行之前都执行的后置条件,              运行优先级:3
    def tearDown(self):
       
print('每个用例执行之后都执行')

# 执行一次性的后置条件,                          运行优先级:4
    @classmethod    # 调用setUpClass方法需要此修饰符
    def tearDownClass(cls):
       
print('执行清理动作')



   
def test_01(self):
       
self.s.post()
       
print('执行第一条用例')

   
def test_02(self):
       
self.s.get()
       
print('执行第二条用例')

if __name__ == '__main__':
   
unittest.main()
 

猜你喜欢

转载自www.cnblogs.com/zhongyehai/p/9141994.html