In this episode of The GeekNarrator podcast, host Kaivalya Apte dives into the complexities of testing distributed systems with Will Wilson from Antithesis. If you’re grappling with the challenges of testing databases, micro-services, and distributed systems, this episode is a must-watch. Will Wilson demystifies the concept of deterministic simulation testing, shares insights about its advantages over conventional testing methods, and explains how Antithesis helps developers ensure software reliability. Learn about the various strategies and techniques used to identify and resolve bugs, and explore how deterministic simulation can transform your software testing approach. Perfect for developers, engineers, and tech enthusiasts who are keen on improving their testing methodologies for complex systems.
Chapters:
00:00 Introduction
03:04 Limitations of Conventional Testing Methods
04:09 Understanding Deterministic Simulation Testing
08:07 Implementing Deterministic Simulation Testing
14:30 Real-World Example: Chat Application
19:56 Antithesis Hypervisor and Determinism
27:06 Defining Properties and Assertions
38:34 Optimizing Snapshot Efficiency
40:44 Understanding Isolation in CI/CD Pipelines
43:39 Strategies for Effective Bug Detection
47:59 Exploring Program State Trees
51:17 Heuristics and Fuzzing Techniques
01:01:56 Mocking Third-Party APIs
01:05:54 Handling Long-Running Tests
01:09:06 Classifying and Prioritizing Bugs
01:15:35 Future Plans and Closing Remarks
References:
Hypervisor: https://antithesis.com/blog/deterministic_hypervisor/
AFL : https://github.com/google/AFL
Antithesis website: https://antithesis.com/
Follow me on Linkedin and Twitter: https://www.linkedin.com/in/kaivalyaapte/ and https://twitter.com/thegeeknarrator
If you like this episode, please hit the like button and share it with your network.
Also please subscribe if you haven't yet.
Database internals series: https://youtu.be/yV_Zp0Mi3xs
Popular playlists:
Realtime streaming systems: https://www.youtube.com/playlist?list=PLL7QpTxsA4se-mAKKoVOs3VcaP71X_LA-
Software Engineering: https://www.youtube.com/playlist?list=PLL7QpTxsA4sf6By03bot5BhKoMgxDUU17
Distributed systems and databases: https://www.youtube.com/playlist?list=PLL7QpTxsA4sfLDUnjBJXJGFhhz94jDd_d
Modern databases: https://www.youtube.com/playlist?list=PLL7QpTxsA4scSeZAsCUXijtnfW5ARlrsN
Stay Curios! Keep Learning!
#distributedsystems #databases #microservices #antithesis #fuzzer #testing