本次實驗要求java
一、安裝SeleniumIDE插件git
二、學會使用SeleniumIDE錄製腳本和導出腳本github
三、訪問http://121.193.130.195:8080/使用學號登陸系統(帳戶名爲學號,密碼爲學號後6位),進入系統後能夠看到該同窗的git地址。web
四、編寫Selenium Java WebDriver程序,測試inputgit.csv表格中的學號和git地址的對應關係是否正確。瀏覽器
五、將測試代碼提交到github上(3月26日23:59前)。工具
實驗步驟:學習
1.首先安裝火狐瀏覽器,因爲兼容性問題,下載43.0.1版本的火狐瀏覽器。接着在SeleniumIDE官網上下載插件,下載完插件以後會在瀏覽器的工具欄中顯示,沒有顯示出來的能夠到設置裏的定製功能中設置。測試
運行界面以下:firefox
單擊右上角的紅點便可開始錄製,再次單擊結束錄製插件
在文件的選項中能夠選擇將腳本導出爲本身所需的語言,以下圖所示:
3.編寫代碼來測試信息是否匹配,首先要加入讀取CSV文件的jar包以及使用selenium的jar包
代碼以下
package stlab2; import java.io.IOException; import java.nio.charset.Charset; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.*; import com.csvreader.CsvReader; public class stlab2 { public static void main(String[] args) throws IOException { CsvReader r = new CsvReader("D://大三下學習資料//軟件測試//實驗二//inputgit.csv", ',',Charset.forName("GBK")); r.readHeaders(); while (r.readRecord()) { r.readRecord(); String number_csv = r.get("學號"); String name_csv = r.get("姓名"); String address_csv = r.get("github地址"); String pwd_csv = number_csv.substring(number_csv.length()-6,number_csv.length()); System.setProperty("webdriver.firefox.bin", "C:/Program Files (x86)/Mozilla Firefox/firefox.exe"); WebDriver driver = new FirefoxDriver(); driver.get("http://121.193.130.195:8080/"); driver.manage().window().maximize(); //輸入用戶名 WebElement input_name = driver.findElement(By.id("name")); input_name.clear(); input_name.sendKeys(number_csv); //輸入密碼 WebElement input_pwd = driver.findElement(By.id("pwd")); input_pwd.clear(); input_pwd.sendKeys(pwd_csv); //點擊登陸按鈕 WebElement btn = driver.findElement(By.id("submit")); btn.click(); //登陸成功以後,得到當前頁面的用戶信息 String info_web = driver.findElement(By.xpath("//tbody[@id='table-main']")).getText(); String name_web = info_web.substring(info_web.indexOf("名") + 2, info_web.indexOf("學") - 1); String number_web = info_web.substring(info_web.indexOf("號") + 2, info_web.indexOf("G") - 1); String address_web = info_web.substring(info_web.indexOf("址") + 2); //比較查詢信息 if(name_csv.equals(name_web)&&number_csv.equals(number_web)&&address_csv.equals(address_web)) System.out.println("信息符合."); else System.out.println(name_web+"信息不符."); driver.close(); } r.close(); } }