【在python单元测试中模拟一个类和一个类方法】教程文章相关的互联网学习教程文章

Python21 单元测试、文档测试【代码】

单元测试、文档测试单元测试:单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。unintest:Python自带的单元测试框架代码: ``` # 单元测试 ## unittest class Dict(dict): def init(self,**kw): super().__init__(**kw) # 使用dict的初始化方法def __getattr__(self, key): # 动态返回属性keytry:return self[key]except KeyError:raise AttributeError(r'"Dict" object has no attribute "%s"'% key)de...

python – 对打印到stdout的程序执行单元测试的好策略?【代码】

我有一个约500行的python程序写入stdout(使用print语句).现在我想进行一些更改并对程序进行重构,但我想确保在这样做的过程中我不断获得相同的输出(当然,给定相同的输入). 如果没有重写函数来返回字符串(允许更容易的测试)而不是当前的打印,那么这样做的好策略是什么? 我虽然将初始输出(在我开始更改之前)重定向到文本文件.然后,我如何使用文本文件轻松自动检查已修改程序的输出(不将该输出再次重定向到临时文本文件并比较文件)? ...

Python:Nose没有接受单元测试【代码】

我已经在python中编写了一个单元测试,并希望在我运行鼻子时将其拾起.当我在包含测试的文件上运行鼻子时它工作正常,即nosetests myFile.py但不是在我跑的时候nosetests在同一目录中.我以为鼻子会在你运行它的目录中自动获取所有测试?知道如何让它工作吗?该目录中的各种文件中有更多测试,我希望能够同时运行它们. 这是我的测试看起来像:class testSimple(unittest.TestCase):def setUp(self):passdef tearDown(self):passdef test...

在python单元测试中模拟一个类和一个类方法【代码】

我正在使用python的unittest.mock在Django应用程序中进行一些测试.我想检查一个类是否被调用,并且还调用了它的实例上的方法. 例如,给出这个简化的示例代码:# In project/app.py def do_something():obj = MyClass(name='bob')return obj.my_method(num=10)这个测试来检查发生了什么:# In tests/test_stuff.py @patch('project.app.MyClass') def test_it(self, my_class):do_something()my_class.assert_called_once_with(name='...

python – 如何单元测试Flask websocket服务器(Flask-SocketIO)

我想知道如何在我的烧瓶websocket服务器上进行单元测试.我的应用程序支持REST API(Flask-restful)和Web Socket(Flask-SocketIO)上的很多接口.所有websocket“发射”都在芹菜过程中进行.我有问题单元测试那些websocket逻辑. >几个人说,首先我必须分开这个rest-api websocket应用程序.在单个服务器上运行整个应用程序(逻辑上)是否奇怪?>如何对websocket代码进行单元测试? 谢谢解决方法:有些人更喜欢单独的HTTP和WebSocket应用程序,...

Python:assertRaises在单元测试中出错…异常未被捕获【代码】

我编写了一个单元测试来强制抛出异常.抛出异常,但我的单元测试语句由于某种原因没有捕获它,并且意外失败. 这是单元测试:def test900_001_ShouldRaiseExceptionDuplicateID(self):hist = projecthistory.ProjectHistory()myProject = project.Project(id = 42, locR = 10, locP = 15, locA = 30, eP = 200, eA= 210)hist.addProject(myProject)myProject2 = project.Project(id = 42, locR = 15, locP = 25, locA = 40, eP = 300, ...

单元测试Python:在函数内部调用函数调用【代码】

我有这样的django视图# Django viewfrom some_module import f2 def f1(request, version):# some codef2(**kargs)# more codereturn HTTPResponse(response)函数f2在另一个模块中# some_module def f2(**kargs):# some codeDjango视图是API的一部分,因此请求和响应都在json中 我如何能 : >在模拟请求时为此函数编写单元测试> mock f2,这是一个基于数据库的函数,完全避免数据库连接 编辑: 我使用的数据库是Cassandra,所以我不能使...

Python项目中的单元测试【代码】

引入 单元测试负责对最小的软件设计单元(模块)进行验证,unittest是Python自带的单元测试框架。 单元测试与功能测试都是日常开发中必不可少的部分,本文演示了Python中unittest单元测试框架的基本使用。 一个简单的测试例子 定义一个类,简单的实现add、sub两个方法,并对其进行单元测试。 待测试的m1.py文件内容如下:class MyClass(object):"""just a test case"""def __init__(self, x, y):self.x = int(x)self.y = int(y)de...

python – 使用Py.Test测量单元测试特定文件的覆盖范围【代码】

我正试图用Py.Test检索我的单元测试的覆盖范围.问题是我得到了关于其他我不关心的python文件的覆盖信息. 这是我的文件结构的一个例子.在这种情况下,我想测试:car.py,wheel.py和steer.py python2.7 / site-packages中/ > car.py> wheel.py> steer.py> coverage.py(来自pypi.python.org)> yaml(python yaml库,来自pypi.python.org)> pytest-2.5.2-py2.7.egg(python py.test库)>还有更多 python2.7 /站点包/测试/ > test_car.py> con...

在单元测试python中出现故障步骤时运行测试用例【代码】

我在Python中有一个testSuite,有几个使用单元测试框架的测试用例.我正在使用进口单元测试 如果测试用例中的测试步骤失败,则测试用例将进入拆解类.即使一个测试用例失败,我还想继续测试用例的其余部分. 单元测试的默认行为:如果任何测试步骤失败,它将拆除类并结束测试用例. 测试步骤:我的意思是断言相等并且像这个内置的proc,它定义了它是失败还是通过解决方法:考虑到你有这样的事情:class TestFoo(unittest.TestCase):def test_...

python – 是否可以运行所有单元测试?【代码】

我有两个模块,有两个不同的类及其相应的测试类.foo.py------class foo(object):def fooMethod(self):// smthgbar.py------class bar(object):def barMethod(self):// smthgfooTest.py------class fooTest(unittest.TestCase):def fooMethodTest(self):// smthgbarTest.py------class barTest(unittest.TestCase):def barMethodTest(self):// smthg在任何测试和源模块文件中,我删除了if __name__ ==“__ main__”:因为增加了一致性...

使用nose进行Python单元测试:进行顺序测试【代码】

我正在学习如何进行单元测试.我在使用Python / nose / Wing IDE. (我正在编写测试的The project是一个模拟框架,除此之外它还允许你同步和异步地运行模拟,并且两者的模拟结果应该是相同的.) 问题是,我希望我的一些测试能够使用在其他测试中创建的模拟结果.例如,synchronous_test在同步模式下计算某个模拟,但后来我想在异步模式下计算它,并检查结果是否相同. 我该如何构建这个?我是将它们全部放在一个测试函数中,还是单独进行异步测...

计算Python单元测试中的子测试【代码】

从3.4版开始,Python supports a simple subtest syntax when writing unittests.一个简单的例子可能如下所示:import unittestclass NumbersTest(unittest.TestCase):def test_successful(self):"""A test with subtests that will all succeed."""for i in range(0, 6):with self.subTest(i=i):self.assertEqual(i, i)if __name__ == '__main__':unittest.main()运行测试时,输出将是python3 test_foo.py --verbose test_successfu...

python – 单元测试面向方面的功能

我想知道你认为什么是单元测试面向方面的应用程序功能的最佳方法(好吧,也许这不是最好的名字,但它是我能想出的最好的:-)),例如日志记录还是安全? 这些东西在应用程序中是全方位存在的,那么如何正确地测试它们呢? 例如.说我正在用Python编写Cherrypy Web服务器.我可以使用装饰器来检查登录用户是否具有访问给定页面的权限.但后来我需要为每个页面编写一个测试,以查看它是否有效(或更像是看到我没有忘记检查该页面的安全性权限). 如...

python – 如何在执行Django单元测试时禁用第三方API?【代码】

我正在尝试针对Django中的某些代码构建一些单元测试,这些代码运行针对第三方API的操作.具体来说,我正在使用MailChimp同步一些用户数据并使用实现MailChimp API的库. 我有一个自定义类MailChimpAPI,它本质上充当我正在使用的Python库的瘦包装器.以下是代码的一些相关部分:class MailChimpAPI(object):"""A wrapper for implementing business logic and exception handling aroundthe PyChimp API"""...def __init__(self, api_key...

单元测试 - 相关标签