【发布时间】:2022-01-25 08:47:23
【问题描述】:
这是我的第一个问题,因为我找不到问题的答案。 我正在使用 pytest 开发测试自动化。我的大多数团队都在使用 pyCharm,但另一方面我更喜欢 vscode。在创建记录器时,我们遇到了日志文件位置的问题。 首先让我向您展示文件夹结构:
project_name
Folder1
Folder2
Output
Test
test_case1.py
conftest.py
记录器定义放在 conftest.py 中。我的同事为要创建的新日志文件放置了一个路径,如下所示:
../output/logs/logger.log
它适用于他们,但是当我尝试运行它时,Python 正在其他地方创建输出文件夹。它就在 project_name 旁边。
output
Logs
Project_name
Folder1
etc
我需要做的就是删除一个点
./output/logs/logger log
并且输出文件夹已正确创建。
我试图让这条路径少一些硬编码,使用
os.path.dirname(os.getcwd) + '\\project_name\\outpu\\logs\\logger.log
但问题仍然存在。 看起来 vscode 从 project_name 的角度看与 pyCharm 不同。
当然我可以切换到 pyCharm,或者强制其他团队成员切换到 vscode,但我们都同意这将是灌木解决方案。 有没有办法让这条路径跨平台?
【问题讨论】:
-
您的同事可能在您使用项目根目录时使用
Test作为工作目录。在运行测试时,PyCharm 倾向于选择测试根 (Test) 作为工作目录,因此这对他们来说可能是一个隐含的决定。我想最简单的解决方案是让你cd Test并运行任何需要的东西。或者您的同事可以更改 PyCharm 中的测试运行配置并选择不同的工作目录。 -
感谢@PavelKarateev,您的建议帮助我找到了解决方案。
标签: python visual-studio-code directory path pycharm