【发布时间】:2017-02-21 19:52:54
【问题描述】:
我有以下测试代码示例:
;; UNIT TESTS
(define (check-equal?-with-output a b failure-msg)
(display "checking for equality:") (newline)
(display a) (newline)
(display b) (newline)
(check-equal? a b failure-msg))
(define (run-test-newlines a-test-suite)
(for-each
(λ (elem)
(display elem) (newline))
(run-test a-test-suite)))
(define exercise-test
(test-suite
"exercise test"
#:before (λ () (display "before") (newline))
#:after (λ () (display "after") (newline))
(test-case
"test case for reverse using fold right"
(check-equal?-with-output
(reverse-fold-right (list 1 2 3))
(list 3 2 1)
"the procedure reverse-fold-right does not work correctly"))
(test-case
"test case for reverse using fold left"
(check-equal?-with-output
(reverse-fold-left (list 1 2 3))
(list 3 2 1)
"the procedure reverse-fold-left does not work correctly"))
))
(run-test-newlines exercise-test)
但是,当测试套件运行时,它只打印成功还是失败,而不是像 documentation for check-eq? 中显示的失败消息。我怎样才能让它在失败的情况下也打印该消息?
【问题讨论】:
标签: unit-testing racket testcase test-suite