TestNG没有在selenium webdriver中执行Test annotation内部的方法

时间:2014-07-23 10:59:32

标签: java eclipse selenium-webdriver annotations testng

我是selenium webdriver的新手,我刚刚为eclipse kelpler安装了TestNG插件,现在当我尝试使用TestNG执行我的代码时,我能够看到@BeforeTest下的代码执行但是@Test注释没有被执行。 这是我写的代码:

import java.util.List;
import java.util.Set;

import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.Wait;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;

public class Survey_Fill {

WebDriver driver;

    @BeforeTest
    public void start(){
        driver= new FirefoxDriver();

        org.openqa.selenium.Dimension d = new org.openqa.selenium.Dimension(1360, 1200);
         driver.manage().window().setSize(d);   
    }

    @Test
    public void test(){
        System.out.println("hello");

    }

}

以下是TestNG结果给出的输出:

[TestNG] Running:
  C:\Users\User\AppData\Local\Temp\testng-eclipse--1183478272\testng-customsuite.xml


===============================================
    Default test
    Tests run: 0, Failures: 0, Skips: 0
===============================================


===============================================
Default suite
Total tests run: 0, Failures: 0, Skips: 0
===============================================

[TestNG] Time taken by org.testng.reporters.EmailableReporter2@3379bd14: 35 ms
[TestNG] Time taken by [FailedReporter passed=0 failed=0 skipped=0]: 0 ms
[TestNG] Time taken by org.testng.reporters.jq.Main@12b2bde5: 164 ms
[TestNG] Time taken by org.testng.reporters.SuiteHTMLReporter@7b3825bf: 257 ms
[TestNG] Time taken by org.testng.reporters.JUnitReportReporter@566fbd76: 0 ms
[TestNG] Time taken by org.testng.reporters.XMLReporter@72c25346: 13 ms

请让我知道我在这里所做的错误。 感谢。

1 个答案:

答案 0 :(得分:3)

如果您使用TestNG

运行测试

删除import org.junit.Test

使用TestNG注释,

import org.testng.annotations.Test;

为什么它不起作用,

bcoz,test()方法派生自Junit,start()方法使用TestNG注释,因为您将测试作为TestNG测试运行,Junit test()不会执行。

如果您将测试作为Junit测试运行,那么您可以看到差异。