【问题标题】:Cause a test to use the multiprocessing capabilities of my server导致测试使用我的服务器的多处理功能
【发布时间】:2014-08-26 16:09:01
【问题描述】:

我有一个 Python 服务器应用程序,它可以将 gevent Streamserver 预分叉到多个进程中以利用多个 CPU 内核。

通用 gevent 服务器测试用例有效。但是,我不知道如何启动我知道肯定会发挥我服务器的多处理能力的测试。请注意,我不是在问如何并行运行测试,而是在问如何让我的服务器在测试运行时使用其多处理功能 并有办法告诉这些使用功能。

【问题讨论】:

  • 听起来您正在寻找一种方法来锻炼服务器的多处理能力。如果是这种情况,那么您应该在问题中强调这一点,因为您现在得到的一个答案并没有解决这个问题。或者如果不是不是,那么你的问题肯定需要澄清。
  • 是的,我需要测试我的服务器应用的多处理能力。
  • @Louis 你能帮我澄清一下吗?英语不是我的母语。
  • 我已经编辑了你的帖子。

标签: python unit-testing gevent


【解决方案1】:

testtools 包是 unittest 的扩展,它支持同时运行测试。它可以与继承 unittest.TestCase 的旧测试类一起使用。

例如:

import unittest
import testtools

class MyTester(unittest.TestCase):
    # Tests...

suite = unittest.TestLoader().loadTestsFromTestCase(MyTester)
concurrent_suite = testtools.ConcurrentStreamTestSuite(lambda: ((case, None) for case in suite))
concurrent_suite.run(testtools.StreamResult())

这个答案不是我的作品,来自:https://stackoverflow.com/a/17059844/3767980

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-04
    • 2015-12-30
    • 1970-01-01
    • 2016-02-23
    相关资源
    最近更新 更多