-
Info Support
View all jobs
Afstudeeropdracht in DevOps Methods & Tools: Better mutation testing for Java
Netherlands
· Full-time
·
Internship
Onderzoek de implementatie van Mutant Schemata in Java, een alternatief voor de huidige standaard, PITest. Ondanks de kracht van bytecode mutatie, kent het nadelen zoals onnauwkeurigheid, onbereikbare mutanten en performance overhead. Jouw taak is het analyseren van deze techniek, de voor- en nadelen ten opzichte van PITest te evalueren en een prototype te ontwikkelen. Dit werk kan bijdragen aan verbeteringen in mutation testing en de basis vormen voor toekomstige open-source ontwikkelingen.
Benodigde interesse(s)
Bij mutation testing voert een framework kleine wijzigingen door in je productiecode. Zo kan bijvoorbeeld een > teken veranderen in een >= teken, wat resulteert in een mutant. Vervolgens draait het framework je tests. Faalt er ten minste één test, dan is de mutant ‘killed’. Slagen alle tests, dan heeft de mutant ‘survived’. Het percentage ‘killed’ mutants wordt de mutation score genoemd. Hoe hoger deze score, hoe effectiever je unit tests zijn.
Pitest is het mutation testing framework voor Java, dat werkt op basis van bytecode mutatie. De code wordt eerst naar bytecode gecompileerd, waarna mutanten één voor één worden ingevoerd in de bytecode en getest.
Stryker is een mutation test framework voor .NET, JavaScript, Scala en in de toekomst ook Kotlin. Het wordt ontwikkeld door Info Support als open source tool (met inmiddels meer dan 10 milioen downloads). Stryker werkt altijd met mutant schemata. Bij mutant schemata worden de mutanten allemaal tegelijk in de broncode gezet, maar er kan er maar één tegelijk actief zijn.
Dit is een voorbeeld van mutant schemata bij JavaScript
:Wanneer je mutation testing wilt toepassen in Java-projecten, is PITest momenteel de go-to keuze. Dit betekent dat er gebruik wordt gemaakt van bytecode mutatie, wat enkele nadelen met zich meebrengt
tOnderzoek hoe Mutant Schemata in Java geïmplementeerd kan worden en welke voordelen en nadelen dit heeft t.o.v. PITest. Ontwikkel vervolgens een prototype om je bevindingen te bewijzen
.Wanneer het prototype succesvol is kunnen we deze in open source verder ontwikkelen onder de noemer Stryker mutator
.Wat biedt Info Support jou tijdens je afstudeerperiode
?Uiteraard bieden we je een uitstekend pakket aan afstudeervoorwaarden met verschillende keuzemogelijkheden. Denk hierbij aan:
tInfo Support is specialist in maatwerksoftware, data/AI solutions, beheer en trainingen en actief in de sectoren Finance, Industry, Agriculture, Food & Retail, Mobility & Public en Healthcare. Wij bieden solide en innovatieve oplossingen voor complexe en bedrijfkritische softwarevraagstukken. Onze hoofdkantoren zijn gevestigd in Veenendaal (NL) en Mechelen (BE). Op dit moment zijn er circa 500 medewerkers bij Info Support in dienst
.De werkwijze van Info Support kenmerkt zich door een aantal kernwaarden: soliditeit, integriteit, vakmanschap en passie. Deze kernwaarden zijn verweven in ons werk en de manier waarop we met elkaar omgaan
.Om te zorgen dat alle medewerkers altijd op de hoogte kunnen zijn van de nieuwste ontwikkelingen beschikt Info Support over een inhouse kenniscentrum waar graag wordt voldaan aan de honger naar meer of andere kennis en vaardigheden
.B2-taalvaardigheid in het Nederlands is vereist.
Benodigde interesse(s)
- Java
- Automatisch testen
- Open source ontwikkeling
- Een uitdagende afstudeeropdracht
- Afstudeervergoeding: € 1000 bruto of € 500 bruto + leaseauto of € 600 bruto + woonruimte
- Professionele begeleiding
- Trainingen gericht op jouw afstudeertraject
- Sparren met andere afstudeerders en collega’s
- Twee vakantiedagen per maand
- 35% Afstudeeronderzoek
- 40% Analyseren, ontwerpen, realiseren
- 25% Documentatie
Bij mutation testing voert een framework kleine wijzigingen door in je productiecode. Zo kan bijvoorbeeld een > teken veranderen in een >= teken, wat resulteert in een mutant. Vervolgens draait het framework je tests. Faalt er ten minste één test, dan is de mutant ‘killed’. Slagen alle tests, dan heeft de mutant ‘survived’. Het percentage ‘killed’ mutants wordt de mutation score genoemd. Hoe hoger deze score, hoe effectiever je unit tests zijn.
Pitest is het mutation testing framework voor Java, dat werkt op basis van bytecode mutatie. De code wordt eerst naar bytecode gecompileerd, waarna mutanten één voor één worden ingevoerd in de bytecode en getest.
Stryker is een mutation test framework voor .NET, JavaScript, Scala en in de toekomst ook Kotlin. Het wordt ontwikkeld door Info Support als open source tool (met inmiddels meer dan 10 milioen downloads). Stryker werkt altijd met mutant schemata. Bij mutant schemata worden de mutanten allemaal tegelijk in de broncode gezet, maar er kan er maar één tegelijk actief zijn.
Dit is een voorbeeld van mutant schemata bij JavaScript
:Wanneer je mutation testing wilt toepassen in Java-projecten, is PITest momenteel de go-to keuze. Dit betekent dat er gebruik wordt gemaakt van bytecode mutatie, wat enkele nadelen met zich meebrengt
- :Accuratie: Het is niet mogelijk om de exacte locatie van een mutant in de broncode aan te duide
- nFalse positives: Er worden mutanten gegenereerd die in Java niet gecreëerd kunnen worde
- nPerformance: Voor het testen van een mutant moet deze eerst aan de bytecode worden toegevoegd, wat aanzienlijke overhead veroorzaak
tOnderzoek hoe Mutant Schemata in Java geïmplementeerd kan worden en welke voordelen en nadelen dit heeft t.o.v. PITest. Ontwikkel vervolgens een prototype om je bevindingen te bewijzen
.Wanneer het prototype succesvol is kunnen we deze in open source verder ontwikkelen onder de noemer Stryker mutator
.Wat biedt Info Support jou tijdens je afstudeerperiode
?Uiteraard bieden we je een uitstekend pakket aan afstudeervoorwaarden met verschillende keuzemogelijkheden. Denk hierbij aan:
- Laptop, alle benodigde tools en ontwikkelomgevingen om je opdracht succesvol uit te kunnen voere
- nEen afstudeervergoeding waarbij je de keus hebt uit
- :€ 1000,- bruto per maan
- d€ 500,- bruto per maand + leaseauto met tankpa
- s€ 600,- bruto per maand + woonruimte in Veenendaa
- lTijdens je afstudeerstage word je opgenomen in een van onze business units. Zo krijg je direct een goed beeld van de ontwikkelingen binnen onze projecten
- :Een uitdagende afstudeeropdracht bij een solide, groeiend en financieel gezond bedrij
- fProfessionele en ervaren begeleiding, hybride werke
- nEen afstudeerprogramma met onder meer trainingen, kennisavonden, projectbezoek, activiteiten en team-, unit- en bedrijfsuitje
- sExperimenteren met nieuwe producten en releases die in de pre-releasefase zitte
- nSparren met andere afstudeerders en collegiale en gepassioneerde IT-collega’
- sUitzicht op het IT Top Traineeship mét een vast dienstverband
tInfo Support is specialist in maatwerksoftware, data/AI solutions, beheer en trainingen en actief in de sectoren Finance, Industry, Agriculture, Food & Retail, Mobility & Public en Healthcare. Wij bieden solide en innovatieve oplossingen voor complexe en bedrijfkritische softwarevraagstukken. Onze hoofdkantoren zijn gevestigd in Veenendaal (NL) en Mechelen (BE). Op dit moment zijn er circa 500 medewerkers bij Info Support in dienst
.De werkwijze van Info Support kenmerkt zich door een aantal kernwaarden: soliditeit, integriteit, vakmanschap en passie. Deze kernwaarden zijn verweven in ons werk en de manier waarop we met elkaar omgaan
.Om te zorgen dat alle medewerkers altijd op de hoogte kunnen zijn van de nieuwste ontwikkelingen beschikt Info Support over een inhouse kenniscentrum waar graag wordt voldaan aan de honger naar meer of andere kennis en vaardigheden
.B2-taalvaardigheid in het Nederlands is vereist.
Key Skills
Ranked by relevance
java
javascript
kotlin
scala
Related Jobs
3 roles aligned with this opportunity
View Job Details
Related
PHP Backend - React - DevOps con inglés alto (100% remoto)
2026-06-12
Full-time
Not Applicable
Spain
IT Services
Education
View Job Details
Related
Backend PHP / React / DevOps - inglés alto (100% remoto)
2026-06-12
Full-time
Not Applicable
Spain
IT Services
Education
View Job Details
Related
Stage: Game Development Internship
2026-06-17
Internship
Internship
Netherlands
Software Development
Training
Login to Apply
- Posted
- Feb 11, 2025
- Type
- Full-time
- Level
- Internship
- Location
- Veenendaal
- Company
- Info Support
Industries
IT Services
IT Consulting
Categories
Education
Training
Related Jobs
3 roles aligned with this opportunity
View Job Details
Related
PHP Backend - React - DevOps con inglés alto (100% remoto)
2026-06-12
Full-time
Not Applicable
Spain
IT Services
Education
View Job Details
Related
Backend PHP / React / DevOps - inglés alto (100% remoto)
2026-06-12
Full-time
Not Applicable
Spain
IT Services
Education
View Job Details
Related
Stage: Game Development Internship
2026-06-17
Internship
Internship
Netherlands
Software Development
Training