xml - 如何配置 testng.xml 配置文件以使用注释前后运行多个测试

标签 xml unit-testing testing selenium testng

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

当我添加@BeforeTest 和@AfterTest 注释来分隔我创建的方法时,由于某些公共(public)代码行到多个测试,我的测试都失败了,因为@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. 运行一次你的项目

  2. 刷新你的项目

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

  4. 双击“index.html”文件;它将在 Eclipse 浏览器窗口中打开

  5. 单击左侧面板上给出的“.xml”链接

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

  7. 复制 XML 内容

  8. 右键单击您的项目 >> 新建 >> 文件

  9. 为您的测试套件文件命名(扩展名为 .xml,例如 testng.xml)并单击完成

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

引用- How to create 'testng.xml' using Eclipse

关于xml - 如何配置 testng.xml 配置文件以使用注释前后运行多个测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25515701/

相关文章:

python - 如何明确指定 Firefox for Selenium 的路径?

php - 将 rss xmlns 命名空间定义添加到 php simplexml 文档?

c# - 具有 protected setter 的最小起订量属性

css - 有没有办法强制 IE 或 FF 进入手持模式以测试 "@media handheld"样式表?

unit-testing - 闭包内的 mock 模拟方法

android - 从 gradle 运行单个 Android(单元)测试而不加载其他项目依赖项

unit-testing - 测试包含 stderr、stdout 和 os.Exit() 的函数

c# - 使用数字签名签署 XML

php - PHP 中的 GPX 到 KML

c# - XMLTextReader 使用什么解析方法?