標籤:
安裝SeleniumIDE外掛程式
開啟Fire Fox瀏覽器
點擊附加組件
之後搜尋Selenium IDE
安裝
安裝,即可完成Selenium的安裝
錄製匯出指令碼
開啟SeleniumIDE,
輸入網頁之後,將資訊填至相應的位置,單擊確定。
我們發現已經錄製完成,匯出時檔案->export test case as -> Java/junit4 webdriver即可得到相應的java檔案
編寫測試代碼
import java.io.File;import java.nio.charset.Charset;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import static org.junit.Assert.*;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.ie.InternetExplorerDriver;import org.openqa.selenium.remote.DesiredCapabilities;import com.csvreader.CsvReader;public class test { static Thread th = new Thread(); public static void main(String[] args) throws Exception { WebDriver driver = new FirefoxDriver(); CsvReader r = new CsvReader("D://info.csv", ‘,‘,Charset.forName("utf-8")); r.readHeaders(); while (r.readRecord()) { String name = r.get("id"); String password = name.substring(4); String email = r.get("e-mail"); driver.get("http://www.ncfxy.com/"); th.sleep(100); WebElement txtbox1 = driver.findElement(By.id("name")); txtbox1.sendKeys(name); WebElement txtbox2 = driver.findElement(By.id("pwd")); txtbox2.sendKeys(password); WebElement btn = driver.findElement(By.id("submit")); btn.click(); th.sleep(100); WebElement text = driver.findElement(By.cssSelector("#table-main tr:first-child td:last-child")); String email2 = text.getText(); assertEquals(email,email2); } r.close(); }}
這裡因為本地運行速度有一些不明原因,導致如果直接運行代碼會發生找不到元素的問題,設定一個新線程每次sleep100ms即可。
對info.csv進行判斷,這裡更改了info.csv為了配合csvreader
添加表頭id和e-mail用於取出學號和郵箱。
運行完畢後發現測試全部通過,至此完成本次任務。
全部代碼工程檔案:
https://github.com/FomalhautYWT/SoftwareTest/tree/master/STLab2
軟體測試Lab2 Selenium及自動化測試