Should I unit test concurrency?

2019-07-17 20:34发布

I have a few methods that are impacted by concurrency. Specifically "Rush" (a.k.a Race) conditions. Should I unit test them or integrate/black-box test them?

I think that setting up a unit test might be a rather difficult task, but also is integration test...

2条回答
孤傲高冷的网名
2楼-- · 2019-07-17 21:14

i've found this article and its quite instructive about my question: https://testing.googleblog.com/2014/02/minimizing-unreproducible-bugs.html

查看更多
可以哭但决不认输i
3楼-- · 2019-07-17 21:37

Unit tests must be deterministic, so concurrency doesn't belong there. (I keep my unit tests completely synchronous.)

Go for integration tests to sniff out race conditions — but be prepared for false positives. In other words, the tests passing is no proof that you don't have a race condition. But a failure will alert you to something you need to fix.

查看更多
登录 后发表回答