JUnit测试失败

时间:2014-01-30 17:19:47

标签: java junit

我正在测试一个名为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]> 

5 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

assertEquals(“Bob,abc123,Manager”,实例); 一个参数包含String,而第二个参数包含类SetOfUsers

的对象

答案 2 :(得分:0)

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

其中

"Bob,abc123,Manager" instanceof String

instance instanceof SetOfUsers

总是因为

而失败
String.class != SetOfUsers.class

答案 3 :(得分:0)

尝试使用

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

答案 4 :(得分:0)

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

assertEquals(,instance);