Python

python:模拟一个模块

是否可以使用 unittest.mock 在 python 中模拟模块?我有一个名为 config 的模块,在运行测试时我想通过另一个模块 test_config 来模拟它.我怎样才能做到这一点 ?谢谢. config.py: CONF_VAR1 = "VAR1"CONF_VAR2 = "VAR2" test_config.py: CONF_VAR1 = "test_VAR1"CONF ..
发布时间:2022-01-08 21:38:38 Python

我可以“假"吗?用于测试目的的python中的包(或至少一个模块)?

我想在 python 中伪造一个包.我想定义一些东西以便代码可以做 from somefakepackage.morefakestuff import somethingfake somefakepackage 是在代码中定义的,它下面的所有内容也是如此.那可能吗?这样做的原因是为了欺骗我的单元测试,我在 python 路径中得到了一个包(或者正如我在标题中所说,一个模块),这实际上只是为这个 ..
发布时间:2022-01-08 21:38:25 Python

使用 mock patch 模拟实例方法

我在测试 Django 应用程序时尝试模拟一些东西,使用富有想象力的名称 模拟测试库.我似乎无法让它工作,我正在尝试这样做: models.py从 somelib 导入 FooClass类促销(models.Model):foo = models.ForeignKey(FooClass)定义栏(自我):print "做我不想做的事!"测试.py类 ViewsDoSomething(TestCas ..
发布时间:2022-01-08 21:38:03 Python

python mock - 在不妨碍实现的情况下修补方法

是否有一种干净的方法来修补对象,以便在测试用例中获得 assert_call* 帮助程序,而无需实际删除操作? 例如,如何修改 @patch 行以使以下测试通过: from unittest import TestCase从模拟导入补丁土豆类(对象):def foo(self, n):返回 self.bar(n)定义栏(自我,n):返回 n + 2类 PotatoTest(TestCase ..
发布时间:2022-01-08 21:37:21 Python

你最喜欢的 Python 模拟库是什么?

你最喜欢的 Python 模拟库是什么? 解决方案 我只用过一个,但是用 Michael Foord 的 Mock 效果很好:http://www.voidspace.org.uk/python/mock/. Michael 的介绍比我说得好: 已经有几个 Python 模拟库可用,为什么还要另外一个? 大多数模拟库都遵循'记录->重播"的嘲讽模式.我更喜欢'动作->as ..
发布时间:2022-01-08 21:33:01 Python

一个模拟/存根 python 模块如何像 urllib

我需要测试一个需要使用 urllib.urlopen 查询外部服务器上的页面的函数(它也使用 urllib.urlencode).服务器可能已关闭,页面可能会更改;我不能依赖它进行测试. 控制 urllib.urlopen 返回什么的最佳方法是什么? 解决方案 另一个简单的方法是让你的测试覆盖 urllib 的 urlopen() 函数.例如,如果您的模块有 导入urllibdef ..
发布时间:2022-01-08 21:31:23 Python

python在单元测试中模拟原始输入

假设我有这个 python 代码: def 答案():ans = raw_input('输入是或否')如果 ans == '是':print '你输入的是'如果 ans == '否':print '你输入的不是' 如何为此编写单元测试?我知道我必须使用“模拟",但我不明白如何.谁能举个简单的例子? 解决方案 你不能给输入打补丁,但是你可以把它包装起来使用 mock.patch().这是 ..
发布时间:2022-01-08 21:24:59 Python

试图模拟 datetime.date.today(),但不工作

谁能告诉我为什么这不起作用? >>>进口模拟>>>@mock.patch('datetime.date.today')...今天的定义(cls):... 返回日期(2010, 1, 1)...>>>从日期时间导入日期>>>日期.今天()datetime.date(2010, 12, 19) 也许有人可以提出更好的方法? 解决方案 有几个问题. 首先,您使用 mock.patch ..
发布时间:2022-01-08 21:24:15 Python

任何用于显示来自相机的实时图像的快速 Python GUI

我正在尝试显示来自 1394 相机的实时图像.目前,我的代码能够从相机循环获取图像,并且我正在寻找任何可以动态更新的快速 GUI(作为单独的线程).我可以在 PyQt 中做到这一点,也许使用 QThreads 但有什么建议或更快的方法吗?这是我的代码 #循环从相机捕捉帧 范围内的帧(1,500):打印'框架:',框架TIME.sleep(1) #每秒捕获帧image_binary = py ..
发布时间:2022-01-08 21:12:33 Python

在 Windows 上使用 python 的 uEye 相机

我需要一个 uEye 相机 在 Windows 上使用 python 来拍照和操作直播. 由于 uEye 相机是广泛使用的工业相机,我认为有一个标准的解决方案;但是,我找不到任何东西.解决方案需要在 Windows XP 或 Windows 7 上的 python 2.7 下运行. 如果有人在 Windows 上的 python 中成功使用了 uEye 相机,我将不胜感激,分享他在这个问题 ..
发布时间:2022-01-08 21:11:19 Python

如何用python制作虚拟相机?

我正在 python 中尝试使用 openCV,我制作了一个简单的网络摄像头,它只会以黑白显示,但我想知道是否有可能以某种方式将它与不和谐联系起来,所以每当我打电话给朋友时,他看到我是黑色的和白色.` 导入 cv2捕获 = cv2.VideoCapture(0)捕获.set(3, 640)捕获.set(4, 480)捕获.set(10, 300)而真:成功,img = capture.read( ..
发布时间:2022-01-08 20:59:21 Python

OPENCV:Calibratecamera 2 重投影错误和自定义计算的不同意

我有一个 python 脚本,它使用 calibratecamera2 方法从棋盘的几个视图中校准相机.成功校准后,我会追踪所有原始点并绘制一些图并再次计算重投影误差.令我惊讶的是,opencv 计算的重投影误差和我的有点不同.我觉得很奇怪.我是否以错误的方式计算它? obj_points = []# 现实世界空间中的 3d 点.数组列表img_points = []# 图像平面中的 2d 点. ..
发布时间:2022-01-08 20:50:28 Python

Azure AD 身份验证 Python Web API

我正在尝试使用 OAuth2 对用户进行身份验证并访问资源.但是,我在这样做时遇到了一些问题.以下是详细信息. 我已在 Azure 门户上将应用注册为 Web Api 我想编写一个 python 脚本,通过它我可以请求授权码,然后是访问令牌 挑战: 我没有重定向网址.我不确定我可以在这里使用什么 当我使用链接在浏览器中获取授权码时,它要求我登录 Azure.如何确保它也要求我 ..
发布时间:2022-01-08 19:58:33 Python

微软图形身份验证

我正在用 Python 构建一个可以从 Azure AD 检索数据的应用程序.此数据可能需要应用程序权限或委托权限.我成功检索了只需要应用程序权限的数据.但是,为了检索需要委托权限的数据,我正在尝试使用 OAuth2.是否可以使用 OAuth2 通过 Microsoft Graph 进行身份验证,但不让用户使用网页登录,而是通过 Python 脚本本身提供用户凭据? 注意:我想使用 Micr ..

使用带前导斜杠的路径的烧瓶路线

我正在尝试使用带有路径转换器的简单路由来获取 Flask: @api.route('/records///') 除非 URL 的“路径"部分使用前导斜杠,否则它会起作用.在这种情况下,我得到一个 404.我理解该错误,但我没有得到的是文档中或 Internet 上的任何地方都没有关于如何解决此问题的解决方法.我觉得我是第一个尝试做 ..
发布时间:2022-01-08 19:04:03 Python