test_mock_path.py
2.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# coding:utf-8
from unittest import mock
import unittest
from commons.api import mock_demo
# import temple
class Test_zhifu_statues(unittest.TestCase):
'''单元测试用例'''
@mock.patch("commons.api.mock_demo.zhifu")
def test_01(self, mock_zhifu):
'''测试支付成功场景'''
# 方法一:mock一个支付成功的数据
# temple.zhifu = mock.Mock(return_value={"result": "success", "reason":"null"})
# 方法二:mock.path装饰器模拟返回结果
mock_zhifu.return_value = {"result": "success", "reason":"null"}
# 根据支付结果测试页面跳转
statues = mock_demo.zhifu_statues()
print(statues)
self.assertEqual(statues, "支付成功")
@mock.patch("commons.api.mock_demo.zhifu")
def test_02(self, mock_zhifu):
'''测试支付失败场景'''
# mock一个支付成功的数据
mock_zhifu.return_value = {"result": "fail", "reason": "余额不足"}
# 根据支付结果测试页面跳转
statues = mock_demo.zhifu_statues()
self.assertEqual(statues, "支付失败")
@mock.patch("commons.api.mock_demo.zhifu")
def test_03(self, mock_zhifu):
'''测试支付错误场景'''
# mock一个支付成功的数据
mock_zhifu.return_value = {"result": "error", "reason": "支付错误"}
# 根据支付结果测试页面跳转
statues = mock_demo.zhifu_statues()
self.assertEqual(statues, "支付错误")
@mock.patch("commons.api.mock_demo.zhifu")
def test_04(self, mock_zhifu):
'''测试未知异常场景'''
# mock一个支付成功的数据
mock_zhifu.return_value = {"result": "excption", "reason": "未知异常"}
# 根据支付结果测试页面跳转
statues = mock_demo.zhifu_statues()
self.assertEqual(statues, "未知异常")
if __name__ == "__main__":
unittest.main()