接口测试小白的TestNG学习之路

TestNG是一个受JUnit和NUnit启发的测试框架,但引入了一些新功能,使其功能更强大,更易于使用。TestNG旨在涵盖所有类别的测试:单元,功能,端到端,集成等…

设置和安装

在Eclipse上安装TestNG并执行你的第一个测试

本教程详细讨论以下主题:

1.TestNG简介

2.TestNG的优势

3.在Eclipse上安装TestNG

4.使用TestNG依赖关系创建Java项目

5.创建你的第一个TestNG类

6.运行TestNG测试

从TestNG开始

注释教程

TestNG使用注释来帮助开发人员编写测试。了解TestNG提供的所有注释及其简要说明。

注释之前和之后

在执行测试方法之前和之后,注释之前和之后主要用于执行特定的一组代码。这些用于在测试执行开始之前基本上设置一些变量或配置,然后在测试执行结束后清除所有这些内容。

预期异常和预期消息

在编写单元测试时,可能会出现某些情况,我们需要验证程序在执行期间是否正在抛出异常。TestNG提供了一种功能,通过允许用户指定执行过程中期望由测试方法抛出的异常类型来测试这种情况。它支持为验证提供多个值。如果测试引发的异常不是用户输入列表的一部分,则测试方法将被标记为失败。

如何禁用/忽略测试方法

执行TestNG测试时,可能会出现一些情况,您可能必须禁用特定测试或一组测试才能执行。例如,考虑某个特性中存在严重错误的情况,这是由于某些测试属于某些无法执行的情况。由于问题已经确定,我们可能需要禁用执行上述测试场景。
  接口测试小白的TestNG学习之路
 超时测试

在运行测试时,可能会出现某些测试卡住或可能比预期花费更多时间的情况。在这种情况下,您可能需要将上述测试用例标记为失败,然后继续。在本教程中,我们将学习如何将TestNG测试配置为在一段配置的持续时间后超时。

通过testng.xml和@Parameters注解传递参数

TestNG的一个重要特性是参数化。此功能允许用户将参数值作为参数传递给测试方法。这通过使用@Parameters注释来支持。

先进的概念

通过@DataProvider传递参数

TestNG提供的一个重要功能是DataProvider功能。它可以帮助您编写数据驱动的测试,这基本上意味着可以使用不同的数据集多次运行相同的测试方法。它有助于为测试方法提供复杂的参数,因为它不可能从XML中完成。

测试组,元组,默认组示例

分组测试方法是TestNG最重要的特性之一。在TestNG用户可以将多个测试方法分组到一个命名组中。您还可以执行属于一个或多个组的一组特定测试方法。该功能允许将测试方法分成不同的部分或模块。

了解本教程中的以下主题:

1.分组测试示例

2.通过Eclipse运行TestNG组

3.通过testng.xml运行TestNG组

4.编写属于多个组的测试

5.包括和排除组

6.使用正则表达式

7.默认组

8.组群
相关测试示例

依赖性是TestNG中的一个特性,它允许测试方法依赖于单个或一组测试方法。这将有助于执行测试方法之前执行的一组测试。如果“依赖方法”是同一个类或任何继承基类的一部分(即扩展类时),则方法依赖只能起作用。

@Factory注解

了解TestNG提供的@Factory注释。@Factory允许在运行时根据特定的数据集或条件创建测试。

@Factory和@DataProvider之间的区别

在学习TestNG的同时,很多人在阅读@DataProvider和@Factory注解时会感到困惑 - 什么时候使用?还有什么更好?我们来看看它们的两个功能。

执行并行测试

软件术语中的并行或多线程被定义为软件,操作系统或程序同时执行另一程序的多个部分或子部件的能力。TestNG允许测试以并行或多线程模式运行。这意味着基于测试套件配置,不同的线程同时启动并在其中执行测试方法。这为用户提供了比正常执行更多的优势,主要是减少了执行时间和验证多线程代码的能力。

了解以下主题:

1.并行测试执行的优点

2.并行运行测试方法

3.并行运行测试类

4.并行运行套件内部的测试

5.配置测试方法以在多个线程中运行

使用Maven构建执行TestNG测试

学习如何使用Maven构建文件即pom.xml文件来执行testng测试。如果您计划自动化测试并将其作为项目构建过程本身的一部分,则这些知识非常重要。
接口测试小白的TestNG学习之路

上面是我收集的一些视频资源,在这个过程中帮到了我很多。如果你不想再体验一次自学时找不到资料,没人解答问题,坚持几天便放弃的感受的话,可以加入我们群【902061117】,里面有各种软件测试资源和技术讨论。

接口测试小白的TestNG学习之路

当然还有面试,面试一般分为技术面和hr面,形式的话很少有群面,少部分企业可能会有一个交叉面,不过总的来说,技术面基本就是考察你的专业技术水平的,hr面的话主要是看这个人的综合素质以及家庭情况符不符合公司要求,一般来讲,技术的话只要通过了技术面hr面基本上是没有问题(也有少数企业hr面会刷很多人)
我们主要来说技术面,技术面的话主要是考察专业技术知识和水平,上面也是我整理好的精选面试题。
加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。事必有法,然后有成。
资源不错就给个推荐吧~