当前位置: 首页 > 知识库问答 >
问题:

Python Unittest Discover即使失败也返回退出代码0

晏卓君
2023-03-14

我读过几篇文章说,如果您使用unittest.main()调用unittests,如果失败,它们应该使用失败代码退出。我使用以下命令调用unittests:python-m unittest discover-v。我使用的是Python 3.6.6。unittest的示例如下所示:

from server import app
import unittest

class ServerTestCase(unittest.TestCase):
    """
    Unittesting for the server application.
    """


    def setUp(self):
        """
        Create a test client
        """
        self.app = app.test_client()
        self.app.testing = True 

    def tearDown(self):
        pass

    def test_root_endpoint(self):
        """
        Testing the root endpoint
        """

        result = self.app.get('/') 
        self.assertEqual(result.status_code, 200) 

    def test_health_endpoint(self):
        """
        Testing the health endpoint
        """

        result = self.app.get('/health')
        assert b'UP' in result.data

if __name__ == '__main__':
    unittest.main()
$ echo $?
0

共有1个答案

胡越泽
2023-03-14

您是否将unittest文件命名为类似test_*.py的文件?因为这正是discover要找的。否则,无论你的测试,结果都将是:

Ran 0 tests in 0.000s
OK

(顺便说一句,在使用-m unittest discover时,如果__name__...unittest.main(),则不必)

 类似资料:
  • 我最近参加了一个新项目。在这个项目中,所有正在使用的API总是返回状态代码200。即使响应应该是400或404,API也会返回状态代码200。 我问API为什么不返回其他响应代码,程序员告诉我他们不使用响应代码。他们把信息放在身体里。 例如,缺少一些必填字段,它们返回响应状态代码200,但正文返回如下 如果未经授权的用户试图访问,状态代码为200,身体像这样返回 我以前做的是非常不同的,我总是通过

  • 我试图用Docker compose构建一个简单的< code>next.js应用程序,但它在< code>docker-compose build上一直失败,退出代码为135。我在Mac M1 Pro上运行它(如果这是相关的)。 但我找不到任何指向退出代码135的资源。 这是 日志:

  • 我正在为Phonegap开发设置一个环境,我遇到了一些麻烦,最终构建和运行适用于Android的应用程序。 当我尝试执行Android构建时,出现以下错误: 一些细节: 我在 Windows 8.1 上运行; 我使用的是Android SDK 22; 我已经为 JDK、Android(工具、构建工具和平台工具)、Ant 和 Gradle 创建了环境变量。 任何想法为什么我会收到此错误? 谢谢。

  • 问题内容: 嗨,我是一名初学者应用程序开发人员,我选择了phonegap,请在将android作为我的项目平台添加时查看问题。代码如下: 更新:谢谢,我认为它向前移动了一点,但现在它显示了这一点: 问题答案: 请在您的PATH变量中添加 C:\ Windows \ System32

  • 我在google sheets中有一个脚本,可以将当前的工作表作为附件发送到电子邮件中。 这个脚本在我看来100%都能正常工作,但是任何其他运行相同脚本的人都会出错。寻找想法或解决方案,这样每个人都可以使用脚本,而不仅仅是我。他们都已授权脚本运行,但仍然存在相同的错误。(脚本下面列出的错误) 其他人收到的错误,每次都对我有效: https://docs.google.com/a/stratusvi

  • 我使用spring-boot(v2 M3)和Spring-WebFlux进行一个项目。在编写一个特性时,我看到我的微服务返回一个HTTP200状态代码,同时在流量中返回一个错误。 使用一个简单的异常处理程序: 我在集成测试中用webTestClient测试结果: 结果,我的测试失败了,因为返回错误通量的控制器返回的是200状态码,而不是503状态码(异常日志“test”在我的控制台中被很好地跟踪)