Go to content

Lincheck: Testing concurrency on the JVM (Maria SOKOLOVA)

đŸ”„ Pour rester informĂ© sur l'actualitĂ© de Devoxx France, suivez nous sur linkedIn : https://www.linkedin.com/in/devoxxfrance/, twitter : https://twitter.com/DevoxxFR ou consultez notre site web https://www.devoxx.fr/ 📕 Writing a good and robust concurrent test may be as challenging as implementing the algorithm, if not more so. Straightforward stress tests likely do not catch all bugs and flack. We need a way to write concurrent tests in a handy, declarative way, keeping in mind "what to test," not "how." At JetBrains, we've developed Lincheck, a framework that provides a simple and declarative way to write concurrent tests: users just need to list all the data structure operations and Lincheck verifies whether these operations are thread-safe or not. During the workshop, the work steps of the tool will be explained, and without diving deep into the internals of implementation, I will provide sample projects corresponding to various concurrent problems and guide you through solving them using Lincheck. Those projects will be in Kotlin, but as Kotlin is very concise and easy-to-follow there will be no problem to transfer this usage experience to any other JVM-based language (e.g. Java, Scala..). Additional info: Lincheck on Github: https://github.com/Kotlin/kotlinx-lincheck/ Lincheck guide: https://kotlinlang.org/docs/lincheck-guide.html

April 12, 2023