【问题标题】:Setting a default working directory in PyDev/LiClipse/Eclipse在 PyDev/LiClipse/Eclipse 中设置默认工作目录
【发布时间】:2016-09-18 15:09:18
【问题描述】:

我正在使用 LiClipse / PyDev。当我通过右键单击从包资源管理器中运行一些测试或其他 python 模块时 -> 运行为 -> python 运行,工作目录设置为相应文件的目录,例如${workspace_loc:MyProject/tests/misc}。

我希望一切都从项目的根文件夹执行。在运行配置 -> 参数下,可以通过“默认”按钮选择该文件夹,该按钮将工作目录设置为 ${project_loc:/selected project name}。不幸的是,默认情况下显然没有选择“默认”按钮,而是选择了如上所述设置目录的“其他”选项。

当有许多测试模块时,手动为每个模块选择这个“默认”按钮会有点烦人。那么我如何让 LiClipse 在默认情况下实际选择该按钮?或者以其他方式默认使用项目目录作为工作目录?

之前有人问过类似的问题,但没有令人满意的答案:Configuring the working directory in Eclipse 3.8.1 with PyDev-project。唯一的结论是 Eclipse 错误不允许配置默认选项的值,尽管这对于我的目的不是必需的。我只希望实际选择此选项。

这个问题可能是 PyDev 特有的,因为似乎 Eclipse 通常根据我阅读的内容选择了“默认”选项。

【问题讨论】:

    标签: eclipse pydev working-directory run-configuration liclipse


    【解决方案1】:

    不幸的是,正如您所发现的,实际上没有办法在 IDE 中设置该默认值。

    不过,为了解决您与测试相关的问题,我的建议是使用 pytest 运行器(您可能必须安装它 - 说明位于:https://pytest.org/latest/getting-started.html,然后在 PyDev > PyUnit 首选项中设置使用pytest runner)...作为说明,即使您不会使用 pytest 编写测试的方式(我强烈推荐),并且使用 unittest.TestCase,它也应该可以工作...

    运行 pytest 时,PyDev 需要遵循不同的逻辑,因为它处理和加载其固定装置的方式使其始终使用相同的文件夹(我认为它是源文件夹,但如果您使用的是源文件夹和项目文件夹应该可以工作 - 如果不是这种情况,在 pytest 中,创建一个会话自动使用夹具很简单,您可以使用它来将工作目录更改为给定文件夹(使用 unittest.TestCase 这是由于您受到测试类层次结构的限制,因此更难做到这一点,但您也可以覆盖测试的 setUp 来做到这一点。

    【讨论】:

    • 我在其他方面工作了一段时间,所以直到现在我才能检查。但由于我无法找到任何其他方式直接通过 Eclipse 进行管理,看来您的答案是正确的。 pytest 能够运行 unittest 测试用例,但我确实切换到 pytest 样式的测试定义,这非常好。
    猜你喜欢
    • 2011-03-06
    • 1970-01-01
    • 2018-02-20
    • 2015-08-10
    • 1970-01-01
    • 2018-01-31
    • 2012-12-09
    • 2010-09-12
    • 1970-01-01
    相关资源
    最近更新 更多