• 全局等待和全局启动driver


    package startAndWait;
    
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.chrome.ChromeOptions;
    import org.openqa.selenium.interactions.Actions;
    import org.openqa.selenium.support.PageFactory;
    import org.openqa.selenium.support.ui.ExpectedCondition;
    import org.openqa.selenium.support.ui.Wait;
    import org.openqa.selenium.support.ui.WebDriverWait;
    
    import pages.LoginPage;
    
    import java.awt.AWTException;
    import java.awt.Robot;
    
    import org.openqa.selenium.JavascriptExecutor;
    
    
    public class StartChormeAndWait {    
        
        //定义静态变量driver
        public static WebDriver driver;    
        
        //初始化浏览器
        public  static void startChrome(WebDriver webDriver){
            ChromeOptions options = new ChromeOptions();
            options.addArguments("--test-type");  
            System.setProperty("webdriver.chrome.driver", "drivers\chromedriver.exe");
            driver= new ChromeDriver(options);
            driver=webDriver;    
            
        }
        public void WaitForPageLoaded(WebDriver driver) throws AWTException {
            PageFactory.initElements(driver, this);
            this.driver=driver;
            }
            
        //等待页面加载时间
        public static void waitForPage(WebDriver myDriver)throws Exception
        {
            ExpectedCondition<Boolean> expectation = new ExpectedCondition<Boolean>() {
                public Boolean apply(WebDriver driver) {
                    return ((JavascriptExecutor) driver).executeScript(
                    "return document.readyState").toString().equalsIgnoreCase("complete");
                }
            };
            Wait<WebDriver> wait = new WebDriverWait(myDriver, 30);
            try {
                wait.until(expectation);
            } catch (Exception e) {
                System.out.println("Timeout waiting for Page Load Request to complete.");
            }
            //System.out.println("before sync: " + Global.getDriver().executeScript("return document.readyState").toString());
            //Thread.sleep(5000);
            //System.out.println("after sync: " + Global.getDriver().executeScript("return document.readyState").toString());
          Thread.sleep(500);
        }                                                                                                                                                                               
    
    }
  • 相关阅读:
    Android开发学习之路--UI之简单聊天界面
    Android开发学习之路--UI之ListView
    Android开发学习之路--UI之自定义布局和控件
    Android开发学习之路--UI之基本布局
    Android开发学习之路--UI之初体验
    Android开发学习之路--Activity之四种启动模式
    Android开发学习之路--Activity之生命周期
    初探linux子系统集之i2c子系统(二)
    deque双端队列容器
    multimap多重映照容器
  • 原文地址:https://www.cnblogs.com/amy7758/p/5783334.html
Copyright © 2020-2023  润新知