Java org.junit.Assert 线程安全吗?
Is Java org.junit.Assert thread safe?
我想验证assert和assertEquals是否线程安全。我的理解是它不是,因为我相信我 运行 进入竞争条件,将它用于我的 JUnit 测试。当然,我还有其他方法可以验证结果。我使用这个功能只是出于方便。我查看了 http://junit.sourceforge.net/javadoc/org/junit/Assert.html 作为参考,但没有提及任何内部同步或锁定。谢谢
对于任何合理的实现,以及我随机搜索的那个,assertTrue
和 assertEquals
本身是 线程不可知的 。线程不可知论是世界的普遍状态。
因为值在变化,所以对于 Object
重载,expected 对象上的 equals
将需要是线程安全的,并且必须是来自 toString
的值可能不同。
失败消息通过 String
传递给简单的 AssertionFailedError
,尽管 Throwable
因 不安全的发布 Throwable
并不安全 AssertionFailedError
=27=](可变性不大)。
我想验证assert和assertEquals是否线程安全。我的理解是它不是,因为我相信我 运行 进入竞争条件,将它用于我的 JUnit 测试。当然,我还有其他方法可以验证结果。我使用这个功能只是出于方便。我查看了 http://junit.sourceforge.net/javadoc/org/junit/Assert.html 作为参考,但没有提及任何内部同步或锁定。谢谢
对于任何合理的实现,以及我随机搜索的那个,assertTrue
和 assertEquals
本身是 线程不可知的 。线程不可知论是世界的普遍状态。
因为值在变化,所以对于 Object
重载,expected 对象上的 equals
将需要是线程安全的,并且必须是来自 toString
的值可能不同。
失败消息通过 String
传递给简单的 AssertionFailedError
,尽管 Throwable
因 不安全的发布 Throwable
并不安全 AssertionFailedError
=27=](可变性不大)。