python-unittest相关内容
我正尝试在PyCharm中运行我的整个测试套件。所有测试文件都位于单个文件夹中。我可以单独运行这些文件,但当我使用“All in Folders”创建运行配置时,PyCharm找不到任何测试。 记录的消息包括: C:Python36python.exe "C:Program Files (x86)JetBrainsPyCharm Community Edition 2016.3.2he
..
我有一个类BaseTest,所有测试都是从它扩展而来的。 测试位于不同的模块和包中。 SetUpClass和tearDownClass方法在每个unitest.TestCase类之前执行。 我如何才能只执行一次SETUP和TEARDOWN。在所有测试之前和之后。 以下是代码示例: import unittest class BaseTest(unittest.TestCase):
..
我在修补伪类时观察到不一致的行为: class A: def f(self, *args, **kwargs): pass 如果我手动修补函数: call_args_list = [] def mock_fn(*args, **kwargs): call_args_list.append(mock.call(*args, **kwargs)) with mock
..
我想模拟类构造函数中的默认参数: class A (object): def __init__(self, connection=DefaultConnection()): self.connection = connection 我想在单元测试中模拟DefaultConnection,但作为默认值传入时无法工作。 推荐答案 您可以使用Patch对pa
..
我有一个类,它使用一个类变量来选择要执行的逻辑。 #in file1: class SomeHelper(): def __init__(self): self.my_var = 0 #in file2: import file1 class MyClass(): ... ... def calculate(): inst
..
假设我有一个代码片段,如下所示 foo = SomeClass() bar = foo[1:999].execute() 为了测试这一点,我尝试了 foo_mock = Mock() foo_mock[1:999].execute() 遗憾的是,这引发了异常 TypeError:‘mock’对象不可订阅 那么,我如何创建可订阅Mock对象? 推荐答案 请改用
..
我正在尝试理解模拟中的assert_called_with,但我编写的代码引发了一些错误。 import os import twitter URL = "http://test.com" def tweet(api, message): if len(message) > 40: message = message.strip("?.,.,.") st
..
我想在测试期间临时捕获发送给stdout(我们的stderr)的消息,并断言这些消息中是否出现某些字符串模式: import unittest class SomeTest(unittest.TestCase): def test_stdout(self): output = "" function_that_writes_to_stdout()
..
我需要在测试套件中的每一个pyunit测试通过或失败后调用Web API,因此我基本上需要访问tearDown方法中的测试状态。 但我找不到(或我完全错过了)任何有关谁访问此数据的文档。 有什么想法吗? 推荐答案 使用TestResult。 import unittest class TestFoo(unittest.TestCase): def test_
..
这是我的头几行代码,但我已经编写了20年,所以我很快就想让单元测试运行起来。 我正在使用 Windows 10 对比代码1.30.2,2019年1月7日。 Python 3.7.2 Python扩展ms-python.python2018.12.1 这是我所在文件夹的内容。 Directory: C:DATAGitPymy_first_code Mode
..
这是我第一次为了学校的作业而玩弄Python的单元测试。我基本上有一个Circle对象,我在其中使用pyunit来确保数据被正确存储。 我注意到,Python只计算作为测试用例的方法的数量,而不是Assert语句的数量。 例如,我想测试方法是否正常工作,尽管有4条Assert语句,但Python只将以下内容计为2个测试。它真的让我措手不及,因为对于Java的JUnit,它将计算Assert
..
我想断言两个字典是相等的,使用的是Python的unittest,但忽略了字典中某些键的值,语法如下: from unittest import TestCase class Example(TestCase): def test_example(self): result = foobar() self.assertEqual(
..
因此,我的理解是,调用driver.Quit或Close是关闭驱动程序和相关窗口的正确方法。 但是,在运行我的测试时,似乎即使没有调用driver.Quit而是调用PASS,窗口仍然关闭。 我使用的是带有通过pytest执行的单元测试用例的python。我还通过PyCharm运行了标准单元。在所有情况下,浏览器都会按说明关闭。我希望浏览器保持打开状态,以便我可以调试测试。我可以直接打给
..
我想将一些自定义断言方法添加到TestCase中。作为一个简单的例子,我刚刚在下面的测试类中放置了一个。它按预期工作,但在生成输出时,回溯会在输出中包含自定义断言。 需要采取什么步骤才能使其行为类似assertEquity()?AssertEquity的代码在TestCase中,但引发断言的实际行并不出现在回溯中。我需要做什么才能使test_omething2的输出看起来更像test_ome
..
使用unittest是否可以有一个选项来统计测试总数、跳过的测试数量和运行次数。在运行之后,测试失败的次数(我知道可以在输出中看到)。我想把它转储到JSON中,如果我想通过编程实现的话那就太好了 谢谢 推荐答案 经过多次尝试和错误,我终于让它正常工作了... 基于scoffey's answer。 希望它能有所帮助。 import unittest class
..
我正在尝试测试一个使用Standar输入(用RAW_INPUT()读取,用一个简单的打印编写)的Python脚本(2.7),但我不知道如何做到这一点,而且我确信这个问题非常简单。 这是我的脚本的简历代码: def example(): number = raw_input() print number if __name__ == '__main__': ex
..
有人能帮我纠正一下这个错误信息吗: Could not find a version that satisfies the requirement unittest 我安装了最新的Python和PyCharm,并尝试安装程序包unittest,但收到上述错误。到目前为止,我对Python的体验有点像DLL地狱... 推荐答案 如果您尝试此操作: $ pip instal
..
我正在开发一组Python脚本,用于对数据集进行预处理,然后使用SCRKIT-LEARN生成一系列机器学习模型。我想开发一套单元测试来检查数据的预处理功能,并希望能够使用一个小型的 pandas 数据帧来确定答案,并在Assert语句中使用它。 我似乎无法让它加载数据帧并使用Self将其传递给单元测试。我的代码如下所示; def setUp(self): TEST_INPUT_
..
我是新手,正在尝试做一些我在Ruby中经常做的事情。也就是说,迭代一组索引,将它们用作函数的参数,并将其结果与一组装置输出进行比较。 所以我像在Ruby中通常所做的那样编写了它,但这只产生了一个测试用例。 def test_output(self): for i in range(1,11): .... self.assertEqual(fn(i),
..
我正在修改一些代码以兼容Python 2和Python 3,但在单元测试输出中观察到警告。 /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/unittest/case.py:601: ResourceWarning: unclosed socket.socket fd=4, family=Addr
..