📜  TestNG-执行过程(1)

📅  最后修改于: 2023-12-03 14:47:57.282000             🧑  作者: Mango

TestNG 执行过程

TestNG 是一款流行的测试框架,它支持各种类型的测试,包括单元测试、集成测试和端到端测试。TestNG 的执行过程相对比较复杂,本文将介绍 TestNG 的执行过程,包括配置文件的加载、TestNG 生命周期的各个阶段和默认的执行顺序等。

加载配置文件

TestNG 的配置文件是 XML 格式的文件,其中包含测试套件、测试用例、测试类和测试方法等信息。在执行测试之前,TestNG 首先会加载配置文件,并根据配置文件中的信息生成测试运行时的数据模型。TestNG 支持多种类型的配置文件格式,包括 TestNG XML 文件、Maven POM 文件和 Gradle 构建文件等。

TestNG 生命周期

TestNG 的生命周期包括多个阶段,从加载配置文件开始,到执行测试用例和测试方法,再到生成测试报告和清理测试数据。以下是 TestNG 生命周期的主要阶段:

  1. 载入配置文件:TestNG 加载配置文件,并验证文件格式和内容。
  2. 构造测试用例:TestNG 根据配置文件中定义的测试套件、测试类和测试方法等信息,构建测试用例。
  3. 实例化测试对象:TestNG 为每个测试类创建一个测试对象。
  4. 配置测试对象:TestNG 对测试对象进行配置,包括注入依赖、加载测试数据等。
  5. 调用 @Before* 方法:TestNG 调用所有测试类中的 @Before* 方法,准备测试环境。
  6. 调用测试方法:TestNG 调用测试方法并收集测试结果。
  7. 调用 @After* 方法:TestNG 调用所有测试类中的 @After* 方法,清理测试环境。
  8. 生成测试报告:TestNG 生成 HTML 或 XML 格式的测试报告。
  9. 清理测试数据:TestNG 清除测试用例和测试数据。
执行顺序

TestNG 中测试方法的执行顺序可以根据不同的需求进行配置。默认情况下,TestNG 会按照测试方法的名称字典序进行执行。但是,如果测试方法中存在依赖关系,TestNG 会根据依赖关系进行执行。另外,可以使用 @Test 标注的 priority 属性来指定测试方法的执行优先级。

总结

TestNG 是一款功能强大的测试框架,其执行过程相对复杂。通过本文的介绍,你可以了解 TestNG 的加载文件、生命周期和执行顺序等方面的信息。如果你想进一步使用 TestNG 进行测试开发,可以查看 TestNG 官方文档或相关书籍。