Python中文
首页
教程
问答
标签
搜索
登录
注册
在python中模拟zipfile
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我尝试使用Python模拟库来模拟zipfile模块的一些方法。在</p> <p>我要测试的示例源:</p> <pre><code>def zipStuff(listOfPathToFiles): with ZipFile(fName, 'w') as archive: for each in listOfPathToFiles: archive.write(each, strippedfName) return archive </code></pre> <p>对于正常执行,上面的“归档”将被忽略,但将是测试期间的文件列表。在</p> <p>单元测试代码示例:</p> ^{pr2}$ <p>现在,我想嘲笑存档.写入因此,它不是实际的write调用,而是被mockWrite函数替换,这样我就可以得到所有应该压缩的文件的列表。在</p> <p>我试过:</p> <pre><code>mockZip.write = Mock(side_effect=mockWrite) </code></pre> <p>但没人叫这个。调试显示函数正在调用mockZip。<strong>enter</strong>().write。如果我尝试:</p> <pre><code>mockZip.__enter__().write = Mock(side_effect=mockWrite) </code></pre> <p>Python发出“list”没有属性write的错误(这是正确的)。我是Mock和Python的新手,如果有任何提示,我将非常感谢。建议?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我相信您的问题是函数是使用contextlib(<a href="https://docs.python.org/2/library/contextlib.html" rel="nofollow">https://docs.python.org/2/library/contextlib.html</a>)调用<strong>enter</strong>而不是<strong>entry</strong>。更改此模拟应该可以解决您的问题。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
7 回答
如何添加表示整数的擦边字符串?
1 回答
如何添加要在Bokeh中使用的新font.ttf文件?
8 回答
如何添加要显示的矩阵XY轴编号和XY轴
1 回答
如何添加计数?
7 回答
如何添加计数器函数?
4 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
2 回答
如何添加计数器来跟踪while循环中的月份和年份?
5 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
6 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
6 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
8 回答
如何添加评论拉梅尔亚姆
10 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
8 回答
如何添加谷歌地点自动完成到Flask?
10 回答
如何添加超时、python discord bot
10 回答
如何添加超过1dp的检查
5 回答
如何添加距离方法
5 回答
如何添加跟随游戏的敌人精灵
3 回答
如何添加路径以便python可以找到程序?
3 回答
如何添加身份验证/安全性以使用happybase访问HBase?
1 回答