python-3.x - 尽管路径正确存在,但当我无法访问 sql 路径时,我应该看哪个方面?
问题描述
问题是尽管pytest打印出sql路径和sql文件直接正确存在,但还是出现了错误消息。此外,python 代码无需执行 pytest 代码即可工作。即使我直接将此测试代码文件移动到另一个文件,也会出现相同的错误消息。
我应该看哪个方面?是否有任何特定的方法可以使用 pytest 编写测试代码以访问 db,尽管我不认为 pytest 代码本身是错误的。
用pytest写的测试代码
def test():
sql_path = "xxx/sql/api/auth/auth.id.sql"
id_ = 'xxx'
print('a1' + str(sql_path))
> rows = dba.daccess(sql_path, s1=id_)
test_auth.py:77:
用python写的访问db的代码(dba.py)</p>
sql_path = 'xxx/sql/api/auth/auth.id.sql', sql_params = {xxx}
def daccess(sql_path, **sql_params):
print('a1'+str(sql_path))
> f = open(sql_path)
E FileNotFoundError: [Errno 2] No such file or directory: 'xxx/sql/api/auth/auth.id.sql'
错误
../xxx/common/db/dba.py:28: FileNotFoundError
------------------------------------------------------------------------------------- Captured stdout call --------------------------------------------------------------------------------------
a1<module 'xxx.common.db.dba' from '/Users/xxx/local/xxx/xxx/common/db/dba.py'>
a1xxx/sql/api/auth/auth.id.sql
============================================================================== 1 failed, 1 passed in 4.94 seconds ===============================================================================
- 技术:python3/pytest/flask/SQLAlchemy
解决方案
推荐阅读
- javascript - 角高图表颜色。除了 Highcharts.getOptions().colors[index] 还有什么方法可以获取颜色?
- mysql - Mysql触发器,将来自不同表的两个值相乘,按组汇总并将值添加到另一列
- ruby-on-rails - Rails.root - 未初始化的常量
- python - 在某些条件下从数据框中删除重复项
- c++ - 从标准输入将双打存储在向量中
- c++ - C++ 字符数组不接受超过 4 个字符的输入
- ios - swift 4.1 ISO8601DateFormatter 不解析 MRAID 广告内容传递的日期
- sql-server - 如何让 PyCharm 解析我的 SQL 引用?
- c# - 如何从与 Chromium 应用程序集成的 Windows 应用程序中保存 HAR 文件?
- javascript - 如何使用按钮平滑滚动到网页的不同部分?(最好没有 jQuery、Bootstrap 等)