繁体   English   中英

JUnit测试失败

[英]JUnit test fail

我正在测试一个名为SetOfUsers的类,并且正在测试一种方法,如下所示:

   public void testAddUser() 
    {
        System.out.println("addUser");
        User aUser = new User("Bob","abc123","Manager");
        SetOfUsers instance = new SetOfUsers();
        instance.addUser(aUser);
        System.out.print(aUser);
        assertEquals("Bob,abc123,Manager", instance);
        // TODO review the generated test code and remove the default call to fail.
       // fail("The test case is a prototype.");
    }

但是,此测试无法显示我正在显示的输出消息

testAddUser Failed: expected: <Bob, abc123,Manager> but was: <[Staff Name:Bob]> 

“实例”是SetOfUsers类型的类。 然后,您将其与字符串进行比较。 您需要将其与示例对象进行比较,或者首先将“实例”转换为字符串。

assertEquals(“ Bob,abc123,Manager”,instance); 第一个参数包含String ,第二个参数包含SetOfUsers类的对象

assertEquals("Bob,abc123,Manager", instance);

哪里

"Bob,abc123,Manager" instanceof String

instance instanceof SetOfUsers

失败总是因为

String.class != SetOfUsers.class

尝试使用

assertEquals(“ Bob,abc123,Manager”,instance.toString());

您需要检查“ instance.toString()”的输出实际是什么,并在assertEquals方法中使用该输出进行比较。

assertEquals(,instance);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM