【问题标题】:Junit cannot read the updated codeJunit 无法读取更新后的代码
【发布时间】:2015-01-17 13:45:37
【问题描述】:

我在使用 Junit 时遇到问题,当我在更改代码中的某些内容后运行测试用例时,junit 不会读取更新的代码,而是读取原始代码。 例如:如果我将参数从“xxx”更改为“yyy”,即使我将其保存为“yyy”,Junit 也会以“xxx”作为参数运行。

我找到的一个解决方案是转到 pom.xml 文件并删除所有依赖项,执行 maven 更新,让错误出现,然后将依赖项放回原处,然后保存它。 我不确定为什么会发生这种情况,如果它的 Junit 或 Maven 我遇到问题。

有人知道吗????

【问题讨论】:

  • 您是否在保存更改后重建?
  • 是的,在我构建它之后,我收到一条错误消息,提示找不到 类,这是我实际测试的类。
  • 您是使用 Eclipse 之类的 IDE 来运行 Junit 测试,还是使用 maven 从命令行运行测试?
  • 我现在用的是 Eclipse,不过还没用 maven 试过..
  • 你能告诉我们更多关于你的项目布局(以及你是如何集成到 eclipse 中的)吗?由于这通常是开箱即用的,听起来你改变了某事。偏离默认设置。

标签: java eclipse unit-testing maven junit


【解决方案1】:

终于经过很长的查找错误的过程,我能够使它工作。我遇到的问题是我在 pom 文件中有循环 maven 依赖项,并且除了 maven 依赖项之外,我也将构建路径作为依赖项。我必须删除 eclipse 依赖项并更新循环依赖项以及正确的工件 ID 名称,并且它起作用了。

【讨论】:

    【解决方案2】:

    假设你使用的是 Eclipse,试试这个:

    1 - 右键单击​​ Package Explorer 中的 src/test/java 文件夹

    2 - 选择构建路径 -> 配置输出文件夹

    3 - 输入target/test-classes,点击确定

    如果运气不好,请查看此答案:Eclipse/Maven: JUnit tests not compiled when running them

    【讨论】:

    • 我尝试使用它,但再次失败。它不知何故没有通读更新的课程,我什至不知道在谷歌上搜索什么......哈哈
    • 检查我添加的链接。
    • 我尝试使用链接上提供的解决方案,但仍然无法正常工作。我不确定可能是什么问题。也许我需要重新安装 Maven 看看是否有效。
    猜你喜欢
    • 2018-11-11
    • 1970-01-01
    • 1970-01-01
    • 2022-01-20
    • 1970-01-01
    • 2018-02-02
    • 2013-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多