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

Vertx(vertx-Junit5模块)未找到测试

陆烨磊
2023-03-14
buildscript {
    repositories {
        mavenCentral()
        dependencies {
            classpath 'org.junit.platform:junit-platform-gradle-plugin:1.1.0'
            classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.5"            
        }
    }
}

plugins {
    id'java'
    id'application'
    id'eclipse'
}

apply plugin: 'org.junit.platform.gradle.plugin'
apply plugin: 'maven'
apply plugin: "org.sonarqube"

def vertxVersion = "3.5.1"
version = 0.4

compileJava.options.encoding = 'UTF-8'
tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}

dependencies {
    compile "io.vertx:vertx-core:$vertxVersion"
    compile "io.vertx:vertx-service-proxy:$vertxVersion"
    compile "io.vertx:vertx-sockjs-service-proxy:$vertxVersion"
    compile "io.vertx:vertx-hazelcast:$vertxVersion"
    compile "io.vertx:vertx-web:$vertxVersion"
    compile "io.vertx:vertx-config:$vertxVersion"

    compile group: 'org.slf4j', name: 'slf4j-log4j12', version: '1.7.6'

    testCompile group: 'io.vertx', name: 'vertx-unit', version: vertxVersion
    testCompile group: 'io.vertx', name: 'vertx-junit5', version: vertxVersion
    testCompile 'org.assertj:assertj-core:3.9.0'

    //Junit 5
    testCompile("org.junit.jupiter:junit-jupiter-api:5.1.0")
    testRuntime("org.junit.jupiter:junit-jupiter-engine:5.1.0")
    //Junit 5 vintage to run Junit4 Tests
    testCompile("junit:junit:4.12")
    testRuntime("org.junit.vintage:junit-vintage-engine:5.1.0")

    compileOnly 'io.vertx:vertx-codegen:3.4.2'
}
testCompile group: 'io.vertx', name: 'vertx-junit5', version: vertxVersion

但是有了这种依赖关系

未找到任何测试

Feb 22,2018 2:41:28 PM org.junit.platform.launcher.core.defaultlauncher handleThrowable警告:ID为'junit-jupiter'的TestEngine未能发现测试java.lang.noSuchMethoderRor:org.junit.platform.engine.support.filter.classpathscanningsupport.buildClassFilter(log/junit/platform/engine/engineDiscoveryRequest;ljava/util/function/predicate;)在org.junit.jupiter.engine.discover.discoveryselectorresolver.resolveselector(discoveryselectorresolver.java:49)在org.junit.jupiter.engine.discover(jupitertestengine.jiscover(jupitertestengine.java:61)在org.junit.platform.launcher.core.defaultlauncher.discover(jupitertestengine.jiscover(jupitertestengine.java:130)

import io.vertx.junit5.VertxTestContext;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;

public class test {

    @Test
    @DisplayName("woop woooooooop")
    void Test(){
        VertxTestContext context = new VertxTestContext();
        context.succeeding();
    }
}

共有1个答案

强安和
2023-03-14

也许您应该在junitplatform块中提供更多配置(请参阅https://junit.org/junit5/docs/current/user-guide/#running-tests-build-gradle)

使用Gradle时,我通常使用以下方法启用test任务:

junitPlatform{enableStandardTestTask true}

buildscript {
  repositories {
    mavenCentral()
    maven {
      url "https://plugins.gradle.org/m2/"
    }
  }
  dependencies {
    classpath "gradle.plugin.io.vertx:vertx-gradle-plugin:0.0.8"
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.21"
    classpath "org.junit.platform:junit-platform-gradle-plugin:1.0.3"
  }
}

apply plugin: "io.vertx.vertx-plugin"
apply plugin: "org.jetbrains.kotlin.jvm"
apply plugin: "org.junit.platform.gradle.plugin"

repositories {
  mavenCentral()
}

group 'io.github.jponge'
version '0.0.1-SNAPSHOT'

dependencies {
  compile "org.jetbrains.kotlin:kotlin-stdlib-jre8"
  compile "ch.qos.logback:logback-classic:1.2.3"

  compile "io.vertx:vertx-web"
  compile "io.vertx:vertx-lang-kotlin"
  compile "io.github.jponge:vertx-boot:0.0.1"

  testCompile "io.vertx:vertx-junit5"

  testCompile "org.junit.jupiter:junit-jupiter-api:5.0.3"
  testCompile "org.junit.jupiter:junit-jupiter-engine:5.0.3"
  testCompile "org.apiguardian:apiguardian-api:1.0.0"
  testCompile "org.junit.platform:junit-platform-launcher:1.0.3"
}

vertx {
  vertxVersion = "3.5.1"
  mainVerticle = "io.github.jponge.vertx.boot.BootVerticle"
}

junitPlatform {
  enableStandardTestTask true
}

tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
  kotlinOptions {
    jvmTarget = "1.8"
  }
}
 类似资料:
  • 我有两个问题与Vertx线程模型有关。文件提到: 一个顶点。默认情况下,x实例维护N个事件循环线程(其中N默认为core*2) 对于许多现代应用程序所需的并发级别,阻塞方法无法扩展 Vertx还提供了线程池相关的功能,以处理使用服务器资源的任务,这些资源需要长时间的事件处理(工作线程)。 好的,所以我们知道线程在所需内存(例如堆栈)和上下文切换方面有开销。 Vertx线程没有被阻塞(如果正确使用)

  • vertx-generator是一款基于javafx8开发的一款图形界面的vert.x逆向工程 该工具支持Oracle , SqlServer , MySQL , PostgreSql数据库的逆向生成 生成采用模板生成的方式,用户自定义模板,工具根据模板进行生成 执行方法 执行方式在项目根目录执行mvn jfx:jar进行打包;jar打包为jar包native打包为系统安装软件 该软件基于jdk1

  • vertx-starter This is a simple online generator for vert.x projects The whole SPA is data-driven, build tools can be added to the file metadata/buildtools.json. Usage from cli Build the required files

  • vertx-pac4j 项目是 Vert.x 3 Web 应用程序的一个简单而强大的安全库,它支持身份验证和授权,还支持应用程序注销以及 CSRF 保护等高级功能。

  • 如何将数据附加到文件的末尾(或开头)?我试着用 但它只写最后一项。

  • 我正在从事一个Java/vertx项目,其后端是MongoDB(从一段时间以来,我一直使用Elixir/Erlang,我对vertx很陌生,但我认为它最适合)。基本上,我有一个由一些HttpServerVerticles处理的http API,它们需要将数据存储到mongo db(或从中检索数据),并向API调用方发送适当的回复。我正在寻找正确的模式来实现查询和处理回复。 从官方指南和一些教程中,