如何配置testng.xml配置文件以在注释之前和之后运行多个测试

时间:2014-08-26 21:48:06

标签: xml unit-testing testing selenium testng

我正在尝试使用testNG单元测试和selenium UI测试框架运行我用Java编写的多个测试。我有一个配置文件设置,以便于运行多个测试。

当我将@BeforeTest和@AfterTest注释添加到我创建的单独方法时,由于某些公共代码行到多个测试,我的测试都失败了,因为@BeforeTest无法初始化。我在代码中的几乎所有位置都得到了java.lang.NullPointerException。

当我将此设置和清理代码放入我的多个@Test方法时,它可以正常工作。

以下是我正在做的事情

我有2个java类:

CaliforniaBenefitsTest.java 
TestConfig.java 

两者都属于同一个包:

com.company.qa.states.benefits

这是我的XML文件:

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> 


<suite thread-count="1" verbose="4" name="Config">

    <parameter name="configFile" value="config.properties" /> 
    <parameter name="testConfigFile" value="testConfig.properties" /> 
    <parameter name="proxy" value="notrequired" /> 


    <test name = "Tests1"> 

        <groups> 
            <run> 
                <include name="prerequisite" /> 
                <include name="runnable" /> 
            </run> 
        </groups> 
        <classes>               
                <class name = "com.company.qa.states.benefits.CaliforniaBenefitsTest"/> 
        </classes> 
    </test> 


    <test name="Tests2"> 
        <groups> 
            <run> 
                <include name="prerequisite" /> 
                <include name="runnable" />         
            </run>
        </groups>
        <classes>
                <class name = "com.company.qa.states.benefits.TestConfig"/> 
        </classes>
    </test>

</suite>

我做错了什么?如何修复我的XML文件或@BeforeTest和@AfterTest方法。请告诉我如何解决这个问题,让我疯了。如果我没有包含某些信息,请问我,我会提供这些信息。

1 个答案:

答案 0 :(得分:0)

请参阅以下步骤 -

  1. 运行项目

  2. 刷新项目

  3. 现在,“test-output”文件夹将在您的项目下创建 - 展开文件夹

  4. 双击'index.html'文件;它将在Eclipse Browser窗口中打开

  5. 点击左侧面板上的“.xml”链接

  6. 测试套件XML将在右侧面板上打开

  7. 获取XML内容的副本

  8. 右键单击您的项目&gt;&gt;新&gt;&gt;文件

  9. 提供测试套件文件的名称(带扩展名,例如testng.xml),然后单击“完成”

  10. 粘贴您从'index.html'复制的内容,并根据您的需要修改您的套件文件

  11. 参考 - How to create 'testng.xml' using Eclipse