总结:testng支持注解,线程池,数据驱动,参数化,强大执行模式,也支持单元测试,功能测试,接口测试
TestNG is a testing framework inspired from JUnit and NUnit but introducing some new functionalities that make it more powerful and easier to use, such as:
Annotations.
Run your tests in arbitrarily big thread pools with various policies available (all methods in their own thread, one thread per test class, etc…).
Test that your code is multithread safe.
Flexible test configuration.
Support for data-driven testing (with @DataProvider).
Support for parameters.
Powerful execution model (no more TestSuite).
Supported by a variety of tools and plug-ins (Eclipse, IDEA, Maven, etc…).
Embeds BeanShell for further flexibility.
Default JDK functions for runtime and logging (no dependencies).
Dependent methods for application server testing.
TestNG 是一个测试框架,它受到了 JUnit 和 NUnit 的启发,但引入了一些新功能,使其更加强大和易于使用。以下是 TestNG 的一些主要特点和优势:
注解(Annotations):
TestNG 使用注解来标记测试方法、测试套件、测试组等,使得测试代码更加清晰和易于管理。多线程测试执行:
TestNG 允许你在任意大小的线程池中运行测试,提供了多种线程策略,比如每个方法都在自己的线程中运行,每个测试类使用一个线程等。多线程安全测试:
TestNG 可以测试你的代码是否在多线程环境下安全,这对于并发编程的测试至关重要。灵活的测试配置:
TestNG 提供了灵活的测试配置选项,可以根据需要调整测试的执行顺序、优先级等。数据驱动测试支持:
通过使用@DataProvider
注解,TestNG 支持数据驱动测试,你可以为测试方法提供多组不同的输入数据。参数化测试:
TestNG 允许你为测试方法提供参数,这使得你可以为同一个测试逻辑准备不同的测试场景。强大的执行模型:
TestNG 采用了强大的执行模型,不再依赖于传统的 TestSuite,而是使用注解和配置文件来组织和管理测试。丰富的工具和插件支持:
TestNG 被多种工具和插件支持,包括 Eclipse、IDEA、Maven 等,这使得它可以在各种开发环境中轻松集成和使用。嵌入 BeanShell:
BeanShell 是一个轻量级的 Java 脚本引擎,TestNG 嵌入 BeanShell 提供了额外的灵活性,允许在测试执行过程中执行动态脚本。默认 JDK 函数:
TestNG 使用 JDK 的默认函数进行运行时和日志记录,这意味着它不依赖于任何额外的库或框架。依赖方法:
TestNG 支持定义依赖方法,这对于应用服务器测试等复杂场景非常有用,可以确保测试按照特定的顺序执行,并且某些测试方法依赖于其他方法的执行结果。总的来说,TestNG 是一个功能强大且易于使用的测试框架,适用于各种 Java 应用程序的测试需求。
简单来说,
testng有注解 ;
testng可用线程池运行test测试用例
testng用多线程池运行代码是安全的
testng有灵活的测试配置
testng支持数据驱动,主要用@DataProvider
testng支持参数化
testng有强大的执行模式,不需太多TestSuite(测试套件)
Eclipse,IDEA,Maven都兼容testng
testng可灵活嵌入BeanShell
testng运行时可用JDK相关方法
testng涵盖所有类别的测试:单元测试,功能测试,端到端测试,集成测试
编写一个用例
Writing a test is typically a three-step process:
Write the business logic of your test and insert TestNG annotations in your code.
Add the information about your test (e.g. the class name, the groups you wish to run, etc…) in a testng.xml file or in
build.xml
.Run TestNG.
编写一个测试通常是一个三步走的过程:
编写测试的业务逻辑并插入TestNG注解:
首先,你需要编写测试代码,这通常包括设置测试环境、调用被测试的方法或函数,以及验证结果是否符合预期。在这个过程中,你会使用TestNG提供的注解来标记测试方法、测试套件、测试组等。例如,你可以使用@Test
注解来标记一个测试方法,使用@BeforeMethod
或@AfterMethod
来标记在每个测试方法执行前后需要运行的代码。在testng.xml文件或build.xml文件中添加测试信息:
接下来,你需要提供一个配置文件来告诉TestNG如何运行你的测试。这个文件通常是testng.xml,它包含了测试运行所需的各种信息,比如要运行的测试类、测试组、测试方法的顺序、是否并行执行等。如果你使用的是像Maven或Ant这样的构建工具,你也可以在它们的构建脚本(如build.xml或pom.xml)中配置TestNG的运行参数。运行TestNG:
最后,你可以通过命令行、IDE插件或构建工具来运行TestNG。当TestNG运行时,它会读取你的testng.xml配置文件或构建脚本中的设置,加载并执行你的测试代码。TestNG会收集测试结果,并在测试完成后生成报告,你可以根据报告来查看测试是否通过,以及每个测试的具体执行情况。这三个步骤涵盖了编写、配置和运行TestNG测试的全过程。确保你的测试代码逻辑清晰、注解使用正确,配置文件设置合理,就可以有效地进行单元测试、集成测试或其他类型的测试。
步骤‘;
File-Settings-Plugins-输入插件名称,需要安装testng和xml
目的:是为了建testng测试类
在pom文件配置testng添加这段配置
目的:是开发代码时需要用testng源码类