Overview
Explore concurrent code testing strategies in this comprehensive conference talk from code::dive 2020. Gain insights into the unique challenges of testing parallel code, including race conditions and non-deterministic program flow. Learn about tools for major platforms that support concurrent development. Dive deep into a case study on extending existing code with practical guidance for writing and strengthening tests. Benefit from the speaker's experience developing the open-source stlab.concurrency library and working on commercial products. Cover topics such as test design, analysis, decomposition, problem identification, test strategies, and performance measurement. Equip yourself with valuable knowledge to improve your concurrent code testing practices and ensure more robust parallel applications.
Syllabus
Intro
Software Development
Test Design Test Analysis: What kind of tests on which level?
Decomposition Example Image compression
Problems in Concurrent Code
Problems for Test
Test Detail Strategies
Testing Types
Test Setup
Test Execution Strategies
Tools Overview Correctness
Tools Overview Performance
Case Study: Prioritised Thread-Pool
Thread-Pool Tests
Test Case: High Tasks Before Low Tasks
Measurements
Reference
Taught by
code::dive conference