软测3班:用selenium+TestNg+数据驱动(从mysql数据里profiles表里面取数据)


步骤:
5.1导入selenium包
5.2导入mysql包
5.3导入TestNg
import java.net.MalformedURLException;
import java.net.URL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.*;
public class Test01 {
    WebDriver driver;
    @BeforeMethod
    public void open() {
        driver = new FirefoxDriver();
    }
    
    @AfterMethod
    public void close() {
        driver.quit();
    }
    
    @DataProvider(name = "dp1")
    public Object[][] dp001(){
        Object[][] oo=null;
        try {
            Connection conn=DriverManager.getConnection("jdbc:mysql://192.168.221.128:3306/bugs","root","123456");
            String sql;
            sql="select * from profiles";
            PreparedStatement ps=conn.prepareStatement(sql);
            ResultSet rs=ps.executeQuery();
            List list = new ArrayList<>();
            while(rs.next()) {
                list.add(new Object[] {rs.getString("login_name"),"123456"});
            }
            oo=new Object[list.size()][2];
            for(int i=0;i                 oo[i]=list.get(i);
            }
        }catch (SQLException e) {
            e.printStackTrace();
        }
        return oo;
    }
    
    @Test(dataProvider = "dp1")
    public void Test(String uname,String pwd) {
        driver.get("http://192.168.221.128/bugzilla/");
        driver.findElement(By.linkText("Log In")).click();
        driver.findElement(By.id("Bugzilla_login_top")).sendKeys(uname);
        driver.findElement(By.id("Bugzilla_password_top")).sendKeys(pwd);
        driver.findElement(By.id("log_in_top")).click();
        
        String status = driver.findElement(By.xpath("/html/body/div[1]/table[1]/tbody/tr/td[1]/p")).getText();
        System.out.println(status);
        
        switch(status) {
        case "Bugzilla – Welcome to Bugzilla":
            System.out.println(uname+":管理员");
            break;
        case "Bugzilla – Main Page":
            System.out.println(uname+":普通用户");
            break;
        case "Bugzilla – Account Disabled":
            System.out.println(uname+":禁用用户");
            break;
        default:
            System.out.println(uname+":其他用户");
        }
    }
    
    
    
}

你可能感兴趣的:(软件测试团队,软件测试团队\,软件测试与质量,互联网电子商务)