首先登陸mooctest平臺,以2019年的爲例,你將看到如下界面:
點擊工具插件下載所需插件如圖:
自主可控測試2019年分爲三部分:
功能測試、性能測試、衆包測試。
1.功能測試
1>下載第一個插件即是Junit圖標的插件(鼠標放上就變了):
然後配置插件在點擊使用幫助中找下圖所示的圖標即可看到相關配置教程。
這個插件主要用於運行提交打分用的。配置好的界面如下出現MoocTest:
2> 下載第二個插件Selenium jar包用於運行自動化腳本
如圖:
把它放在MoocTest 文件裏,MoocTest文件是第一配置時有的,
其次要下載與瀏覽器的chrome內核版本對應的chromedriver.exe,再配置環境變量,在系統變量中建立一個如圖命名的變量:
再在path中配置chromedriver.exe的路徑如圖:
然後就可以開始測試了,
網址:航天中認測試(有錯誤可能不能用了,比葫蘆畫瓢吧!)
實例代碼下:
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.By;
public class Example {
// Mooctest Selenium Example
// <!> Check if selenium-standalone.jar is added to build path.
public static void test(WebDriver driver) throws InterruptedException {
// TODO Test script
// eg:driver.get("https://www.baidu.com/")
// eg:driver.findElement(By.id("wd"));
driver.get("http://114.116.106.156/show-how/common/login.jsp");
driver.manage().window().maximize();
Thread.sleep(2000);
driver.findElement(By.id("username")).clear();
driver.findElement(By.id("username")).sendKeys("test026");
driver.findElement(By.id("password")).clear();
driver.findElement(By.id("password")).sendKeys("1");
driver.findElement(By.xpath("/html/body/div[2]/div/form/div[1]/div[4]/button")).click();
//我的任務 /html/body/div[9]/div[1]/div/ul/li[4]/a
driver.findElement(By.xpath("/html/body/div[9]/div[1]/div/ul/li[4]/a")).click();
//代理規則 /html/body/div[9]/div[1]/div/ul/li[4]/ul/li[4]/a
Thread.sleep(3000);
driver.findElement(By.xpath("/html/body/div[9]/div[1]/div/ul/li[4]/ul/li[4]/a")).click();
//新建 /html/body/div[9]/div[2]/div/div[1]/button
driver.findElement(By.xpath("/html/body/div[9]/div[2]/div/div[1]/button")).click();
Thread.sleep(2000);
driver.switchTo().frame(driver.findElement(By.xpath("/html/body/div[5]/div/div[2]/iframe")));
Thread.sleep(4000);
//代理人
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[1]/div/div/div")).click();
Thread.sleep(3000);
//姓名
driver.findElement(By.xpath("/html/body/div[7]/div/div/div[2]/div[1]/input")).clear();
driver.findElement(By.xpath("/html/body/div[7]/div/div/div[2]/div[1]/input")).sendKeys("系統機器人");
driver.findElement(By.xpath("/html/body/div[7]/div/div/div[2]/div[1]/button")).click();
driver.findElement(By.xpath("/html/body/div[7]/div/div/div[3]/a[2]")).click();
//選擇時間
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[2]/div/div/input")).click();
driver.switchTo().frame(driver.findElement(By.xpath("/html/body/div[8]/iframe")));
Thread.sleep(3000);
//今天
driver.findElement(By.xpath("/html/body/div/div[6]/input[2]")).click();
//結束
driver.switchTo().parentFrame();
Thread.sleep(1000);
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[3]/div/div/input")).click();
///html/body/div[8]/iframe
driver.switchTo().frame(driver.findElement(By.xpath("/html/body/div[8]/iframe")));
Thread.sleep(3000);
// //十二
// driver.findElement(By.xpath("/html/body/div/div[1]/div[3]/input")).
// findElement(By.xpath("/html/body/div/div[1]/div[3]/div/table/tbody/tr[6]/td[2]")).click();
//4hao
driver.findElement(By.xpath("/html/body/div/div[3]/table/tbody/tr[2]/td[6]")).click();
//ok
driver.findElement(By.xpath("/html/body/div/div[6]/input[3]")).click();
driver.switchTo().parentFrame();
Thread.sleep(2000);
//開具發票
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[4]/div/select")).
findElement(By.xpath("/html/body/div[6]/div[2]/form/div[4]/div/select/option[2]")).click();
//發起人
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[5]/div/select")).
findElement(By.xpath("/html/body/div[6]/div[2]/form/div[5]/div/select/option[3]")).click();
//保存
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[7]/div[2]/button")).click();
driver.switchTo().defaultContent();
Thread.sleep(1000);
driver.switchTo().window(driver.getWindowHandle());
Thread.sleep(3000);
//常用語
driver.findElement(By.xpath("/html/body/div[9]/div[1]/div/ul/li[4]/ul/li[5]/a")).click();
//新建 /html/body/div[9]/div[2]/div/div[1]/button[1]
driver.findElement(By.xpath("/html/body/div[9]/div[2]/div/div[1]/button[1]")).click();
Thread.sleep(2000);
driver.switchTo().frame(driver.findElement(By.xpath("/html/body/div[5]/div/div[2]/iframe")));
Thread.sleep(4000);
//aaa
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[1]/div/textarea")).clear();
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[1]/div/textarea")).sendKeys("aaa");
//保存
driver.findElement(By.xpath("/html/body/div[6]/div[2]/form/div[2]/div[2]/button")).click();
driver.switchTo().defaultContent();
Thread.sleep(1000);
driver.switchTo().window(driver.getWindowHandle());
driver.findElement(By.xpath("/html/body/div[3]/div/div[2]/input")).click();
Thread.sleep(3000);
//會議室預約 /html/body/div[9]/div[1]/div/ul/li[6]/a
driver.findElement(By.xpath("/html/body/div[9]/div[1]/div/ul/li[6]/a")).click();
//預約
driver.findElement(By.xpath("/html/body/div[9]/div[2]/form/div/div[2]/div/table/tbody/tr[1]/td/a")).click();
driver.switchTo().frame(driver.findElement(By.xpath("/html/body/div[5]/div/div[2]/iframe")));
Thread.sleep(3000);
//普通預約
driver.findElement(By.xpath("/html/body/div[8]/div[1]/div[1]")).click();
//郵箱
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[1]/div[2]/select")).
findElement(By.xpath("/html/body/div[8]/div[2]/form/div[1]/div[2]/select/option[2]"));
//今天
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[2]/div[1]/div/div/input")).click();
driver.switchTo().frame(driver.findElement(By.xpath("/html/body/div[9]/iframe")));
Thread.sleep(3000);
driver.findElement(By.xpath("/html/body/div/div[6]/input[2]")).click();
driver.switchTo().parentFrame();
//8人
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[2]/div[2]/div/input")).clear();
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[2]/div[2]/div/input")).sendKeys("8");
//開始日期
WebElement drv = driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[8]/div[1]/input"));
Thread.sleep(3000);
///html/body/div/div[4]/table/tbody/tr[1]/td[1]/input[1]
drv.findElement(By.xpath("/html/body/div/div[4]/table/tbody/tr[1]/td[1]/input[1]")).sendKeys("19");
drv.findElement(By.xpath("/html/body/div/div[4]/table/tbody/tr[1]/td[1]/input[3]")).sendKeys("0");
drv.findElement(By.xpath("/html/body/div/div[6]/input[3]")).click();
Thread.sleep(2000);
//結束日期
WebElement drv2 = driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[8]/div[2]/input"));
drv2.findElement(By.xpath("/html/body/div/div[4]/table/tbody/tr[1]/td[1]/input[1]")).sendKeys("21");
drv2.findElement(By.xpath("/html/body/div/div[4]/table/tbody/tr[1]/td[1]/input[3]")).sendKeys("0");
drv2.findElement(By.xpath("/html/body/div/div[6]/input[3]")).click();
//kafei
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[9]/div/label[3]/input")).click();
//xika
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[9]/div/label[4]/input")).click();
//會議標題
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[11]/div/input")).clear();
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[11]/div/input")).sendKeys("人力和財務部門會議");
//內部人員
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[12]/div/div[1]")).click();
//部門部長
driver.findElement(By.xpath("/html/body/div[1]/div/div[4]/div[2]/div[1]/a")).click();
driver.findElement(By.xpath("/html/body/div[1]/div/div[4]/div[2]/div[2]/ul/label[4]/input")).click();
//財務部zhng
driver.findElement(By.xpath("/html/body/div[1]/div/div[4]/div[3]/div[1]/a")).click();
driver.findElement(By.xpath("/html/body/div[1]/div/div[4]/div[3]/div[2]/ul/label[2]/input")).click();
//保存
driver.findElement(By.xpath("/html/body/div[1]/div/div[7]/button[1]")).click();
driver.findElement(By.xpath("/html/body/div[8]/div[2]/form/div[17]/div[2]/button")).click();
driver.switchTo().defaultContent();
Thread.sleep(2000);
driver.switchTo().window(driver.getWindowHandle());
}
public static void main(String[] args) {
// Run main function to test your script.
System.setProperty("webdriver.chrome.driver","E:\\webdriver2\\chromedriver.exe");
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.setBinary("C:\\Users\\HCB\\AppData\\Local\\360Chrome\\Chrome\\Application\\360chrome.exe");
WebDriver driver = new ChromeDriver();
try { test(driver); }
catch(Exception e) { e.printStackTrace(); }
finally { driver.close(); }
}
}
第二項是性能測試
下載第三個插件如圖:
2019比賽使用這個插件主要測試點有參數化,事務控制和集結點 。
直接下載解壓Jmeter就可以用了雙擊bin目錄下的Apache Jmeter.jar
就可以用了界面如下:
下載badboy來錄製腳本:
badboy使用方法如下:
得到這個
然後再Jmeter中打開得到
展開
事務:
集結點
參數化
這樣配置