Faster mutation testing with Stryker

Mutation testing is a way to measure the effectiveness of unit tests. Stryker Mutator, an open-source mutation testing framework by Info Support is allready fast. Find areas where improvements can still be made to speed the mutation testing up.

Required interest(s)

  • Software Architecture
  • Software Development Methodologies
  • Open Source

What do you get

  • A challenging assignment within a practical environment
  • € 1000 compensation, € 500 + lease car or € 600 + living space
  • Professional guidance
  • Courses aimed at your graduation period
  • Support from our academic Research center at your disposal
  • Two vacation days per month

What you will do

  • 65% Research

A mutation testing framework will measure the effectiveness of unit tests by inserting mutants (bugs) inside your production code and running the (unit) tests. If the tests pass for a given mutant, then there might be a missing test case. The mutant ‘survived’ in that case. If at least one of the tests fails, then the mutant is ‘killed’. The percentage of killed mutants is referred to as the ‘mutation score’ and is a metric for test effectiveness.

We at Info Support are maintaining Stryker Mutator, an open-source mutation testing framework. It consists of 3 flavors: Stryker.NET (C#), Stryker4s (Scala), and Stryker (for JavaScript and friends). For more info, see https://stryker-mutator.io.

There are many ways of introducing mutants into the source code. Mutating sources statement by statement is a logical choice, but not good for performance as the codebase needs to be recompiled or reloaded after every mutation. Mutation switching can provide a solution to speed up the process. With mutation switching all mutants are compiled into the codebase at once and switched on one-by-one at runtime. In the case of Stryker.NET and Styker4s this has resulted in a significant performance boost.

We would like to increase the performance of Stryker even further. Research will focus on finding areas where improvements can be made and/or developing methodologies for speeding up mutation testing.

About Info Support Research Center

We anticipate on upcoming and future challenges and ensures our engineers develop cutting-edge solutions based on the latest scientific insights. Our research community proactively tackles emerging technologies. We do this in cooperation with renowned scientists, making sure that research teams are positioned and embedded throughout our organisation and our community, so that their insights are directly applied to our business. We truly believe in sharing knowledge, so we want to do this without any restrictions.

Sign up for this assignment

  • Geaccepteerde bestandstypen: docx, doc, txt, pdf.

Application procedure

1

Introductory meeting

Discuss (study) career, interests and ambitions and introduction Info Support.

2

Review

Assessment of professional knowledge and personality (capacity, competences and motives).

3

Selection interview

Deepen professional knowledge and personality.

4

The signing of a contract

Contract offer and invitation for drawing moments.

Other Mastertheses

graduation assignment

Integrating the privacy-by-design system IRMA in CryptPad

IRMA (I Reveal My Attributes) is a system to protect your privacy. It does this by only revealing so called 'attributes' of a person. Can CryptPad be improved by integrating IRMA by comparing approach…

graduation assignment

Faster mutation testing with Stryker

Mutation testing is a way to measure the effectiveness of unit tests. Stryker Mutator, an open-source mutation testing framework by Info Support is allready fast. Find areas where improvements can sti…

graduation assignment

Detecting forged documents with neural networks

Detect forged documents using a neural network. That is what this assignment is all about. One of our customers, a large credit provider, now checks all applications manually and is looking for a solu…

graduation assignment

What-if analysis on intent detection models and datasets

Research a method to visualize the impact of changes in the dataset for an intent detection solution impacts the performance of the trained intent detection model, without training the model.