eclipse 我的Java代码随机崩溃时需要帮助

njthzxwz  于 2022-11-04  发布在  Eclipse
关注(0)|答案(2)|浏览(165)

我是Selenium和Java的新手。我在唯一的一个java类中有将近950行代码。当我运行这段代码时,它会随机崩溃。有时它会正常工作,有时它会随机崩溃。它会随机崩溃5次中的2次。我给出了代码的初始部分和控制台在崩溃前打印的最后一个字符串。
请帮助。我使用的是Java,Selenium,Eclipse,Win 8,IE 10。我使用的是JDK 8。Eclipse没有显示任何代码崩溃的错误,老实说我不知道在哪里检查我的代码崩溃的原因。
最后一个请求,我想我在这个问题上提供的信息太少了,请告诉我还有什么需要补充的。非常感谢。
我的代码崩溃了,它最后打印的是控制台中的“现在在 Jmeter 板中”。

` public class Login {

/**
 * @param args
 */
public static void main (String[] args) throws Exception {
    System.out.println("hello world");

    //String timeStamp = new SimpleDateFormat("MM/dd/yyyy").format(Calendar.getInstance().getTime());
    //System.out.println(timeStamp - );

    File file = new File("C:/selenim/IEDriverServer.exe");
    System.setProperty("webdriver.ie.driver", file.getAbsolutePath());
    WebDriver idriver = new InternetExplorerDriver();       

    System.out.println("instantiation");

       // Setting for Chrome        
  //WebDriver cdriver = new ChromeDriver();
  //cdriver.get("http://cmdlhrstg05/curemd/datlogin.asp");  //**getting and setting chrome driver values
  //cdriver.findElement(By.id("txtUserName")).sendKeys("haseeb");
  //cdriver.findElement(By.id("Password")).sendKeys("s");
  //cdriver.findElement(By.id("button")).click();

        // Setting for IE
    String parentWindow= idriver.getWindowHandle();
    idriver.get("http://cmdlhrstg05/curemd/datlogin.asp");    //**getting and setting ie driver values
    idriver.findElement(By.id("vchLogin_Name")).sendKeys(new String[] {"haseeb"});
    idriver.findElement(By.id("vchPassword")).sendKeys(new String[] {"s"});
    idriver.findElement(By.id("LoginImg")).click();

     Thread.sleep(1000); // Wait for some 5 seconds
     String actualTitle; // = idriver.getTitle();

           for (String handle : idriver.getWindowHandles()) {

           idriver.switchTo().window(handle);

        }

           actualTitle = idriver.getTitle();
           String expectedTitle = " Personal: Dashboard";  
           Thread.sleep(500);

           System.out.println("In the dashboard now");

线程休眠(1000);

// To switch the frame to click the Patient CTA in universal links
           idriver.switchTo().frame("fraCureMD_Menu");  
           System.out.println("In the main menu now");'
ulmd4ohb

ulmd4ohb1#

1.暂时禁用线程(尝试Thread.sleep()语句中的值)。
2)用途:

try
{
    try 
    { 
       idriver.switchTo().frame("fraCureMD_Menu"); 
    } 
    catch(Exception e) 
    { 
       e.printStackTrace();
    }

}
catch(Exception e) 
{
    System.out.println(e)
}
8e2ybdfx

8e2ybdfx2#

替换

idriver.switchTo().frame("fraCureMD_Menu");

try { 
       idriver.switchTo().frame("fraCureMD_Menu"); 
  } catch(Exception e) { 
       e.printStackTrace();
  }

并查看控制台上打印的内容。

相关问题