安装Selenium IDE插件,并录制脚本和导出脚本
安装Selenium IDE:
用火狐浏览器打开http://www.seleniumhq.org/download/,点击Selenium IDE下载,点击图中的”Add to Firefox”按钮,选择“安装”即可安装Selenium IDE。
录制脚本:
点击如图红色按钮,实心为正在录制,输入url:
在Firefox地址栏中输入百度地址进行搜索即可录制脚本,点击上方绿色按钮即可导出脚本。
编写Selenium Java WebDriver程序进行测试
到官网上下载Selenium的jar包,放在D盘目录下。
打开eclipse 新建java项目,右键项目,properties,将下载的jar包添加进项目中,如下图:
编写测试程序,程序将打开inputgit.csv文件,对其中的学号逐个访问http://121.193.130.195:8080/ 并使用学号登录系统,查看其git地址,并与inputgit.csv文件中的git地址作比较,得出测试结果。
程序代码如下:
package webdriver; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOException; import java.io.OutputStreamWriter; import java.util.ArrayList; import java.util.List; import java.util.concurrent.TimeUnit; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; public class webDriver { public static List<String> importCsv(File file){ List<String> dataList=new ArrayList<String>(); BufferedReader br=null; try { br = new BufferedReader(new FileReader(file)); String line = ""; while ((line = br.readLine()) != null) { dataList.add(line); } }catch (Exception e) { }finally{ if(br!=null){ try { br.close(); br=null; } catch (IOException e) { e.printStackTrace(); } } } return dataList; } public String getUrl(String s) { String number=s.substring(0,s.indexOf(",")); String password=number.substring(4,number.length()); int pos=s.indexOf(",")+1; int pos1=s.indexOf(",",pos); String name=s.substring(pos,pos1); String url=s.substring(pos1+1,s.length()); return url; } public String getNumber(String s) { String number=s.substring(0,s.indexOf(",")); return number; } public String getName(String s) { String number=s.substring(0,s.indexOf(",")); String password=number.substring(4,number.length()); int pos=s.indexOf(",")+1; int pos1=s.indexOf(",",pos); String name=s.substring(pos,pos1); return name; } public String testEqual(String number, String name, String url) { String password=number.substring(4,number.length()); WebDriver dri = new FirefoxDriver(); dri.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); dri.navigate().to("http://121.193.130.195:8080/"); dri.findElement(By.id("name")).sendKeys(number); dri.findElement(By.id("pwd")).sendKeys(password); dri.findElement(By.id("submit")).click(); String result=dri.findElement(By.xpath(".//*[@id='table-main']/tr[3]/td[2]")).getText(); dri.close(); return result; } }
package text; import webdriver.*; import java.util.concurrent.TimeUnit; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; import java.util.concurrent.TimeUnit; import static org.junit.Assert.*; import org.junit.After; import org.junit.Before; import org.junit.Test; import java.io.File; import java.util.ArrayList; import java.util.List; public class webDriverTest { @Before public void setUp() throws Exception { System.out.println("Start test!"); } @After public void tearDown() throws Exception { System.out.println("Text completed!"); } @Test public void testMain() { webDriver driver=new webDriver(); List<String> dataList=driver.importCsv(new File("data\\inputgit.csv")); if(dataList!=null && !dataList.isEmpty()){ int count=dataList.size()-1; for (int i=1; i<count+1; i++) { String s=new String(dataList.get(i)); assertEquals(driver.getUrl(s),driver.testEqual(driver.getNumber(s),driver.getName(s),driver.getUrl(s))); } } } }