Blame view

src/test/java/com/essa/testSuite/TestLogin.java 2.23 KB
fdd4bb76   zengjin55   windows
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  package com.essa.testSuite;
  
  import java.io.IOException;
  
  import org.openqa.selenium.WebDriver;
  import org.openqa.selenium.support.PageFactory;
  import org.testng.annotations.AfterClass;
  import org.testng.annotations.BeforeClass;
  import org.testng.annotations.DataProvider;
  import org.testng.annotations.Test;
  import org.testng.asserts.SoftAssert;
  
  import com.essa.framework.BrowserEngine;
  import com.essa.pageObject.HomePage;
  import com.essa.pageObject.LoginPage;
  
60b8852f   Administrator   test
17
18
19
20
  /**
   * @author Administrator
   *测试用例:登录测试
   */
09fdf50f   Administrator   bpms
21
  public class TestLogin {
fdd4bb76   zengjin55   windows
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
  	WebDriver driver;
  	
  	/*
  	 * 调用浏览器,打开网页
  	 * 执行任何测试之前都应执行这个步骤
  	 * 后面我会把这个方法封装在pageObject.function里面
  	 */
  	
  	@BeforeClass
  	public void setUp() throws IOException {
  		
  		BrowserEngine browserEngine = new BrowserEngine();
  		
  		browserEngine.initConfigData();
  		
  		driver = browserEngine.getBrowser();
  		
  	}
  	
  	/*
  	 * 初始化(实例化)一个登录页面
  	 * 做登录操作
  	 * 登录完后会跳转到后台首页
  	 * 故要初始化一个后台首页用于断言是否登录成功
  	 * 这里登录成功的标识是有“退出”按钮
  	 */
  	
  	@Test(dataProvider="users")
  	public void login(String account,String password) {
  		
  		LoginPage loginPage = PageFactory.initElements(driver, LoginPage.class);
  		
  		loginPage.login(account, password);
  		
  		HomePage homePage = PageFactory.initElements(driver, HomePage.class);
  		
  		/*
  		 * 软断言,即就算此用例失败,依然会继续执行
  		 * 断言后,做退出登录操作
  		 */
  		
  		SoftAssert softAssert = new SoftAssert();
  		
  		softAssert.assertEquals(homePage.isSucceed(), true, "登录失败!");
  		
  		softAssert.assertAll();
  		
  		homePage.logout();
  		
  	}
  	
  	/*
  	 * 提供数据对象
  	 * 此方法读取当前项目根目录下的data\\data.xlsx文件中的“users”工作表
  	 */
  	
  	@DataProvider(name="users")
  	public Object[][] suppliersData() {
  		
  		try {
  			
  			return com.essa.framework.BasePage.readExcel(".\\src\\main\\resources", "data.xlsx", "users");
  		
  		} catch (Exception e) {
  			
  			e.printStackTrace();
  			
  			return null;
  			
  		}
  	}
  	
  	/*
  	 * 最后要做清理工作,避免占用资源
  	 */
  	
  	@AfterClass
  	public void tearDown() {
  		
  		driver.quit();
  		
  	}
  }