如何在TestNG中忽略测试用例

这篇具有很好参考价值的文章主要介绍了如何在TestNG中忽略测试用例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在这篇文章中,我们将讨论如何在TestNG中忽略测试用例。TestNG帮助我们忽略使用@Test注释的情况,我们可以在不同的级别上忽略这些情况。

  • 首先,只忽略一个测试方法或测试用例。
  • 第二,忽略一个类及其子类中的所有情况。
  • 第三个是,忽略包及其子包中的所有情况。

下面我们就来逐一看一下以上几点。

仅忽略测试方法或测试用例

这可以通过在测试用例或方法上使用@Test(enabled = false)或@Ignore注释来实现。

import org.testng.Assert;
import org.testng.annotations.Ignore;
import org.testng.annotations.Test;
 
public class CodekruTest {
     
    @Test @Ignore
    public void test1() {
        System.out.println("Excecuting test1");
        Assert.assertTrue(true);
    }
     
    @Test
    public void test2() {
        System.out.println("Excecuting test2");
        Assert.assertTrue(true);
    }
     
    @Test(enabled = false)
    public void test3() {
        System.out.println("Excecuting test3");
        Assert.assertTrue(true);
    }
     
}

输出:

Excecuting test2

PASSED: test2

===============================================

Default test Tests run: 1, Failures: 0, Skips: 0 ===============================================

因此,这两个(test1和test3)都被忽略了,只有test2方法被运行和执行。

忽略类及其子类中的所有大小写

这也可以通过使用@Ignore注释来实现。因此,如果我们在一个类上放置@Ignore注释,那么该类及其子类中的case将被忽略。让我们举个例子。

注意:@Ignore注释的优先级高于单个@Test方法注释。当@Ignore放置在类上时,该类中的所有测试都将被禁用,即使我们将@Test(enabled = true)放在测试用例上。

package Test;
 
import org.testng.Assert;
import org.testng.annotations.Ignore;
import org.testng.annotations.Test;
 
@Ignore
public class CodekruTest {
 
    @Test
    public void test1() {
        System.out.println("Excecuting test1");
        Assert.assertTrue(true);
    }
 
    @Test
    public void test2() {
        System.out.println("Excecuting test2");
        Assert.assertTrue(true);
    }
 
    @Test(enabled = true)
    public void test3() {
        System.out.println("Excecuting test3");
        Assert.assertTrue(true);
    }
 
}

 输出:

===============================================

Default test Tests run: 0, Failures: 0, Skips: 0 =============================================== ===============================================

Default suite Total tests run: 0, Failures: 0, Skips: 0 ===============================================

[TestNG] No tests found. Nothing was run

 所以,我们可以看到,没有一个案件被执行。现在让我们为上面的类(CodekruTest)创建一个子类(CodekruTestSubclass),尝试执行子类测试用例,看看会发生什么。

import org.testng.Assert;
import org.testng.annotations.Ignore;
import org.testng.annotations.Test;
 
class CodekruTestSubclass extends CodekruTest{
      
     
    @Test
    public void test1() {
        System.out.println("Excecuting test1 of subclass");
        Assert.assertTrue(true);
    }
      
    @Test
    public void test2() {
        System.out.println("Excecuting test2 of subclass");
        Assert.assertTrue(true);
    }
      
}
 
@Ignore
public class CodekruTest {
  
    @Test
    public void test1() {
        System.out.println("Excecuting test1");
        Assert.assertTrue(true);
    }
  
    @Test
    public void test2() {
        System.out.println("Excecuting test2");
        Assert.assertTrue(true);
    }
  
    @Test(enabled = true)
    public void test3() {
        System.out.println("Excecuting test3");
        Assert.assertTrue(true);
    }
  
}

输出:

===============================================

Default test Tests run: 0, Failures: 0, Skips: 0 =============================================== ===============================================

Default suite Total tests run: 0, Failures: 0, Skips: 0 ===============================================

[TestNG] No tests found. Nothing was run

这里,子类的case没有执行,因为我们在父类上使用了@Ignore注释。

忽略包及其子包中的所有大小写

我们也可以忽略包及其子包中的测试用例。但是,我们不能只是将@Ignore注释放在包的顶部,如下面的代码所示。相反,我们必须创建另一个package-info.java文件并添加包级注释。

@Ignore // this is wrong and is throwing an error
package Test;
 
import org.testng.Assert;
import org.testng.annotations.Test;
 
public class CodekruTest {
 
    @Test
    public void test1() {
        System.out.println("Excecuting test1");
        Assert.assertTrue(true);
    }
}

