java.lang.NoSuchMethodError 在 Eclipse 中运行 TestNG 测试

问题描述 投票:0回答:8

我遇到异常

FAILED CONFIGURATION: @BeforeSuite arquillianBeforeSuite 
java.lang.NoSuchMethodError: org.jboss.remoting3.Endpoint.builder()Lorg/jboss/remoting3/EndpointBuilder;
at org.jboss.as.controller.client.impl.RemotingModelControllerClient.getOrCreateChannel(RemotingModelControllerClient.java:117)
at org.jboss.as.controller.client.impl.RemotingModelControllerClient$1.getChannel(RemotingModelControllerClient.java:59)
at org.jboss.as.protocol.mgmt.ManagementChannelHandler.executeRequest(ManagementChannelHandler.java:147)
at org.jboss.as.protocol.mgmt.ManagementChannelHandler.executeRequest(ManagementChannelHandler.java:122)

使用 TestNG 和 wildfly11 在 Eclipse Oxygen 中运行 Arquillian 测试。 我的Maven配置如下:

    <dependency>
        <groupId>org.jboss.arquillian.testng</groupId>
        <artifactId>arquillian-testng-container</artifactId>
        <version>1.1.13.Final</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>6.11</version>
    </dependency>
    <dependency>
        <groupId>org.wildfly.arquillian</groupId>
        <artifactId>wildfly-arquillian-container-managed</artifactId>
        <version>2.0.1.Final</version>
        <scope>test</scope>
    </dependency>
java eclipse wildfly jboss-arquillian testng-eclipse
8个回答
15
投票

我也有同样的问题。我尝试了下面的解决方案,它对我来说就像一个魅力。 解决方案是:

将 TestNG 库添加到项目中。 步骤是:

  1. 右键单击项目
  2. 构建路径
  3. 配置构建路径
  4. 库(选项卡)
  5. 转到“添加库”并单击按钮。
  6. 添加“TestNG”库并单击确定/下一步。
  7. TestNG 库将添加到您的项目中。

再次尝试运行,就可以了。

注意:我使用的是 Java1.8 库(必须从 java1.5 更新它,因为我的 eclipse 使用默认的 1.5 创建项目)。


5
投票

即使我在准备使用最新版本的 TestNG 时也遇到了同样的问题,但降级到较低版本的 TestNG 解决了问题。


4
投票

当我在

TestNg
中添加pom.xml依赖版本
7.8.0
时,我也遇到了类似的问题。
我将依赖项更改为7.7.1,它开始工作。

<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>7.7.1</version>
    <scope>test</scope>
</dependency>

3
投票

解决方案是:

删除 Wildfly 11 运行时 来自类路径。

  1. 右键单击项目
  2. 构建路径
  3. 配置构建路径
  4. 库(选项卡)
  5. 删除 Wildfly 11 Runtime(或 Wildfly 10 Runtime)

为什么这是必要的?欢迎评论...


0
投票

将 testng 库添加到项目对我有用!


0
投票

如果您正在开发 Maven 项目,请将您的 testng 版本升级到 7.1.0 及其测试范围。

    <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>7.1.0</version>
        <scope>test</scope>
    </dependency>

0
投票

进入 eclipse 并检查已安装部分中的 testng 版本,只需将相同版本复制到 pom.xml 中 或者升级eclipse中testng的版本


0
投票

可以通过2种方式解决:

  1. 从构建路径添加 TestNG 库或者
  2. 将 testNG 依赖项从 pom.xml 更改为 7.7.1,它将开始工作。
<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>7.7.1</version>
    <scope>test</scope>
</dependency>
© www.soinside.com 2019 - 2024. All rights reserved.