首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在循环Java中运行chromeDriver的会话Id无效

在循环Java中运行chromeDriver的会话Id无效
EN

Stack Overflow用户
提问于 2021-06-21 08:47:56
回答 1查看 48关注 0票数 1

我试图在一个循环中运行我的webdriver,它将关闭窗口,然后在每次它递增时重新打开它,但在它运行一次后,我仍然得到一个无效的会话ID。我查看了一下,从我所读到的内容来看,似乎我在循环中正确设置了webdriver。下面是我的代码,其中open chrome是我认为会导致错误的地方。

代码语言:javascript
复制
for(int i = 0; i < count; i++) {
            
            //Initiating your chromedriver
            openChrome();
            
            selectCountry();
            //DOB
            dob();
            
            
            nextPage();
            
            //name page
            namePage();
            
            nextPage();
            
            //email
            email();
            
            //phone number and verification code
            enterPhone();
            
            //accept terms
            acceptTerms();
            
            nextPage();
            
            //set Password
            enterPassword();
            
            nextPage();
            
            //bypass battletag
            Thread.sleep(2000);
            nextPage();
            
            result = result + "\r\n" + "Email: " + baseEmail + " ; " + "Password: " + password;
            
            
            driver.close();
            

        }
代码语言:javascript
复制
    public static void openChrome() {
        //setting the driver executable

        System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\chromedriver.exe");
        
        if(counter > 0) {
            driver = new ChromeDriver();
        }
        
        
        //Applied wait time
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        //maximize window
        driver.manage().window().maximize();

        //open browser with desried URL
        driver.get("https://account.battle.net/creation/flow/creation-full");
        
        counter++;
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-21 13:32:45

您尚未在openChrome()方法中实例化浏览器特定的驱动程序:

代码:

代码语言:javascript
复制
public static void openChrome() {
        //setting the driver executable
        System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\chromedriver.exe");
         WebDriver driver = new ChromeDriver();
        //Applied wait time
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        //maximize window
        driver.manage().window().maximize();

        //open browser with desried URL
        driver.get("https://account.battle.net/creation/flow/creation-full");
        
        
    } 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68061136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档