测试代码
package OtherSpacePage;
import LoginPage.InitAndEnd;
import org.junit.jupiter.api.*;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvFileSource;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
import static java.lang.Thread.sleep;
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class OtherSpacePageTest extends InitAndEnd {
static WebDriver webDriver;
@BeforeAll
static void SetUp() {
webDriver = new ChromeDriver();
}
@AfterAll
static void TearDown() {
webDriver.quit();
}
/**
* 点击聊天按钮
*/
@Order(1)
@ParameterizedTest
@CsvFileSource(resources = "TestOS001.csv")
void TestOS001(String login_url, String username, String password, String client_url, String alert_text) throws InterruptedException {
// 打开登录页面
webDriver.get(login_url);
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
// 输入账号zhangsan
webDriver.findElement(By.cssSelector("#username")).sendKeys(username);
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
// 输入密码123456
webDriver.findElement(By.cssSelector("#password")).sendKeys(password);
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
// 点击提交按钮
webDriver.findElement(By.cssSelector("#submit")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
//切换到alert,获取alert
sleep(2000);
Alert alert = webDriver.switchTo().alert();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
String alertText = alert.getText();
//alertText = "登录成功!"测试通过,否则不通过
Assertions.assertEquals(alert_text, alertText);
alert.accept();
//点击空间按钮,进入我的空间
webDriver.findElement(By.cssSelector("body > div.nav > a:nth-child(4)")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
sleep(2000);
//点击好友按钮
webDriver.findElement(By.cssSelector("body > div.client-container > div.main > div.left > div.tab > div.tab-friend")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
//点击第一个好友,进入好友空间
webDriver.findElement(By.cssSelector("#friend-list > li:nth-child(1)")).click();
sleep(2000);
//点击聊天按钮,返回聊天页
// webDriver.findElement(By.cssSelector("body > div.nav > a")).click();
// webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
// String cur_url = webDriver.getCurrentUrl();
// webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
// // 如果url=http://139.196.92.170:8080/client.html,测试通过,否则测试不通过
// Assertions.assertEquals(client_url, cur_url);
}
/**
* 点击我的空间按钮
*/
@Order(2)
@ParameterizedTest
@CsvFileSource(resources = "TestOS002.csv")
void TestOS002(String mySpace_url) throws InterruptedException {
//跳转到我的空间页
webDriver.get(mySpace_url);
webDriver.manage().timeouts().implicitlyWait(3,TimeUnit.SECONDS);
//点击好友按钮
webDriver.findElement(By.cssSelector("body > div.client-container > div.main > div.left > div.tab > div.tab-friend")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
//点击第一个好友,进入好友空间
webDriver.findElement(By.cssSelector("#friend-list > li:nth-child(1)")).click();
sleep(2000);
//点击我的空间按钮
webDriver.findElement(By.cssSelector("body > div.nav > a")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
sleep(1000);
String url = webDriver.getCurrentUrl();
//如果url=http://139.196.92.170:8080/my_space.html,测试通过,否则测试不通过
Assertions.assertEquals(mySpace_url,url);
}
/**
* 点击交个朋友
*/
@Order(3)
@ParameterizedTest
@CsvFileSource(resources = "TestOS003.csv")
void TestOS003(String mySpace_url) throws InterruptedException {
//跳转到我的空间页
webDriver.get(mySpace_url);
webDriver.manage().timeouts().implicitlyWait(3,TimeUnit.SECONDS);
//TODO
}
/**
* 点击和TA聊天
*/
@Order(4)
@ParameterizedTest
@CsvFileSource(resources = "TestOS004.csv")
void TestOS004(String mySpace_url,String client_url) throws InterruptedException {
//跳转到我的空间页
webDriver.get(mySpace_url);
webDriver.manage().timeouts().implicitlyWait(3,TimeUnit.SECONDS);
//点击好友按钮
webDriver.findElement(By.cssSelector("body > div.client-container > div.main > div.left > div.tab > div.tab-friend")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
//点击第一个好友,进入好友空间
webDriver.findElement(By.cssSelector("#friend-list > li:nth-child(1)")).click();
sleep(2000);
// 点击和TA聊天按钮
webDriver.findElement(By.cssSelector("#to-chat > button")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
sleep(1000);
String url = webDriver.getCurrentUrl();
//如果url=http://139.196.92.170:8080/client.html,测试通过,否则测试不通过
Assertions.assertEquals(client_url,url);
}
/**
* 已收藏的好友动态点击收藏
*/
@Order(5)
@ParameterizedTest
@CsvFileSource(resources = "TestOS005.csv")
void TestOS005(String mySpace_url,String alert_text) throws InterruptedException {
//跳转到我的空间页
webDriver.get(mySpace_url);
webDriver.manage().timeouts().implicitlyWait(3,TimeUnit.SECONDS);
//点击好友按钮
webDriver.findElement(By.cssSelector("body > div.client-container > div.main > div.left > div.tab > div.tab-friend")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
//点击第一个好友,进入好友空间
webDriver.findElement(By.cssSelector("#friend-list > li:nth-child(1)")).click();
sleep(2000);
//TODO
// webDriver.findElement(By.cssSelector("body > div.client-container > div.main > div.right > div.drift-bottle-show > div:nth-child(2) > div.add-resonance > button")).click();
// //切换到alert,获取alert
// sleep(2000);
// Alert alert = webDriver.switchTo().alert();
// webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
// String alertText = alert.getText();
// //alertText = "登录成功!"测试通过,否则不通过
// Assertions.assertEquals(alert_text, alertText);
// alert.accept();
}
/**
* 未收藏的好友动态点击收藏
*/
@Order(6)
@ParameterizedTest
@CsvFileSource(resources = "TestOS006.csv")
void TestOS006(String mySpace_url,String alert_text) throws InterruptedException {
//跳转到我的空间页
webDriver.get(mySpace_url);
webDriver.manage().timeouts().implicitlyWait(3,TimeUnit.SECONDS);
//点击好友按钮
webDriver.findElement(By.cssSelector("body > div.client-container > div.main > div.left > div.tab > div.tab-friend")).click();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
//点击第一个好友,进入好友空间
webDriver.findElement(By.cssSelector("#friend-list > li:nth-child(1)")).click();
sleep(2000);
webDriver.findElement(By.cssSelector("body > div.client-container > div.main > div.right > div.drift-bottle-show > div:nth-child(2) > div.add-resonance > button")).click();
//切换到alert,获取alert
sleep(2000);
Alert alert = webDriver.switchTo().alert();
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
String alertText = alert.getText();
//alertText = "登录成功!"测试通过,否则不通过
Assertions.assertEquals(alert_text, alertText);
alert.accept();
}
}
测试数据
TestOS001.csv
http://139.196.92.170:8080/login.html,zhangsan,123456,http://139.196.92.170:8080/client.html,登录成功!
TestOS002.csv
http://139.196.92.170:8080/my_space.html
TestOS003.csv
http://139.196.92.170:8080/my_space.html
TestOS004.csv
http://139.196.92.170:8080/my_space.html,http://139.196.92.170:8080/client.html
TestOS005.csv
http://139.196.92.170:8080/my_space.html,动态已经收藏了
TestOS006.csv
http://139.196.92.170:8080/my_space.html,收藏添加成功!