【问题标题】:Gregorian Calendar - Document based testing公历 - 基于文档的测试
【发布时间】:2009-12-22 09:59:03
【问题描述】:

在完成 JUnit 之后,我正在做一些基于文档的测试,表格中有以下项目

输入变量 - 预期结果 - 实际结果......通过或失败......

如果我将日期和时间传递给我的方法

"01AUG07" "14:40" 该方法应该返回一个公历日历

我如何检查它是否创建了正确的?

谢谢

不确定选择哪个是最好的,因为我不知道哪个是 - 我使用了 miks,它确实有效。

谢谢大家

【问题讨论】:

    标签: java testing acceptance


    【解决方案1】:

    用期望值创建一个GregorianCalendar 并比较它们。我会使用SimpleDateFormatsetTime 方法。

    GregorianCalendar expected = new GregorianCalendar();
    expected.setTime(new SimpleDateFormat("yyyy-MM-dd HH:mm").parse("2007-08-01 14:40"));
    
    SystemUnderTest subject = SystemUnderTest();
    
    assertEquals(expected, subject.method());
    

    【讨论】:

    • 啊,是的,对不起。我有一个静态方法,它只需将 ISO 8601 格式的日期作为字符串并将其作为日期返回。我将更新答案以将其删除。
    【解决方案2】:

    例如,您可以比较字符串表示形式。

    【讨论】:

      【解决方案3】:

      我会计算在我的测试输入中同时使用“文本”和它们的等效毫秒值,并将这些毫秒作为预期值与我通过Calendar#getTimeInMillis 获得的值进行比较。

      【讨论】:

        猜你喜欢
        • 2022-12-16
        • 1970-01-01
        • 1970-01-01
        • 2019-10-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-13
        • 1970-01-01
        相关资源
        最近更新 更多