Jatkuva integraatio, jatkuva toimitus ja yksikkötestaus esimerkillä
Hupanen, Veikka (2023)
Hupanen, Veikka
2023
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2023052313279
https://urn.fi/URN:NBN:fi:amk-2023052313279
Tiivistelmä
Tässä opinnäytetyössä tarkastellaan mitä jatkuva integraatio (continuous integration) ja jatkuva toimitus (continuous delivery) tarkoittavat, miten ne toimivat käytännössä ja miten yksikkötestaus saadaan niihin integroitua. Työn osana ja esimerkkinä toimii selainpelin kehitysprojekti, jossa peli kehitetään Unity-pelimoottorilla ja julkaistaan WebGL-ohjelmointirajapinnalla pelattavaksi selaimeen.
Työn tarkoituksena on havainnollistaa jatkuvan integraation ja toimituksen tärkeyttä ja hyötyjä sovelluskehityksessä sekä esitellä keskeisiä työkaluja, joita käytetään jatkuvan integraation ja toimituksen toteuttamisessa. Tärkeitä työkaluja, joita hyödynnetään esimerkkiprojektin kehityksessä ja ylläpitämisessä ovat Git-versionhallintajärjestelmä ja GitHub-verkkoalusta. Lisäksi käsitellään yksikkötestausta osana jatkuvaa integraatiota ja toimitusta sekä niiden toteuttamista Unity-pelimoottorissa C#-ohjelmointikielellä.
Tuloksena opinnäytetyöstä saadaan käsitys, mitä jatkuva integraatio, jatkuva toimitus ja yksikkötestaus ovat ja miksi niitä käytetään. Työstä saa hyvän pohjan laajasti käytetyistä ympäristöistä ja työkaluista edellä mainittujen menetelmien toteutuksessa. Esimerkkipelin kehityksen vaiheita seuratessa saa käytännön esimerkin, miten menetelmiä ja työkaluja käytetään yksinkertaisessa projektissa.
Työn tarkoituksena on havainnollistaa jatkuvan integraation ja toimituksen tärkeyttä ja hyötyjä sovelluskehityksessä sekä esitellä keskeisiä työkaluja, joita käytetään jatkuvan integraation ja toimituksen toteuttamisessa. Tärkeitä työkaluja, joita hyödynnetään esimerkkiprojektin kehityksessä ja ylläpitämisessä ovat Git-versionhallintajärjestelmä ja GitHub-verkkoalusta. Lisäksi käsitellään yksikkötestausta osana jatkuvaa integraatiota ja toimitusta sekä niiden toteuttamista Unity-pelimoottorissa C#-ohjelmointikielellä.
Tuloksena opinnäytetyöstä saadaan käsitys, mitä jatkuva integraatio, jatkuva toimitus ja yksikkötestaus ovat ja miksi niitä käytetään. Työstä saa hyvän pohjan laajasti käytetyistä ympäristöistä ja työkaluista edellä mainittujen menetelmien toteutuksessa. Esimerkkipelin kehityksen vaiheita seuratessa saa käytännön esimerkin, miten menetelmiä ja työkaluja käytetään yksinkertaisessa projektissa.
