eclipse - PyDev 单元测试集运行目录

标签 eclipse pydev

我有一个位于路径中的 PyDev 单元测试模块:

$(PYDEV_PROJECT_ROOT)/tests/my_unit_test.py

我正在尝试使用 Eclipse PyDev 的单元测试工具。我的单元测试必须像这样读取配置文件:

(foo,bar,baz) = myModule.readOptimizationConfig("tests/optimization_config_file.cfg")

但是,这将不起作用,因为 PyDev 在运行之前进入“tests”目录,因此在给 readOptimizationConfig 的路径中指定“tests/”会使其尝试加载

$(PYDEV_PROJECT_ROOT)/tests/tests/optimization_config_file.cfg

但是,我还需要使用命令行中的 nosetests 运行这些测试。 这是因为,为了为我的项目运行所有测试,而不是在默认提供的特定文件中运行它们的选项,最简单的解决方案是只使用“nosetests”命令,而不是搞乱 Eclipse启动配置。但是,nosetests 需要从 $(PYDEV_PROJECT_ROOT) 根目录运行,因此它需要在路径中指定的 'tests/'。

有没有办法强制 eclipse 从项目根目录运行单元测试,以便我传递给 readOptimizationConfig 的路径对这两种方法都有效?

最佳答案

可以在 PyDev 中执行此操作,但您必须在每次启动配置时执行此操作,所以有点无聊。

无论如何,您首先尝试运行包含单元测试的脚本(就像您通常那样 - 例如,绿色“运行”箭头按钮旁边的下拉菜单然后运行为... - Python 单元测试)。由于缺少 cfg 文件,此启动将失败。现在转到运行配置(运行下拉菜单 - 运行配置),打开参数选项卡,然后在底部的工作目录下输入您想要的路径(或使用工作区...按钮浏览它)。例如,如果您想从项目根目录运行并且您的项目名为 awesome-project,您可以这样写:

${workspace_loc:awesome-project}

现在您应该有一个有效的启动配置,您可以从“运行”和“调试”菜单中使用它。我有时会立即将这些配置重命名为明显的名称,例如“很棒的项目测试”。

关于eclipse - PyDev 单元测试集运行目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14225697/

相关文章:

java - 将鼠标悬停在文本上不改变颜色 - libgdx

java - 如何找出 Eclipse 卡住的原因?

java - 将 Jenkins 插件导入为 Maven 项目时无法解决消息错误

python - PyDev 无法识别 Celery 任务装饰器

python - 尽管重新启动,F2 键在 Eclipse Pydev 中不起作用

python - Eclipse 和 PyDev 调试器出现错误,但该程序在 win 7 上运行良好

android - 禁用 2g/3g android

java - 玩!未找到框架 Eclipse 调试源

python - 使用 thread.join 确保所有线程都加入时,Pydev PyUnit 出现问题

python - 设置 Pydev 交互式控制台的默认目录?