You need to enable JavaScript to run this app. TestNG运行报NoSuchMethodError所有测试用例跳过如何解决?
优惠活动
大模型
产品
解决方案
定价
更多

TestNG运行报NoSuchMethodError所有测试用例跳过如何解决?

问题根因

  • 核心是Apache Commons-IO依赖版本不兼容:你项目pom.xml中配置的commons-io版本为1.3.2,而你使用的WebDriverManager 4.3.1依赖2.0以上版本的commons-io,低版本commons-io不存在错误栈提示的IOUtils.toString(InputStream, Charset)方法,所以抛出java.lang.NoSuchMethodError
  • 所有测试用例被跳过是因为TestNG的前置配置方法@BeforeClass(对应baseClass中的setUp方法)执行失败,TestNG默认会跳过该类下所有关联测试用例,和你看到的「配置失败1、全部用例跳过」的表现完全匹配。

解决方案

步骤1:升级commons-io依赖版本

将pom.xml中原有的commons-io依赖配置替换为兼容的高版本,推荐使用2.11.0稳定版:

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.11.0</version>
</dependency>

步骤2:刷新Maven依赖

执行Maven命令强制更新依赖,清理本地缓存的旧版本包:

mvn clean install -U

步骤3:重新运行测试

重启IDE后执行测试脚本即可恢复正常执行。

可选验证步骤

如果升级后仍出现同类错误,可执行以下命令查看项目依赖树,排查是否有其他依赖间接引入了低版本commons-io:

mvn dependency:tree | grep commons-io

找到低版本commons-io的引入源后,在对应依赖中添加<exclusions>配置排除低版本commons-io即可。


内容的提问来源于stack exchange,提问作者Divya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 02:36:03