testng 测试用例中的调试问题

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

我使用的是intelliJ v2021.3.2(社区版)

我的项目是一个java Maven TestNG(v7.4.0)项目

当我运行测试用例时,它执行成功,但是当我尝试调试时,出现以下错误:

Intellij 显示错误“测试框架意外退出”

这是控制台中的错误

Exception in thread "main" java.lang.ClassCircularityError: java/lang/WeakPairMap$Pair$Weak
    ..
    at com.intellij.rt.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:107)

以下是一个代码示例(我使用的是 SHAFT 引擎),但任何测试用例调试都不适用于所有

    @Test (priority = 1)
    public void UserCanLogin() {

            homeObject = new HomePage(driver);
            profilePageObject = new ProfilePage(driver);
            loginObject = new LoginPage(driver);

            homeObject.openLoginPage();
            loginObject.UserLogin(individualUserMail, individualUserPassword);

            Validations.assertThat().element(driver, profilePageObject.getProfileIconDropDown()).exists().perform();
            profilePageObject.ProfileIconDropDown();
            profilePageObject.userLogOut();

    }
java selenium intellij-idea testng
3个回答
10
投票

禁用“仪器代理”对我有用。为此,您需要在“Settings | Build, Execution, Deployment | Debugger | Async Stack Traces”中禁用异步堆栈跟踪代理。


0
投票
当某个类是其自身的(间接)超类、某个接口(间接)扩展自身或类似的情况时,会抛出

ClassCircularityError

因此,请检查您是否错误地将 homeObject 声明为 HomePage 或其他错误的类。第二次查看你的代码并找出哪里存在循环。


0
投票
将“编辑配置”中的 Java 版本从 Java 17 更改为 Java 8 对我有用

© www.soinside.com 2019 - 2024. All rights reserved.