您的位置:首页 > 编程语言 > Java开发

selenium2 java版

2016-03-13 11:29 465 查看
--加载驱动       

System.out.println("开始web自动化!!");   

        System.setProperty("javax.xml.parsers.DocumentBuilderFactory",

                "com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl");
//        System.setProperty("webdriver.chrome.driver","C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe");

--火狐浏览器

        System.setProperty("webdriver.firefox.bin","D:\\dailyTool\\Mozilla Firefox\\firefox.exe");

--使用浏览器默认配置

//        ProfilesIni pi = new ProfilesIni();

//        FirefoxProfile profile = pi.getProfile("default");

        FirefoxProfile profile = new FirefoxProfile();

        driver = new FirefoxDriver(profile);

        driver.get("http://www.jd.com/");

        driver.findElement(By.linkText("你好,请登录")).click();  

        
//        driver.findElement(By.id("loginname")).click();

给输入框设置数据XXX

        driver.findElement(By.id("loginname")).sendKeys("XXX");

//        driver.findElement(By.id("nloginpwd")).click();  

        driver.findElement(By.id("nloginpwd")).sendKeys("");

        driver.findElement(By.id("loginsubmit")).click();

        try {

            Thread.sleep(1000);

        } catch (InterruptedException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

        System.out.println("这里是之前的windows:"+driver.getWindowHandle());
        driver.findElement(By.linkText("我的订单")).click();

        --注意这里,这里是跳转新的链接,需要判断需要操作的界面,然后switchTo

        Set<String> handles = driver.getWindowHandles();

        WebDriver driver4 = null;

        int count = 0;

        for (String s : handles) {

            if(count == 1){

                System.out.println("这里是新跳转的页面集合:"+s);

                driver4 = driver.switchTo().window(s);

                break;

            }

            count ++;
        }

        --这里就是著名Xpath解析,万能无敌之好用。找不到大部分可能是跳转的页面不正确

        driver4.findElement(By.xpath("//span[@class='signup-btn']")).click();

       

        

        try {

            Thread.sleep(5000);

        } catch (InterruptedException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();
        }

--退出

        driver.quit();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: