Developer portfolio · ProtoTest · Photography
Hi, I’m Matthias — a software, SDET and platform engineer from Belgium.
I like building the things that help other developers work: tools, test infrastructure and shared foundations. My background spans C++ engine projects, .NET development, test automation and platform engineering.
For every problem, there’s a solution. If there are none… create one.
ProtoTest brings the setup around an integration test into one place. APIs, databases, messaging, browsers and generated files share the same test context, lifecycle and cleanup.
ProtoTrace keeps the setup, requests, checks and teardown together, so a failure comes with the story of what happened.
Source · Get started · NuGet · Explore a sample trace
See ProtoTest in action — REST meets GraphQL
This example creates a project through REST and checks the collection through GraphQL. SignedInAs is application-specific setup; both clients use the same test context.
[ProtoTest]
[SignedInAs]
public async Task RestWritesAreVisibleThroughGraphQL()
{
using var created = await Proto.Context.Rest()
.Body(new CreateProjectRequest("atlas"))
.PostAsync("/api/v1/projects");
created.Should.HaveHttpStatus(HttpStatusCode.Created);
using var projects = await Proto.Context.GraphQL()
.Query("projects", new { first = 10 })
.ExpectAsync(new { totalCount = 1 });
projects.Should.HaveNoErrors();
}Some earlier projects — different platforms, the same interest in how things work underneath.
Also: Gameboy Tetris System — a Tetris-playing system that only uses the Game Boy’s virtual screen and buttons.
Explore the rest of my portfolio →
I also enjoy telling stories through photography. Visit my gallery →



