python2和python3在unittest里的tearDown()使用sys.exc_info()结果不相同

# !/usr/bin/env python
# -*- coding:utf-8 -*-

"""
 @ Author     :Evan
 @ Date       :2018/11/20 12:25
 @ Version    : 1.0
 @ Description:
 @ Modified By:
"""


import sys
import unittest


class TestOne(unittest.TestCase):

    def setUp(self):
        print("this is setup\n")

    def test_first(self):
        self.assertEqual(1, 2)

    def tearDown(self):
        print("this is tearDown\n")
        print("sys.exc_info()", sys.exc_info())


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

这里面self.assertEqual(1, 2)必定是错误的。

首先我们用Python2执行,结果如下:
在这里插入图片描述
python2中sys.exc_info()是有数据的!

接着我们用Python3执行,结果如下:
在这里插入图片描述
Python3中sys.exc_info()都是None!!

个人能力有限,不知道为什么。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章