当前位置: 首页 > 知识库问答 >
问题:

如何在使用SBT运行的junit4中打开assert语句?

裴存
2023-03-14
@Test
public void test() {
  // this is example; In reality assertion somewhere in code under test
  assert false; // not assertTrue(or whatever) from junit
}
organization := "Kharandziuk"

name := "Some alg project"

version := "1.0-SNAPSHOT"

libraryDependencies ++= Seq(
    "junit" % "junit" % "4.8.1" % "test",
    "com.novocode" % "junit-interface" % "0.10" % "test"
)

autoScalaLibrary := false

testOptions += Tests.Argument(TestFrameworks.JUnit, "-a", "-q", "-v")

fork in run := true

javaOptions in run += "-ea"

如何在测试中启用assert语句?

共有1个答案

仲孙飞文
2023-03-14

您可以为单独的任务设置它,例如。测试

javaOptions in test += "-ea"

或者干脆随处设置:

javaOptions += "-ea"

无论如何,@mpirious是正确的,因为您通常不希望通过单元测试导致断言失败。单元测试应该对代码的逻辑设置沙箱

 类似资料:
  • 当我使用命令在TeamCity中运行构建时: 我收到合并错误: TraceEvent(错误,java.lang.RuntimeException:重复数据消除:在以下文件中找到不同的文件内容: /home/teamcity/tcagent/system/sbtivy/cache/org.joda/joda-convert/jars/joda-convert-2.2.1.jar:模块信息。class

  • 问题内容: 我想在Android设备上使用。该断言似乎不起作用,因此我在网上搜索后发现了这种本地解决方案: 亚行外壳setprop debug.assert 1 它确实可以在我的本地计算机上运行。 我想使用我的Eclipse项目运行此命令(因此它将在源代码控件中)。我该怎么做? 问题答案: 断言无法在Android中运行,因为大多数情况下,一个人不是在调试模式下运行,而是运行一些优化的代码。因此,

  • The JUnitPlatform runner is a JUnit 4 based Runner which enables you to run any test whose programming model is supported on the JUnit Platform in a JUnit 4 environment — for example, a JUnit Jupiter

  • 问题内容: 我正在研究如何在Python中进行文件输入和输出。我编写了以下代码,以将文件列表中的名称列表(每行一个)读入另一个文件,同时对照文件中的名称检查名称并将文本附加到文件中的出现位置。该代码有效。可以做得更好吗? 我想对输入和输出文件都使用该语句,但看不到它们如何位于同一块中,这意味着我需要将名称存储在一个临时位置。 问题答案: Python允许将多个语句放在一个语句中。您用逗号分隔。您的

  • 我有一个电子应用程序,可以在单独的选项卡中编辑多个文件,比如Atom或VS代码。当通过对话框打开文件时,或者当应用程序未运行(通过解析argv)时,通过“打开方式”打开文件时,此功能可以正常工作。 然而,我不知道如何将通过“打开”打开的文件“添加”到已经运行的应用程序——默认情况下,会创建该应用程序的第二个新实例。我希望能够以某种方式将文件的路径传递给原始应用实例。 我浏览了文档,发现唯一有希望的

  • 交互模式 在根目录中运行 sbt 命令不带任何参数将进入交互模式 $ sbt 交互模式有一个命令输入功能(可以用 Tab 补全和历史命令), 例如,当输入 compile 时: > compile 如果再次编译只需按 向上键 + 回车键 如果运行该项目输入 run 如果退出交互模式输入 exit 或用快捷键 Ctrl+D(Unix) 或 Ctrl+Z(Windows) 批量脚本模式 你也可以在批量