如何将 JUnit 测试重定向到 Eclipse 中的控制台?

How to redirect JUnit testing to the console in Eclipse?

我是盲屏 reader 用户,在 Eclipse 中遇到 JUnit 问题。

据我所知,测试通过或失败的结果是通过在 JUnit 视图中以绿色或红色突出显示测试来表示的。使用我的屏幕 reader 我无法确定结果是什么,所以我想如果 JUnit 结果被重定向到控制台,我可以查看它们。这怎么可能呢?或者,这里的任何其他屏幕 reader 用户是否使用 Eclipse and/or JUnit?如果是,您如何查看结果?

您可以通过其命令行界面执行 JUnit,这将产生文本输出。但我必须提醒你,配置很烦人:

  1. 确保您已将 JUnit 库包含在类路径中:打开项目的上下文菜单 > 构建路径 > 添加库... > Junit > Junit 4。

现在让我们创建一个运行执行

  1. 打开项目的上下文菜单 > 运行 as > Java Application > Select JUnitCore > 按确定。这将创建一个名为 "JUnitCore" 和 运行 的执行,但由于它尚未配置,因此会产生错误。忽略他们。
  2. 打开项目的上下文菜单 > 运行 as > 运行 配置... > JUnitCore:
    • 在参数选项卡中:在 "program arguments" 下,输入所有测试 类 名称,以空格分隔。
    • 在类路径选项卡中:在 "user entries" 下,执行 "Advanced" > "Add Folders" > 和 select 类 文件夹。 (根据项目的性质,可能是 "build",或 "target/classes" 和 "target/test-classes"。)
    • 按"Apply"。

您已结束配置。从现在开始,每次您想要执行项目的 JUnit 测试时,只需打开项目的上下文菜单,然后执行 运行 as > 运行 Configurations... > JUnitCore。输出将根据以下格式在控制台选项卡上生成:

  • 第一行只是一条评论 "JUnit version 4.12"。
  • 第二行是测试执行的总结:每个测试都有一个符号:句号表示"OK","E"表示错误或失败。
  • 无论如何,接下来的几行包含了对每个错误或失败的更详细的描述,这是您更感兴趣的部分。每个错误中都包含完整的堆栈跟踪,这可能会使 ir 难以阅读。

所以,@Little-Santi 的回答提供了 运行 JUnit 测试的方法,并将结果打印在控制台中,但我发现我不必为了 JUnit 测试而这样做屏幕 reader 可访问。

@Little-Santi 在评论中提供了一个建议,尝试使用仅显示 fails/errors 的复选框。作为屏幕 reader 用户,这对我来说很有用,因为我并不真正关心通过的测试,而是想检查未通过的测试。因此,对于可能在此处绊倒的任何屏幕 reader 用户,这里有一个简短的指南,用于查看 JUnit 测试结果作为屏幕 reader 用户:

运行 您的 JUnit 以标准 Eclipse 方式进行测试。 您的注意力应该转移到树视图上,您​​可以在其中查看各种 Junit 测试结果。 Shift+tabbing 允许您查看通过、失败和错误的测试数。 Shift+tab 进一步导航到一个复选框,以便在树视图中仅显示 fails/errors。 从树视图向前切换导航到一个列表,其中包含在树视图中选择的测试的堆栈跟踪。

测试愉快!

您应该展开树视图并将光标放在失败的项目上。 然后,按应用程序键并点击复制失败列表。 您可以在任何文本编辑器中复制结果并享受! 测试愉快。