博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
软件测试_lab2_Selenium自动化
阅读量:4985 次
发布时间:2019-06-12

本文共 3589 字,大约阅读时间需要 11 分钟。

一、实验要求

1、安装SeleniumIDE插件

2、学会使用SeleniumIDE录制脚本和导出脚本

3、访问http://121.193.130.195:8080/使用学号登录系统(账户名为学号,密码为学号后6位),进入系统后可以看到该同学的git地址。

4、编写Selenium Java WebDriver程序,测试inputgit.csv表格中的学号和git地址的对应关系是否正确。

5、将测试代码提交到github

二、解决方法

1、安装SeleniumIDE插件

打开Firefox->打开菜单->添加组件->搜索SeleniumIDE->安装->重启Firefox

2、学会使用SeleniumIDE录制脚本和导出脚本

打开SeleniumIDE

Firefox->打开菜单->开发者工具->SeleniumIDE

或在工具栏打开(需要Firefox最大化才能看到)

点击录制

此时你可以做一系列的操作,SeleniumIDE将会将其录制。

蓝框处可以自动执行你录制的操作红框处可调整操作的快慢。

导出脚本:文件->Export Test Case As->你想要的脚本形式。

4、编写Selenium Java WebDriver程序,测试inputgit.csv表格中的学号和git地址的对应关系是否正确。

下载对应的Selenium。注意Selenium版本需要和Firefox版本想对应,如果Selenium版本在3以上还需要下载相应的驱动。

inputgit.csv导入程序:

package lab2;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import java.io.IOException;

import java.util.ArrayList;

import java.util.List;

public class CSVUtils {

boolean isSucess=false;
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 static void main(String args[]){
List<String> dataList=CSVUtils.importCsv(new File("E:\\学习1\\软件测试\\inputgit.csv"));
if(dataList!=null && !dataList.isEmpty()){
int i = 0;
for(String data : dataList){
i++;
if(i == 1)
continue;
System.out.println(data.substring(0,10));
int a = 11 ,b = 12;
while(b<data.length()){
if(data.charAt(b) == ','){
// System.out.println(data.substring(a,b));
// System.out.println(data.substring(b+1));
break;
}
b++;
}
System.out.println(data.substring(4,10));
System.out.println(data.substring(a,b));
System.out.println(data.substring(b+1));
}
}
}
}

Selenium Java WebDriver程序:

package lab2;

import static org.junit.Assert.*;

import java.io.File;

import java.util.List;
import java.util.concurrent.TimeUnit;
import org.junit.*;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Lab2_SeleniumIDE_use {

private WebDriver driver;
private String baseUrl;
@Before
public void setUp(){
System.setProperty("webdriver.firefox.bin","E:\\firefox-47.0.1.win64.sdk\\firefox-sdk\\bin\\firefox.exe");
System.setProperty("webdriver.firefox.marionette","E:\\学习1\\软件测试\\geckodriver-v0.9.0-win64\\geckodriver.exe");
driver = new FirefoxDriver();
baseUrl = "http://121.193.130.195:8080";
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}

@Test

public void test() {
List<String> dataList=CSVUtils.importCsv(new File("E:\\学习1\\软件测试\\inputgit.csv"));
if(dataList!=null && !dataList.isEmpty()){
int i = 0;
for(String data : dataList){
i++;
if(i == 1)
continue;
int a = 11 ,b = 12;
while(b<data.length()){
if(data.charAt(b) == ','){
break;
}
b++;
}
driver.get(baseUrl + "/");
driver.findElement(By.id("name")).clear();
driver.findElement(By.id("name")).sendKeys(data.substring(0,10));
driver.findElement(By.id("pwd")).clear();
driver.findElement(By.id("pwd")).sendKeys(data.substring(4,10));
driver.findElement(By.id("submit")).click();
String github = driver.findElement(By.xpath("//tr[3]/td[2]")).getText();
String name = driver.findElement(By.xpath("//tr[1]/td[2]")).getText();
assertEquals(data.substring(a,b),name);
assertEquals(data.substring(b+1),github);
}
}
}
@After
public void tearDown(){
driver.quit();
}

}

 

转载于:https://www.cnblogs.com/QinYongGui/p/6623045.html

你可能感兴趣的文章
寒假作业03
查看>>
P1129 [ZJOI2007]矩阵游戏
查看>>
hdu2046 骨牌铺方格
查看>>
同心圆闪烁扩散功能
查看>>
自定义连接池
查看>>
应用程序不能全然结束的原因探秘及调试方法
查看>>
单元文件结构
查看>>
DOM、SAX、DOM4J、JDOM、StAX生成XML并返回XML字符串形式
查看>>
NOIP2011T2 统计单词数
查看>>
每日5min分享-接口测试框架
查看>>
超好用超短的小程序请求封装
查看>>
软件工程——理论、方法与实践⑦
查看>>
批处理实现多线程执行命令列表文件
查看>>
跟牛牛老师学习python自动化的第六天
查看>>
Vim 加 Gmail 变身 Vmail
查看>>
(5) Orchard 开发之 Localization and NullLocalizer
查看>>
分类算法(1)--KNN
查看>>
ajax等待请求
查看>>
Java学习之equals和hashcode的关系
查看>>
一页纸商业计划书 (Business Plan) 模板(转载)
查看>>