当前位置: 首页 > 面试题库 >

导致sys.exit()的单元测试

丁良骏
2023-03-14
问题内容

无论我做什么,sys.exit()都被unittest调用,即使是最琐碎的例子。我无法确定我的安装是否混乱或正在发生什么。

IDLE 1.2.2      ==== No Subprocess ====
>>> import unittest
>>> 
>>> class Test(unittest.TestCase):
        def testA(self):
            a = 1
            self.assertEqual(a,1)

>>> unittest.main()
option -n not recognized
Usage: idle.pyw [options] [test] [...]

Options:
  -h, --help       Show this message
  -v, --verbose    Verbose output
  -q, --quiet      Minimal output

 Examples:
   idle.pyw                               - run default set of tests
   idle.pyw MyTestSuite                   - run suite 'MyTestSuite'
   idle.pyw MyTestCase.testSomething      - run MyTestCase.testSomething
   idle.pyw MyTestCase                    - run all 'test*' test methods
                                           in MyTestCase

Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
    unittest.main()
  File "E:\Python25\lib\unittest.py", line 767, in __init__
    self.parseArgs(argv)
  File "E:\Python25\lib\unittest.py", line 796, in parseArgs
    self.usageExit(msg)
  File "E:\Python25\lib\unittest.py", line 773, in usageExit
    sys.exit(2)
SystemExit: 2
>>>

问题答案:

您的示例也在我的安装中退出。我可以通过更改使其执行测试并保留在Python中

unittest.main()

unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromTestCase(Test))

在Python库参考中可以找到更多信息。



 类似资料:
  • 问题内容: 我有一个Python 2.7方法,有时会调用 当满足正确的条件时,是否可以进行单元测试以验证是否调用了此代码行? 问题答案: 是。加注,因此您可以使用以下命令进行检查: 的实例具有设置为建议的退出状态的属性,并且返回的上下文管理器将捕获的异常实例设置为,因此检查退出状态很容易: sys.exit文档: 从Python退出。这是通过引发异常来实现的…可以在外部级别拦截出口尝试。

  • 我正在使用和Spy对函数进行单元测试。 这是正在测试的类: 我正在尝试使用Mockito和spy进行测试,因为我不想调用真正的函数只需验证一下即可。该测试称为 这是错误: 我也尝试过这样做,它会导致空指针:

  • 问题内容: 我刚开始使用来自PHP背景的PHPUnit测试进行测试。 在PHP中,非常讲道,您需要100%的覆盖率。在Go中,我所读到的关于测试的大多数内容似乎很少,没有诸如挑衅之类的东西。 例如我的小程序: 现在在我的示例中,我会遇到覆盖问题,因为在单元测试中根本没有覆盖main()(应该怎么办?) 而且两个log.Fatal()都没有涉及。 我的问题是我该如何准确地编写测试?我是否以一种不太严

  • 注意附加的'.test'以区分包并避免拆分包问题。 通常,会有一些措施来确保测试类不会最终出现在构建的bundle jar中。 这里添加了一个单独的bundle,name后缀“.test”,这是常规做法。 这对于第二种选择最为明显,即拥有单独的测试包。测试包中的测试必须导入-打包待测类,而待测包也必须导出-打包所有所述待测类。 因此,显而易见的解决方案是倾向于在bundle源代码中进行单元测试,但

  • 问题内容: 我正在尝试快速使用单元测试来测试一些实际的应用程序行为。当我尝试 从测试函数中将de 强制转换为我的代码时,出现了EXC_BAD_ACCESS异常。测试代码下方: AppDelegate类设置为public,因此从访问级别来看这不是问题。 在同一测试目标中使用Objective-C可以正常工作。下面的简单说明: 调试器说someDelegate是Builtin.RawPointer。不

  • 语境 在一个使用karma和jasmine进行单元测试的Angular5项目中,我使用karma-sonarqube-unit-reporter为我的单元测试生成这个报告文件。 但是当我将它导入到Sonarqube(V6.7)(通过Jenkins)中时,我会得到以下结果 (此属性重要吗?)