ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

day02

2022-07-06 22:01:42  阅读:169  来源: 互联网

标签:name day02 selenium findElement import driver public


TestLogin.java

测试登录

package com.bwf.autotest.day02;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class TestLogin {
    public static void main(String[] args) {
        WebDriver driver = new FirefoxDriver(); //打开火狐
        driver.manage().window().maximize(); //窗口最大化
        //访问网址
        String url = "http://127.0.0.1:8088/index.php?m=user&c=public&a=login";
        driver.get(url);

        //定位并操作元素
        driver.findElement(By.id("username")).sendKeys("test260");
        driver.findElement(By.id("password")).sendKeys("123456");

        // 点击登录按钮
        driver.findElement(By.className("login_btn")).click();
    }
}

Tools.java

封装等待

package com.bwf.autotest.day02;

public class Tools {
    public static void sleep(long millis){
        try{
            Thread.sleep(millis);
        }catch (InterruptedException e){
            e.printStackTrace();
        }
    }
}

LoginPage.java

封装登录

package com.bwf.autotest.day02;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;

public class LoginPage {
    /**
     *
     * @param driver 登录操作所在的浏览器
     * @param username 登录要使用的用户名
     * @param password 登录要使用的密码
     * @return 输入用户名和密码登陆成功返回true 登录失败返回false
     */
    public static boolean login(WebDriver driver,String username,String password){
        String url = "http://127.0.0.1:8088/index.php?m=user&c=public&a=login";
        driver.get(url);

        //定位并操作元素
        driver.findElement(By.id("username")).sendKeys("test260");
        driver.findElement(By.id("password")).sendKeys("123456");
        //点击登录
        driver.findElement(By.className("login_btn")).click();
        //等待5s-10s根据网站响应速度 5s-10s
        Tools.sleep(5000);

        String url2 = driver.getCurrentUrl();
        System.out.println(url2);
        //网址不同url.equals(url2)结果是false 取反! !url.equals(url2)结果是true
        return !url.equals(url2);
    }
}

ChangeUserInfo.java

package com.bwf.autotest.day02;


import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class ChangeUserInfo {
    public static void main(String[] args) {
        // 打开浏览器 窗口最大化
        WebDriver driver = new FirefoxDriver();
        driver.manage().window().maximize();
        // 登录功能,调用方法实现,返回结果是true,登录成功
        boolean result = LoginPage.login(driver, "test260", "123456");
        if (result) {
            // --登录成功,执行修改个人信息
            // 点击账号设置
            driver.findElement(By.linkText("账号设置")).click();
            // 点击个人资料
            driver.findElement(By.partialLinkText("个人资料")).click();

            // 清除真实姓名
            driver.findElement(By.id("true_name")).clear();
            // 输入真实姓名
            driver.findElement(By.name("true_name")).sendKeys("张飞");
            // driver.findElement(By.name("true_name")).sendKeys(Keys.BACK_SPACE,Keys.BACK_SPACE,"张飞");

            // 点击性别女
            driver.findElements(By.name("sex")).get(2).click();

            // 删除生日输入框的只读属性 -- 写删除有name属性的只读输入框的只读属性
            ((JavascriptExecutor) driver).executeScript("document.getElementsByName('birthday')[0].removeAttribute('readonly')");
            // 删除原有的生日
            driver.findElement(By.name("birthday")).clear();
            // 输入生日
            driver.findElement(By.name("birthday")).sendKeys("2000-7-7");

            // 清空qq
            driver.findElement(By.id("qq")).clear();
            // 输入qq
            driver.findElement(By.id("qq")).sendKeys("125874514");

            // 点击确定
            driver.findElement(By.className("btn4")).click();

            // 暂停2s 等待弹窗弹出
            Tools.sleep(2000);

            try{
                // 有弹窗出现,是获取弹窗中文本;没有弹窗直接报错,直接运行catch中代码
                String text = driver.switchTo().alert().getText();
                // 点击确定按钮
                driver.switchTo().alert().accept();
                if(text.equals("个人信息修改成功!")){
                    System.out.println("修改成功");
                }else{
                    System.out.println("修改失败");
                }
            }catch(Exception e){
                // 代码在try中的代码报错时运行
                System.out.println("修改失败,有数据是错误的");
            }


        } else {
            System.out.println("登录失败,程序结束");
        }
        // 关闭浏览器
        // driver.quit();
    }
}

 

标签:name,day02,selenium,findElement,import,driver,public
来源: https://www.cnblogs.com/shuheng/p/16452670.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有