zoukankan      html  css  js  c++  java
  • 使用testng.xml组织测试用例

    测试用例类TeseNG.java:

    import org.openqa.selenium.By;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.testng.Assert;
    import org.testng.Reporter;
    import org.testng.annotations.*;

    public class TestNG {
    private WebDriver driver;

    @BeforeClass
    public void beforeClass() throws InterruptedException {
    System.setProperty("webdriver.firefox.marionette",
    "src/main/resourcec/geckodriver.exe");
    String baiduHomePage;
    baiduHomePage = "https://www.baidu.com/";

    driver = new FirefoxDriver();
    driver.manage().window().maximize();
    driver.get(baiduHomePage);
    Thread.sleep(2000);
    Assert.assertEquals(driver.getTitle(), "百度一下,你就知道");
    }

    @Test(dataProvider = "word")
    public void testNG(String keyword, String case_1, String searchTitle)
    throws InterruptedException {
    WebElement webElement = driver.findElement(By.xpath(".//*[@id='kw']"));
    webElement.clear();
    webElement.sendKeys(keyword);

    driver.findElement(By.xpath(".//*[@id='su']")).click();
    Thread.sleep(3000);

    Reporter.log(case_1);
    Assert.assertEquals(driver.getTitle(), searchTitle);
    driver.navigate().refresh();
    }

    @AfterClass
    public void afterClass(){
    driver.close();
    driver.quit();
    }

    @DataProvider(name = "word")
    public static Object[][] data(){
    return new Object[][]{{"Selenium", "搜索Selenium的测试用例", "Selenium_百度搜索"},
    {"JMeter", "搜索JMeter的测试用例", "JMeter_百度搜索"},
    {"Appium", "搜索Appium的测试用例", "Appium_百度搜索"}
    };
    }
    }

    testng.xml文件:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
    <suite name="百度搜索的测试计划" verbose="2" preserve-order="true">

    <test name="分别搜索Selenium/JMeter/Appium的测试用例">
    <classes>
    <class name="TestNG" />
    </classes>
    </test>

    <listeners>
    <listener class-name="org.uncommons.reportng.HTMLReporter" />
    <listener class-name="org.uncommons.reportng.JUnitXMLReporter" />
    </listeners>
    </suite>

    
    
  • 相关阅读:
    【源码解析】Flink 是如何处理迟到数据
    Flink assignAscendingTimestamps 生成水印的三个重载方法
    【翻译】生成 Timestamps / Watermarks
    【翻译】The Broadcast State Pattern(广播状态)
    基于Broadcast 状态的Flink Etl Demo
    git 更新fork的远程仓库
    Flink 在IDEA执行时的webui
    配置ssh免密,仍需要密码
    第二章 Kubernetes进阶之使用二进制包部署集群
    Kubernetes之Ingress
  • 原文地址:https://www.cnblogs.com/yjlch1016/p/8322027.html
Copyright © 2011-2022 走看看