这适用于Junit,但它不应该..有人告诉我如何纠正它以及它为什么有效?

时间:2013-05-31 15:54:48

标签: java junit

测试类:

public class TestClass extends TestCase
{
    private static final String TEXT_MESSAGE_VALUE = "<test>Me</test>";
    private static final String JMS_MESSAGE_ID = "This is the correlation id.";
    private Serializable xmlSerializable;


    @Test
    public void testCreateMessage() throws Exception
    {
        Session mockSession = createMock(Session.class);
        TextMessage mockTextMessage = createMock(TextMessage.class);
        expect(mockSession.createTextMessage(TEXT_MESSAGE_VALUE)).andReturn(mockTextMessage);
        mockTextMessage.setJMSCorrelationID(JMS_MESSAGE_ID);
        replay(mockSession, mockTextMessage);
        test.createMessage(mockSession);
    }
}

2 个答案:

答案 0 :(得分:0)

在不了解有关课程的任何内容的情况下,我们无法知道serializedMsg是否合理是否合理。如果该类没有将其初始化为构造的一部分,并且没有正在运行的进程与该类进行交互,我希望它保持为空。

我所涉及的JMS意味着还有其他因素在起作用,因此,如果不了解测试运行的背景,很难肯定地说。

不相关,但IMO和IllegalArgumentException在这里没有任何意义,因为它没有被抛出非法论点。也许是IllegalStateException

答案 1 :(得分:0)

使用dom4j我已经像过去那样比较两个domElement &GT;

public static boolean compare(Element element1, Element element2){
        if(element1 == null || element2 == null){
            return false;
        }else{
            NodeComparator nc = new NodeComparator();
            return (nc.compare(element1, element2) == 0);
        }
    }

我认为如果您使用的是DOM4j,那么它将适合您,