Michael Contento
Mutation Testing and Fuzzing in C#
#1about 3 minutes
Understanding the limitations of code coverage metrics
Different code coverage strategies like function, statement, and branch coverage can be misleading and turn testing into a numbers game.
#2about 4 minutes
Introducing mutation testing with a practical example
Mutation testing flips the testing paradigm by intentionally introducing small bugs (mutants) into your code to see if your existing tests can catch them.
#3about 3 minutes
Automating mutation testing in C# with Stryker
The Stryker framework for .NET automates the process of creating mutants, running tests against them, and generating an HTML report to identify weak spots in your test suite.
#4about 5 minutes
Exploring the different types of code mutations
Stryker can generate a wide variety of mutants by altering arithmetic operators, comparison logic, LINQ expressions, and even regular expressions to thoroughly challenge your tests.
#5about 4 minutes
Introducing the core concepts of fuzzing for quality
Fuzzing aims to find program crashes by feeding it mutated, semi-random input that is more effective than purely random data for discovering edge cases.
#6about 2 minutes
How coverage-guided fuzzing intelligently finds bugs
Coverage-guided fuzzing uses instrumentation to track which code paths are executed, prioritizing mutated inputs that explore new areas of the application.
#7about 3 minutes
Using AFL and SharpFuzz for fuzzing in C#
Combine the powerful AFL (American Fuzzy Lop) engine with the SharpFuzz library to create a test harness for fuzzing C# code, including whitelisting expected exceptions.
#8about 5 minutes
Analyzing fuzzing results and practical considerations
Learn to interpret the output from a fuzzing session to identify crash-causing inputs and consider the performance impact when integrating these tools into a CI/CD pipeline.
Related jobs
Jobs that call for the skills explored in this talk.
Eltemate
Amsterdam, Netherlands
Intermediate
Senior
TypeScript
Continuous Integration
+1
Matching moments
03:15 MIN
Using mutation testing and metrics to improve quality
Testing .NET applications a Tool box for every developer
02:48 MIN
Using mutation testing to measure test suite quality
Test-reduction - Doing more with less
02:53 MIN
Exploring the future of automated security analysis
Reviewing 3rd party library security easily using OpenSSF Scorecard
02:50 MIN
Why traditional testing methods fail to guarantee quality
How will artificial intelligence change the future of software testing?
03:31 MIN
Exploring dynamic analysis security testing (DAST)
Why Security-First Development Helps You Ship Better Software Faster
02:18 MIN
Comparing techniques for automated test case generation
How will artificial intelligence change the future of software testing?
05:54 MIN
Going beyond unit tests with modern application testing
What Developers Get Wrong About Application Quality
02:14 MIN
A maturity model for unit testing beyond code coverage
Are you still programming unit tests or already generating?
Featured Partners
Related Videos
Hacking C# from the inside - how to do anything in NET
Adam Furmanek
Modern C#: A Dive into the Community's Most Loved new Features.
Louëlla Creemers
Testing .NET applications a Tool box for every developer
Alexandre Borges
Test-reduction - Doing more with less
Ewald Verhoeven
Continuous testing - run automated tests for every change!
Christian Kühn
Programming secure C#/.NET Applications: Dos & Don'ts
Sebastian Leuer
Your Testing Strategy is broken - lets fix it!
Luise Freese
The 2025 State of JavaScript Testing
Daniel Afonso
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.


Visonum GmbH
Remote
Junior
Intermediate
React
Redux
TypeScript





Michael Page International (Deutschland) GmbH
Frankfurt am Main, Germany
Remote
XML
Java
JIRA
Python
+3

Faszination GmbH
Barcelona, Spain
Performance Testing

Michael Page International (Deutschland) GmbH
Mainz, Germany
GIT
Java
Scrum
Python
Appium
+5