当前位置: 首页 > 知识库问答 >
问题:

测试期间出现异常。之间的差异。class和getClass()[关闭]

齐思淼
2023-03-14

想改进这个问题吗 通过编辑此帖子,添加详细信息并澄清问题。

我在“联系人”类中有一个静态类“电子邮件”。在测试中,我有一个例外:

org.opentest4j.AssertionFailedError: expected: not equal but was: <class com.epam.rd.contactbook.Contact$Email>

    at org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:39)
    at org.junit.jupiter.api.AssertNotEquals.failEqual(AssertNotEquals.java:276)
    at org.junit.jupiter.api.AssertNotEquals.assertNotEquals(AssertNotEquals.java:265)
    at org.junit.jupiter.api.AssertNotEquals.assertNotEquals(AssertNotEquals.java:260)
    at org.junit.jupiter.api.Assertions.assertNotEquals(Assertions.java:2815)

这是测试中的代码:

    @Test
    void testEpamEmailIsSubClassOfEmail() {
        Contact contact = new Contact("William the Conqueror");

        Contact.Email email1 = contact.addEpamEmail("william", "legitimate");
        Contact.Email email2 = contact.addEmail("william", "normandy.fr");

        System.out.println(Contact.Email.class);
        System.out.println( email1.getClass());

        assertNotEquals(Contact.Email.class, email1.getClass());// This line throws an error
        assertTrue(email1 instanceof Contact.Email);

        assertEquals(Contact.Email.class, email2.getClass());

        assertEquals(contact.getInfo().length, 3);

    }

电子邮件1和联系人。电子邮件是电子邮件类的对象,不是吗?

共有1个答案

长孙章横
2023-03-14

哈瓦找到了原因,为什么这两个物体必须不同。在任务中,函数addEpamEmail必须有一个nim类。

 类似资料:
  • 我有一个静态类“电子邮件”内类“联系人”。在测试中,我遇到了一个例外: 以下是测试中的代码: 电子邮件1和联系人。电子邮件是电子邮件类的对象,不是吗?

  • 问题内容: 很快就有两个相等运算符:double equals( )和Triple equals( ),两者之间有什么区别? 问题答案: 简而言之: 操作员检查其实例值是否相等, 操作员检查引用是否指向同一实例, 长答案: 类是引用类型,可能有多个常量和变量在幕后引用类的同一单个实例。类引用保留在运行时堆栈(RTS)中,其实例保留在内存的堆区域中。当您控制平等时, 这意味着它们的实例是否彼此相等。

  • 度量可以度量一些有用的领域,但是有什么区别和联系呢?

  • 问题内容: 今天,我的一个好朋友问我最新的Go语言和Cython之间的主要区别是什么,后者是Python的一组C扩展。我对Python的了解不多,有人可以告诉我为什么Go比Cython更好/更差吗? 问题答案: Cython并不是传统意义上的语言。它是构建Python扩展程序的预处理器,该扩展程序采用类似Python的语法(实际上,他们力求完全兼容Python)并生成C代码(使用Python C

  • 本文向大家介绍白盒测试和灰盒测试之间的差异。,包括了白盒测试和灰盒测试之间的差异。的使用技巧和注意事项,需要的朋友参考一下 众所周知,测试是任何应用程序或软件交付过程中最重要的阶段,因为测试不仅可以验证应用程序的质量,还可以为开发人员提供改进其产品的机会。 每个应用程序都以某种高级语言或低级语言进行开发,这意味着已经为其开发编写了一些代码,因此,根据测试人员对应用程序的了解,可以对测试进行分类,即

  • 本文向大家介绍接口和集成测试之间的差异。,包括了接口和集成测试之间的差异。的使用技巧和注意事项,需要的朋友参考一下 众所周知,测试是任何应用程序或软件交付过程中最重要的阶段,因为测试不仅可以验证应用程序的质量,还可以为开发人员提供改进其产品的机会。 每个应用程序都是通过将其组成部分的不同组成部分进行开发来开发的。现在我们知道,集成测试是在集成环境中测试所有组件的测试,即测试是对所有组件进行的,它们