登录账号参数化

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_23101033/article/details/77175126

登录账号参数化

Login.java

package com.gubai.selenium;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.interactions.Actions;

public class Login {
	public WebDriver driver;
	public void InitDriver() {
		String url = "http://www.imooc.com/";
		System.setProperty("webdriver.chrome.driver", "C:\\driver\\chromedriver.exe");
		driver = new ChromeDriver();
		driver.get(url);
		driver.manage().window().maximize();
		this.elemnet(By.id("js-signin-btn")).click();
	}

	public void loginscript(String username,String userpass) throws Exception {
		this.InitDriver();			
		Thread.sleep(3000);
		WebElement user = this.elemnet(this.byStr("username"));
		user.isDisplayed();
		WebElement password = this.elemnet(this.byStr("userpass"));
		password.isDisplayed();
		WebElement loginButton = this.elemnet(this.byStr("loginbutton"));
		loginButton.isDisplayed();
		user.sendKeys(username);
		password.sendKeys(userpass);
		loginButton.click();
		Thread.sleep(3000);
		WebElement header = this.elemnet(this.byStr("header"));
		header.isDisplayed();
		Actions actions = new Actions(driver);
		actions.moveToElement(header).perform();;
		String userInfo = this.elemnet(this.byStr("nameInfo")).getText();
		System.out.println(userInfo);
		if(userInfo.equals("mushishi_xu1")) {
			System.out.println("登陆成功");
		}else {
			System.out.println("登录失败");
		}
		driver.close();
	}
    /**封装By by **/
    public By byStr(String username){
		ProUtil properties = new ProUtil("element.properties");
		String locator = properties.getPro(username);
		String locatorType =locator.split(">")[0];
		String locatorValue = locator.split(">")[1];
    	if(locatorType.equals("id")) {
    		return By.id(locatorValue);
    	}else if(locatorType.equals("name")){
    		return By.name(locatorValue);
    		}else if(locatorType.equals("className")){
    			return By.className(locatorValue);
    		}else if(locatorType.equals("xpath")){
    			return By.className(locatorValue);
    		}else{
    			return By.xpath(locatorValue);
    		}
    }
   /**
    * 封装Element 
    * **/
    public WebElement elemnet(By by) {
    	WebElement ele = driver.findElement(by);
    	return ele;
    }
    
	public static void main(String[] args) throws Exception{
	    Login login = new Login();
	    //login.loginscript("18513199586","111111");
	    /**
	     * key -value
	     * username-password
	     * **/
	    HashMap<String,String> user = new HashMap<String,String>();
	    user.put("18513199586", "test123");
	    user.put("[email protected]", "test123");
	    Iterator us = user.entrySet().iterator();
	    while(us.hasNext()) {
	    	Map.Entry entry = (Map.Entry) us.next();
	    	String username = entry.getKey().toString();
	    	String password = entry.getValue().toString();
	    	login.loginscript(username, password);

	    }
}
}

猜你喜欢

转载自blog.csdn.net/qq_23101033/article/details/77175126