如何创建www.example.com文件?因为eclipse不允许你创建一个package—info类文件。

  • 选择New -> Package。
  • 现在,勾选复选框package-info.java

如何在TestNG中忽略测试用例,TestNG,测试用例

这将在上述包中创建一个package-info.java文件。所以,现在在这个文件中,我们可以在Test包上写@Ignore,如下所示。

@org.testng.annotations.Ignore
package Test;

因此,这个包及其子包中的所有情况现在都将被忽略。文章来源地址https://www.toymoban.com/news/detail-859755.html

到了这里,关于如何在TestNG中忽略测试用例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何编写测试用例?

    带着问题学习是最高效的学习方法。 因此,在介绍如何编写测试用例之前,先看一个软件系统登录功能的测试(如下截图所示): 要做这个登录页面的测试用例,你会从哪些方面思考进行测试呢? 看似简单的页面功能能够设计多少条测试用例完成较全面的测试呢?10条以内

    2024年01月25日
    浏览(49)
  • 软件测试技术之如何编写测试用例

    1、刚刚从事软件测试职业,如何快速掌握编写测试用例的方法?该怎样编写测试用例呢? 专家分析: 1、根据需求文档,完全按照需求文档框架/功能描述,根据自己的理解整理为用例。简单来说,就是将需求文档描述的内容,重新按照用例的格式编辑一次,把能想到的各种

    2023年04月12日
    浏览(45)
  • 测试用例要如何写

    测试点不等于测试用例,这是我们首先需要认识到的。 问题1:这些测试点在内容上有重复,存在冗余。 问题2:一些测试点的测试输入不明确,不知道测试时要测试哪些。 问题3:总是在搭相似的环境,做类似的操作。 问题4:测试点描述得太粗,不知道是不是测对了。 测试

    2023年04月08日
    浏览(48)
  • 如何写好测试用例

    测试出发点 :要证明所测的程序是错误的。 用例设计目标 :尽可能的发现bug。 用例设计内容 :待测试的功能点、测试环境、测试数据、执行操作、预期结果。 测试环境的设计 :设计真实而危险的环境,不忽视偶发环境。 用例的设计 :包含正向的预期结果和有意导致失败

    2024年02月13日
    浏览(38)
  • 什么是测试用例?如何设计?

    在学习或者实际的测试工作中经常都会提到“测试用例”这个词,没错,测试用例是测试工作的核心,不管要做的是什么样的测试,在真正动手执行测试之前,我们都需要先根据软件需求来设计测试用例,之后再依据设计好的测试用例,展开测试工作。那么问题来了,什么是

    2024年02月16日
    浏览(43)
  • 想必大家都为测试用例头疼过,那么如何才能设计出一个“好的”测试用例

    目录 前言: “好的”测试用例具备的特征 1.等价类划分方法 2.边界值分析方法 “好的”测试用例的设计方法 测试用例设计的其他经验 作为测试人员,需要注意以下几点: 前言: 设

    2024年02月08日
    浏览(47)
  • 软件测试中如何编写单元测试用例(白盒测试)

    目录 前言: 一、 单元测试的概念 二、开始测试前的准备 三、开始测试 四、完成测试 前言: 单元测试是软件测试中一种重要的测试方法,它是在代码级别进行测试,通过对每个模块或功能进行独立测试来保障代码的正确性和可靠性。单元测试可以有效地避免产生隐藏的代

    2024年02月09日
    浏览(51)
  • 分析:如何多线程运行测试用例

    这是时常被问到的问题,尤其是UI自动化的运行,过程非常耗时,所以,所以多线程不失为一种首先想到的解决方案。 多线程是针对的测试用例,所以和selenium没有直接关系,我们要关心的是单元测试框架。 首先,应该说明的是unittest本身是不支持多线程的。当然,如果你学

    2024年02月09日
    浏览(41)
  • 如何评估测试用例的质量

    评估测试用例的质量是确保测试有效性和准确性的关键步骤。以下是一些评估测试用例质量的方法: 1.完整性 评估测试用例是否涵盖了需求和功能的所有方面。检查用例是否覆盖了各种场景、边界值和异常情况,以确保测试的全面性和完整性。 2.可读性 评估测试用例的可读

    2024年02月12日
    浏览(44)
  • 如何高效进行测试用例评审

    为了减少测试人员执行阶段做无效工作,执行无效case,提交无效缺陷(可以友情提醒研发同学,讲到自己负责的相关模块时,注意下是否存在异议点) 为了避免三方(产品、研发、测试)需求理解不一致; 为了每个测试人员的质量标准与项目要求标准达成一致。 需求评审结

    2024年02月10日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包