测试NG
最后修改时间:2023 年 9 月 7 日从本文中,您将学习如何为您的项目设置 TestNG、创建测试并运行它们以查看代码是否正常运行。它仅包含入门的基本步骤。
如果你想了解更多关于TestNG的信息,请参考官方文档。要了解有关 IntelliJ IDEA 测试功能的更多信息,请参阅本节中的其他主题。
您可以选择使用 Maven 或 Gradle 来执行此页面上的步骤。
笔记
IntelliJ IDEA 与 TestNG 7.1.0 捆绑在一起
将 TestNG 添加到您的项目中
打开项目根目录中的pom.xml 。
提示
要快速导航到文件,请按并输入其名称。CtrlShift0N
在pom.xml中,按并选择“依赖项”。AltInsert
在打开的对话框中,
testNG
在搜索字段中输入内容。找到
org.testng:testing
依赖项,在搜索结果中选择其版本,然后单击“添加”。将依赖项添加到pom.xml后,按或单击Maven工具窗口以导入更改。CtrlShift0O
提示
有关使用 Maven 项目的更多信息,请参阅Maven。
打开项目根目录中的build.gradle 。
提示
要快速导航到文件,请按并输入其名称。CtrlShift0N
在build.gradle中,按并选择“添加 Maven 工件依赖项”。AltInsert
在打开的对话框中,
testNG
在搜索字段中输入内容。找到
org.testng:testing
依赖项,在搜索结果中选择其版本,然后单击“添加”。将依赖项添加到build.gradle后,按或单击Gradle工具窗口以导入更改。CtrlShift0O
提示
有关使用 Gradle 项目的更多信息,请参阅Gradle。
转到文件| 项目结构( ) 或单击工具栏上的 。CtrlAltShift0S
在“项目设置”下,选择“库”并单击 | 来自马文。
在打开的对话框中,指定必要的库工件,例如:
org.testng:testng:6.14.3
。单击“应用”保存更改并关闭对话框。
提示
上面的过程显示了添加依赖项的手动方法。如果您刚刚开始编写测试,IntelliJ IDEA会自动检测依赖项是否缺失并提示您添加。
创建测试
提示
您可以使用专用的意图操作来创建新类并为您填充测试方法,而不是手动创建测试类。
创建一个新的 TestNG 类
在项目工具窗口 ( ) 中,右键单击测试源根目录中要在其中创建新测试类的包。Alt01
选择新建 | 上下文菜单中的Java 类。
在“创建新类”对话框中,为新类命名并单击“确定”。
在编辑器中,编写测试类的代码。必要时使用 TestNG 注释。例如,您可能想要注释整个类或单个方法:
import org.testng.Assert; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; @Test() public class SampleTest { @DataProvider public Object[][] data() { return new String[][] {new String[] {"data1"}, new String[] {"data2"}}; } @Test(dataProvider = "data") public void test(String d) { Assert.assertEquals("First Line\nSecond Line", "First Line\nSecond Line"); } }
运行测试
运行 TestNG 测试
要运行单个测试,请单击装订线并选择“运行”。
要运行测试类中的所有测试,请单击测试类声明并选择“运行”。
您可以在“运行”工具窗口中查看测试结果。
提示
您还可以使用 Maven(请参阅Maven 中的测试)或 Gradle(请参阅Gradle 中的测试)运行测试。
运行测试并生成报告
在 IntelliJ IDEA 中,您可以添加 VM 选项、使用其他 JDK 或使用运行配置启用代码覆盖率。您可以使用不同的设置为同一测试类或测试套件创建多个配置并比较结果。
对于 TestNG,您可以配置将为您生成报告的侦听器。如果您不想在每次运行测试时生成报告,创建单独的运行配置可能会有所帮助。
转到“运行”| 编辑配置。
如果没有先前创建的 TestNG 配置,请单击并从打开的列表中选择TestNG。
否则,从列表中选择所需的现有配置。
如果是新配置,请为其命名。
从测试类型列表中,选择要运行的测试范围。下一个字段将相应地更改,允许您选择要运行的特定测试。
在“输出目录”字段中,您可以指定 IDE 将在其中放置报告的文件夹。
默认情况下,IDE在项目根目录中创建一个新的测试输出文件夹,但您可以使用其他文件夹或为不同的报告使用不同的文件夹。
切换到“监听器”页签,单击,添加该
EmailableReporter
选项。这将生成 HTML 报告。单击“应用”保存更改并关闭对话框。
在工具栏上,确保选择新创建的运行配置,然后单击其旁边的 。或者,按。ShiftF10
提示
有关 TestNG 运行配置中每个选项的详细说明,请参阅运行/调试配置:TestNG。
IDE在您在运行配置中指定的文件夹中创建一个.html报告,其中包含测试运行的结果。如果您未指定文件夹,将创建包含报告的测试输出文件夹。
要在浏览器中快速查看此文件,请在编辑器中打开该文件。然后,转到查看 | 在浏览器中打开并选择浏览器。您还可以使用内置预览来查看文件。有关详细信息,请参阅预览 HTML 文件的输出。
测试套件
在 TestNG 中,测试套件是旨在测试应用程序的特定功能或特性的测试集合。它是一个保存一组相关测试用例的容器。可以通过对多个测试用例进行分组或组合多个测试套件来创建测试套件。
TestNG 不允许在测试代码或主测试源代码中定义测试套件。这就是为什么可以在 XML 或 YAML 文件中定义测试套件,其中包含有关测试用例、包含测试用例的类或包以及测试参数的信息。
在 XML 中创建测试套件
您可以在.xml或.yaml文件中指定测试套件。如果要使用 YAML,请确保将相应的依赖项添加到构建文件中。
在项目工具窗口中右键单击项目根文件夹,选择新建| 文件并输入文件名,例如testing.xml。
在文件中填写有关您的测试的信息。有关更多信息,请参阅testing.xml。
使用 YAML 进行测试套件
TestNG支持使用 YAML 定义测试套件,但是默认情况下它不包含 YAML 解析器。如果要使用 YAML 文件,请添加snakeyaml
依赖项。该版本应与您使用的 TestNG 版本相对应。
打开构建文件(pom.xml或build.gradle),按,然后选择Add dependency。AltInsert
在打开的工具窗口中,
snakeyaml
在搜索字段中输入内容。找到所需的依赖项,在搜索结果中选择其版本,然后单击旁边的“添加” 。
按或单击编辑器右上角显示的通知以加载更改。CtrlShift0O
在项目工具窗口中右键单击项目根文件夹,选择新建| 文件并输入文件名,例如testing.yaml。
运行测试套件
为了能够运行 TestNG 测试套件,请为此套件创建运行配置:
转到“运行”| 编辑配置。
在左侧窗格中,单击并从打开的列表中选择TestNG。为新配置命名。
从测试类型列表中,选择Suite。
Suite字段变为可用。
在“套件”字段中,单击并指定配置测试套件的 XML 或 YAML 文件的路径。
在“输出目录”字段中,您可以指定 IDE 将在其中放置输出文件(例如测试报告)的文件夹。
默认情况下,IDE在项目根目录中创建一个新的测试输出文件夹,但您可以使用其他文件夹或为不同的输出使用不同的文件夹。
单击“应用”保存更改并关闭对话框。
在工具栏上,确保选择新创建的运行配置,然后单击其旁边的 。或者,按。ShiftF10
提示
有关 TestNG 运行配置中每个选项的详细说明,请参阅运行/调试配置:TestNG。
感谢您的反馈意见!