根据前面的问题,我创建了一个静态编程语言Gradle项目。我向其中添加了两个源文件:
package com.example.hello
fun main(args : Array<String>) {
println("Hello, world!")
}
package com.example.hello
import org.junit.Assert
import org.junit.Test
class HelloWorldTest {
@Test
fun testPasses() {
Assert.assertTrue(true)
}
@Test
fun testFails() {
Assert.assertTrue(false)
}
}
我还将目录src标记为源根,将测试标记为测试源根。
如果我在别处创建与这些源文件完全相同的目录结构,并围绕它创建一个非渐变IntelliJ项目,我就能够编译和运行这些代码,包括测试。
然而,在我的Gradle版本的项目中,我无法从IntelliJ IDEA构建测试。我发现以下错误:
Error:(3, 12) Kotlin: Unresolved reference: junit
Error:(4, 12) Kotlin: Unresolved reference: junit
Error:(7, 6) Kotlin: Unresolved reference: Test
Error:(9, 9) Kotlin: Unresolved reference: Assert
Error:(12, 6) Kotlin: Unresolved reference: Test
Error:(14, 9) Kotlin: Unresolved reference: Assert
奇怪的是,如果我在构建包装器后运行gradle测试(或者在构建包装器后运行gradlew测试),构建会成功而没有错误,但测试不会运行。
您需要将JUnit作为依赖项添加到构建中。gradle(根范围):
dependencies {
//...
testCompile "junit:junit:4.12"
}
对于JUnit 5来说有点复杂,它需要在build.gradle
中配置JUnit Gradle插件
>
如果您运行test
任务,Gradle将通过在终端或IntelliJ IDEA中运行gradlew test
来运行测试:Gradle项目(右侧面板)→任务→验证→测试。
如#1所述,IntelliJ IDEA有自己的项目表示法,实际上可能不同于它从Gradle项目导入的内容(例如,如果您手动将不同于Gradle项目布局定义的目录标记为源目录)。
您可以使IntelliJ IDEA将其项目结构与您的构建同步。gradle通过运行“刷新所有gradle项目”操作(可以在“gradle项目”面板中找到),或在“设置”中为gradle项目启用“使用自动导入”。
问题内容: 正确,我的junit测试看起来像是一个漫长的故事: 我创建了4位用户 我删除了1位用户 我尝试使用已删除的用户登录,并确保失败 我使用剩余的3个用户之一登录并确认我可以登录 我从一个用户向另一个用户发送一条消息,并验证该消息是否出现在发件人的发件箱和收件人的收件箱中。 我删除邮件 … … 优点 :测试非常有效(非常善于检测错误)并且非常稳定,因为它们仅使用API,如果我重构代码,那
问题内容: 我的junit测试看起来像是一个漫长的故事: 我创建了4位用户 我删除了1位用户 我尝试使用已删除的用户登录,并确保失败 我使用剩余的3个用户之一登录并确认我可以登录 我从一个用户向另一个用户发送一条消息,并验证该消息是否出现在发件人的发件箱和收件人的收件箱中。 我删除邮件 … … 优点:测试非常有效(非常善于检测错误)并且非常稳定,因为它们仅使用API,如果我重构代码,那么测试也
我想并行运行我的测试,这样可以节省时间,我确实在宁静中找到了一个选项,我们可以批量运行测试,但不能并行运行,而且cucumber并行似乎很有前途,下面的链接是针对maven项目的,运行宁静-cucumber并行测试用例有任何关于宁静/JS和npm的建议吗?
我正在尝试使用gradle编译一个war文件以部署到JBoss 7.1 AS,但编译失败(找不到ServletContext)…… gradle.build.见下文 错误: /workspace/agile runner/src/main/Java/com/agile runner/web/config/agilerunnerapplicationinitializer . Java:20:找不到
问题内容: 我想让Maven2为我的应用程序生成.jnlp(webstart配置文件)。 有一个maven-jnlp-plugin,但自Maven 1.1-beta2以来的某个地方已不推荐使用。 有没有更优选的方法来执行此操作,或者我需要自己构建此功能? 问题答案: 还有用于maven2的webstart-maven-plugin