TestNG组明智的测试执行不在xml文件中工作

时间:2013-04-30 06:26:49

标签: eclipse selenium-webdriver testng

请帮助我使用testng xml文件以组方式执行测试

我有一个继承了子类的类

public class testcase extends Loginclass {

在这个课程中,我有一个多组测试

@Test(dataProvider = "In_credentials", groups ={"Login_cred"})
@Test(dataProvider = "Invalid_credentials", groups ={"Login_cred"})

所以在我的XML文件中,我必须包含Group名称才能执行上面的测试 我的xml文件是

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite for Login" >
  <test name="Login validation">
  <groups>
  <run>
  <include name ="Login_cred"/>
  </run>
  </groups>
    <classes>
      <class name="pk.webdriver.testcase">
      </class>
      </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

在执行期间我得到一个NUll指针异常,请告诉我如何为上述情况定义xml文件(我们使用页面对象设计模式)

感谢 prabakar M

4 个答案:

答案 0 :(得分:3)

如果此测试用例有任何Before方法和After方法,则将参数保持为“alwaysrun = true”。它会起作用

答案 1 :(得分:0)

当你的类扩展另一个类时,请尝试包括 xml文件中的另一个类以及  

答案 2 :(得分:0)

it should work but you can try a package also 

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="ProjectName" verbose="10" parallel="false">
    <test name="Full Regression">
        <groups>
            <run>
                <include name="Login_cred" />
            </run>
        </groups>
        <packages>
            <package name="com.my.test" />
        </packages>     
    </test>
</suite>

@Test(groups = { "Login_cred" }, dataProvider = "testData")

see that the test is public !!!

答案 3 :(得分:0)

您也可以尝试在组中包括beforeClass方法。这可能适合您的情况。