===== Software testing : Yatzee3000 ===== Udvikleren af Yatzee3000 version 0.1c mener at spillet at klar til en release. **//- Hvad mener i ? // ** ==== Yatzee 3000 ==== ---- {{ ::yatzee_screenshot.png |}} ---- ==== The misson ==== * Før spillet kan blive released skal det selvfølgelig undergå en grundig test hos software-testerne (det er Jer). ---- === Opgave 1 === Yatzee gør brug af klassen 'ScoreCounter' til at beregne værdien af et Yatzee slag. I skal teste denne klasse ved at oprette jeres eget test program, som anvender 'ScoreCounter', dvs. kalder denne klasses metoder og undersøger om 'ScoreCounter' er korrekt implementeret (ift.yatzee reglerne [[https://en.wikipedia.org/wiki/Yahtzee#Rules|link]]). * Lav __mindst__ én test-case (og gerne flere) **per** funktionskald til ScoreCounter. (se evt. nedestående code-snippet) * Imens i tester gør da en note af jeres erfaringer mht. * Hvad er fordelen ved at teste på denne måde (dvs. programmatisk)? * Er der nogle ulemper ved at teste på denne måde ? * Hvad kunne en god testing strategi være ? Eksempel på en simpel testcase ... int score = 0; int[] kast = {1,2,3,6,6}; score = ScoreCounter.ScoreSingleSum(6, kast); // Test værdien af antallet af 6'ere Console.Write("ScoreSingleSum test 1 : "); if ( score == 12 ) { Console.Write("Success"); } else { Console.Write("Failed"); } // fyi: ScoreCounter tager et int array med 5 terninge slag. (i nogle tilfælde tager den også den værdi, som man ønsker at tælle op) I har adgang til kildekoden og kan se metode signaturen.// * **Hvem finder flest fejl gennem sine test cases ? ( Der er Pepsi-max til det vindende hold )** ---- === Opgave 2 === * Ikke alle fejl er en decideret programfejl, nogle fejl kan være en inkonsistens med kravspecifikation, eller blot noget som er "off", dvs. implicit mangler eller er "forkert". * Hvad kan i finde som er helt skævt med denne applikation ? (find mindst 5 ting som kan betragtes som en fejl ifm. at anvende Yatzee3000, (find gerne mange flere ;) ) ---- Vi samler op i plenum. Vær forberedt på at skærm-dele jeres fund, samt den kildekode i bruger at teste Yatzee3000. ==== Downloads ==== * {{ prog:yatzee3000.zip | Yatzee 3000 v0.1c}} * [[https://en.wikipedia.org/wiki/Yahtzee#Rules|Yatzee reglerne]] (n.b. der spilles med 5 terninger, og uden bonuschips)