如何使用 xml 在 Eclipse Run test 中配置 TestNG

如何在 eclipse 中安装 TestNG

  1. 打开日食

  2. 单击帮助>安装新软件 StackOverflow 文档

  3. 单击添加

  4. 提供名称和 URL - ![StackOverflow 文档](http://beust.com/eclipse> <https://i.stack.imgur.com/6hni5.png)

  5. 选择 TestNG

  6. 点击下一步

StackOverflow 文档

  1. 单击完成
  2. 安装 TestNG 需要一些时间

安装完毕后再重启 eclipse。

让我们创建一个 TestNG 项目

  1. 文件>新建> Java 项目>提供一些名称,然后单击完成

  2. 创建一个类作为 TestNGClass

  3. 创建以下类

    1.LoginPage.class

    2.HomePage.class

    3.FBLoginTest.class

这里是代码:

LoginPage 类

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.PageFactory;

public class LoginPage {

    @FindBy(id = "email")
    private WebElement username;
    
    @FindBy(id = "pass")
    private WebElement password;
    
    @FindBy(xpath = ".//input[@data-testid='royal_login_button']")
    private WebElement login;
    
    WebDriver driver;
    
    public LoginPage(WebDriver driver){
        this.driver = driver;
         PageFactory.initElements(driver, this);
    }
    public void enterUserName(String name){
        username.clear();
        username.sendKeys(name);
    }
    
    public void enterPassword(String passwrd){
        password.clear();
        password.sendKeys(passwrd);
    }
    

    public HomePage clickLoginButton(){
        login.click();
        return new HomePage(driver);
    }
}

主页课

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.PageFactory;

public class HomePage {

    @FindBy(id = "userNavigationLabel")
    private WebElement userDropdown;
    
    WebDriver driver;
    
    public HomePage(WebDriver driver){
        this.driver = driver;
        PageFactory.initElements(driver, this);
    } 
    
    public boolean isUserLoggedIn(){
        return userDropdown.isDisplayed();
    }
    
}

FBLoginTest 类

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.Assert;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;

import com.testng.pages.HomePage;
import com.testng.pages.LoginPage;

public class FBLoginTest {
    
    WebDriver driver;
    LoginPage loginPage;
    HomePage homePage;
    
    @BeforeClass
    public void openFBPage(){
        driver = new FirefoxDriver();
        driver.get("https://www.facebook.com/");
        loginPage = new LoginPage(driver);
    }
    
    @Test
    public void loginToFB(){
        loginPage.enterUserName("");
        loginPage.enterPassword("");
        homePage = loginPage.clickLoginButton();
        Assert.assertTrue(homePage.isUserLoggedIn());
    }
    
    @AfterClass
    public void closeBrowser(){
        driver.quit();
    }

}

这里是 testng xml:右键单击 Project 创建一个 xml 文件并复制粘贴这个内容。

<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite">
  <test name="Test">
    <classes>
      <class name="com.testng.FBLoginTest"/>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

如何添加 selenium 独立 jar:
下载最新的 selenium 独立 jar 并在 Project 的 Build 路径中添加它。

  1. 右键单击 Project> Build path> Configure Build path> Select Libraries> Add external Jars

**如何运行 TestNG xml?**右键单击 xml> Run as> TestNGSuite

快乐编码:)