Python中文
首页
教程
问答
标签
搜索
登录
注册
小马在测试中被撕裂
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在开发的python包中使用ponyorm来管理sqlite数据库。你知道吗</p> <p>我想使用pytest进行测试。你知道吗</p> <p>我的包提供了一个“代理”对象,用于连接到服务器API并检索“事件”。在初始化代理时,将设置pony orm并将其绑定到sqlite db,可以是内存中的(用于测试),也可以是文件。你知道吗</p> <pre class="lang-py prettyprint-override"><code> def setup_db(filepath=None): if filepath: db.bind(provider="sqlite", filename=filepath, create_db=True) else: db.bind(provider="sqlite", filename=":memory:", create_db=True) db.provider.converter_classes.append((Enum, EnumConverter)) db.generate_mapping(create_tables=True) </code></pre> <p>事件的状态使用pony orm存储在sqlite数据库中。你知道吗</p> <p>我希望创建一个新的代理对象,每个测试都有一个干净的数据库,因此我在<code>conftest.py</code>文件中使用pytest fixture。你知道吗</p> <pre class="lang-py prettyprint-override"><code> @pytest.fixture def agent(): agent=Agent(parm1="param1",...) return agent </code></pre> <p>我无法从数据库中正确地“解除绑定”,在第二次测试中出现此错误:</p> <p><code>pony.orm.core.BindingError: Database object was already bound to SQLite provider</code></p> <p>我想要一些关于最好的方法的建议。 谢谢。你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>看看Pony代码,清除<code>provider</code>实例的<code>Database</code>属性就足够了,这样它就可以重新绑定了。你知道吗</p> <p>如果您产生<code>Agent</code>而不是从fixture返回它,那么在<code>yield</code>语句之后的所有内容都将作为fixture分解代码运行。你知道吗</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
将Pandas数据帧转换为PyTorch张量?
4 回答
将Pandas数据帧转换为scipy稀疏矩阵
7 回答
将Pandas数据帧转换为Spark Datafram时出现问题
9 回答
将pandas数据帧转换为spark DataFram时出错
8 回答
将Pandas数据帧转换为spark datafram时收到错误
7 回答
将Pandas数据帧转换为Spark数据帧
5 回答
将Pandas数据帧转换为Tensorflow数据
5 回答
将Pandas数据帧转换为tkinter obj
3 回答
将pandas数据帧转换为XML
1 回答
将Pandas数据帧转换为值sql语句
8 回答
将pandas数据帧转换为元组
7 回答
将pandas数据帧转换为元组列表
2 回答
将pandas数据帧转换为元组列表并删除所有pandas数据类型
4 回答
将pandas数据帧转换为具有头和数据类型的numpy数组
9 回答
将pandas数据帧转换为内存中的拼花地板,并将其加载到Python中的Hadoop中
5 回答
将pandas数据帧转换为内存中类似文件的对象?
6 回答
将Pandas数据帧转换为内存功能(&F)
6 回答
将pandas数据帧转换为列表列表
1 回答
将pandas数据帧转换为列表列表以输入到RNN
10 回答
将Pandas数据帧转换为单行DataFram
5 回答