实际上我在执行我的java程序时面临下面提到的错误
Exception in thread "pool-1-thread-1" java.lang.ClassCastException: java.lang.StackOverflowError cannot be cast to java.lang.Exception
实际上,我有一个名为 Test_A 的 java 类,其中包含名为 Login() 和 Logout() 的以下方法,还有一个名为 Test_B 的 java 类,其中包含方法 VerifyValidUser()。
class Test_A {
Test_B b = new Test_B();
public void login()
{
driver.findElement(By.name("userName")).sendKeys(userName);
driver.findElement(By.name("password")).sendKeys(password);
driver.findElement(By.name("login")).click();
b.verifyLoginValidUser();
}
public void logout()
{
driver.findElement(By.linkText("SIGN-OFF")).click();
}
}
class Test_B {
Test_A a = new Test_A()
public void verifyLoginValidUser()
{
if(isElementPresent(By.linkText("SIGN-OFF")))
{
}
a.logout();
} }
所以在执行上面的代码时,它会抛出我上面提到的错误消息
谁能告诉我背后的原因
谢谢
实际堆栈跟踪:
Exception in thread "pool-1-thread-1" java.lang.ClassCastException: java.lang.StackOverflowError cannot be cast to java.lang.Exception
at supportlibraries.DriverScript.driveTestExecution(DriverScript.java:106)
at allocator.ParallelRunner.invokeTestScript(ParallelRunner.java:60)
at allocator.ParallelRunner.run(ParallelRunner.java:41)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)