• Tidak ada hasil yang ditemukan

Testing

Dalam dokumen BAB I PENDAHULUAN (Halaman 47-60)

BAB III PEMBAHASAN

3.3. Code Generation

3.3.1. Testing

Aplikasi pembelajaran yang telah dibuat, selanjutnya diuji melalui teknik pengujian perangkat lunak yang meliputi pengujian white box dan pengujian black box.

A. Whitebox Testing

1. Bagian Aliran Menu Utama

Terdapat 3 menu utama diantaranya menu game, menu pengaturan, menu about dan pada masing-masing menu memiliki sub menu. Berikut bagan aliran menu utama.

Gambar III.33.

Bagan Alir Menu Utama

2. Bagian Aliran Menu Game

Terdapat 3 menu utama diantaranya menu matematika, menu Bahasa inggris, menu puzzle dan pada masing-masing menu memiliki sub menu.

Berikut bagan aliran menu game.

Gambar III.34.

Bagan Alir Menu Game

Gambar III.35.

Grafik Alir Menu Utama Keterangan:

Note 1 : Mulai aplikasi halaman loading Note 2 : Menu utama

Note 3 : Tombol menu game.

Note 4 : Isi game pembelajaran Matematika, Bahasa Inggris, Puzzle Note 5 : Tombol Pengaturan

Note 6 : Tombol suara Note 7 : Tombol About Note 8 : Masuk ke About Note 9 : Tombol Keluar

Note 10 : Tombol Selesai Program

Kompleksitas siklomatis (pengukuran kuantitatif terhadap kompleksitas logis suatu program) dari grafik alir dapat diperoleh dengan perhitungan.

Dimana:

E = Jumlah edge grafik alir yang ditandakan dengan gambar panah N = Jumlah simpul grafik alir yang ditandakan dengan gambar lingkaran

Dimana:

P = Jumlah predikat (Node yang memiliki cabang) Sehingga kompleksitas siklomatisnya:

1. V(G) = (E – N) + 2

= (12 – 10) + 2

= 4

2. V(G) = P + 1

= 3 + 1

= 4

V(G) = E – N + 2

V(G) = P + 1

3. Independent Path

Path 1 = 1 – 2 – 3 – 4 – 9 – 10 Path 2 = 1 – 2 – 3 – 5 – 6 – 9 – 10 Path 3 = 1 – 2 – 3 – 5 – 7 – 8 – 9 – 10 Path 4 = 1 – 2 – 3 – 5 – 7 – 9 – 10 B. Blackbox Testing

Pengujian program menggunakan blackbox testing yang fokus terhadap proses masukan dan keluaran program. Pengujian ini bertujuan untuk mengetahui apakah animasi sudah sesuai dengan yang diinginkan atau belum.

Tabel III.14.

Hasil Pengujian Blackbox Testing

Input/Event Proses Output/Next

Stage

Hasil Pengujian Tombol

Game

btn_game.addEventListener(MouseE vent.CLICK, tombol_game);

function

tombol_game(event:MouseEvent):vo id

{

gotoAndStop("32");

}

Masuk ke Menu Game

Sesuai

Tombol Pengaturan

btn_pengaturan.addEventListener(M ouseEvent.CLICK,

tombol_pengaturan);

function

tombol_pengaturan(event:MouseEve nt):void

{

gotoAndStop("34");

}

Masuk pada pengaturan game

Sesuai

Tombol About

btn_about.addEventListener(MouseE vent.CLICK, tombol_about);

Masuk pada menu about

Sesuai

function

tombol_about(event:MouseEvent):vo id

{

gotoAndStop("33");

} Tombol

Matematika

btn_mtk.addEventListener(MouseEv ent.CLICK, tombol_mtk);

function

tombol_mtk(event:MouseEvent):voi d

{

gotoAndStop("35");

}

Untuk Masuk ke game matematika

Sesuai

Tombol Bahasa Inggris

btn_bi.addEventListener(MouseEven t.CLICK, tombol_bi);

function

tombol_bi(event:MouseEvent):void {

gotoAndStop("38");

}

Untuk masuk pada game bahasa inggris

Sesuai

Tombol

Puzzle btn_puzzle.addEventListener(Mouse Event.CLICK, tombol_puzzle);

function

tombol_puzzle(event:MouseEvent):v oid

{

gotoAndStop("51");

}

Untuk masuk pada game puzzle

Sesuai

Tombol Play

btn_play_mtk.addEventListener(Mo useEvent.CLICK,

tombol_mulai_mtk);

function

tombol_mulai_mtk(event:MouseEve nt):void

{

gotoAndStop("37");

}

Untuk memulai game matematika

Sesuai

Tombol Petunjuk

btn_petunjuk_mtk.addEventListener(

MouseEvent.CLICK, tombol_petunjuk_mtk);

Untuk memberikan cara

bermain

function

tombol_petunjuk_mtk(event:MouseE vent):void

{

gotoAndStop("36");

}

pada game yang dipilih

Tombol Soal Pada Matematika

stop();

btn_backgame.visible=false;

var nilai:Number = 0;

var no_soal:Number = 0;

var max_soal:Number = 10;

var hasil:hasil_mc;

var soal:Array = [["Berapakah hasil dari 8 X 2 = ?", "16", "15", "14",

"13"],

["Berapakah hasil dari 42 : 7 = ?", "6", "5", "7",

"8"],

["Berapakah hasil dari 34 + 21 = ?", "55", "45",

"53", "49"],

["Berapakah hasil dari 23 - 7 = ?", "16", "15", "14",

"17"],

["Berapakah hasil dari 47 + 38 = ?", "85", "80 ",

"95", "90"],

["Berapakah hasil dari 67 - 16 = ? ", "51", "50",

"49", "52"],

["Berapakah hasil dari 8 X 7 = ? ", "56", "54",

"58", "60"],

["Berapakah hasil dari 60 : 3 = ? ", "20", "15",

"19", "11"],

["Berapakah hasil dari 12 X 3 = ? ", "36", "37",

"25", "26"],

["Berapakah hasil dari 45 : 3 =? ", "15", "14", "25",

"20"],

["Berapakah hasil dari 124 + 37 =?", "161", "150",

"160", "151"],

Untuk memilih jawaban, jika benar akan mendapatka n nilai 10 dan jika jawaban salah tidak akan mendapatka n nilai kosong.

Sesuai

["Berapakah hasil dari 98 - 23 =?", "75", "65",

"55", "45"],

["Berapakah hasil dari 11 X 7 =?", "77", "67",

"73", "75"],

["Berapakah hasil dari 13 X 2 =?", "26", "27",

"28", "29"],

["Berapakah hasil dari 32 : 2 =?", "16", "27", "15",

"14"]];

var temp_soal:Array;

var temp_jawaban:Array;

function acak_soal():void{

//mengacak soal

temp_soal = soal.slice(0, soal.length);

for (var i:Number = 0; i <

soal.length; i++){

var acak:Number = Math.floor(Math.random()*soal.leng th);

var temp:Array = temp_soal[acak];

temp_soal[acak] = temp_soal[i];

temp_soal[i] = temp;

} }

function restart():void{

//restart kuis, semua variabel dikembalikan ke posisi semula

acak_soal();

nilai = 0;

no_soal = 0;

max_soal = 10;

score_txt.text = "0";

restart_btn.visible = false;

btn_backgame.visible=true;

btn_exit_soal.visible=true;

soal_habis.visible=false;

}

function tampilkan_soal():void{

//tampilkan soal

soal_txt.text =

temp_soal[no_soal][0];

//acak jawaban

temp_jawaban =

temp_soal[no_soal].slice(1, 5);

for (var i:Number = 0; i <

temp_jawaban.length; i++){

var acak:Number = Math.floor(Math.random()*temp_ja waban.length);

var temp:String = temp_jawaban[acak];

temp_jawaban[acak]

= temp_jawaban[i];

temp_jawaban[i] = temp;

}

//tampilkan jawaban

jawaban_1.jawaban_txt.text = temp_jawaban[0];

jawaban_2.jawaban_txt.text = temp_jawaban[1];

jawaban_3.jawaban_txt.text = temp_jawaban[2];

jawaban_4.jawaban_txt.text = temp_jawaban[3];

}

function setup_awal():void{

restart();

tampilkan_soal();

//mengatur jawaban jawaban_1.stop();

jawaban_2.stop();

jawaban_3.stop();

jawaban_4.stop();

jawaban_1.addEventListener(

MouseEvent.CLICK, cek_jawaban);

jawaban_2.addEventListener(

MouseEvent.CLICK, cek_jawaban);

jawaban_3.addEventListener(

MouseEvent.CLICK, cek_jawaban);

jawaban_4.addEventListener(

MouseEvent.CLICK, cek_jawaban);

//listener untuk efek tombol

jawaban_1.addEventListener(

MouseEvent.MOUSE_OVER, mouse_over);

jawaban_2.addEventListener(

MouseEvent.MOUSE_OVER, mouse_over);

jawaban_3.addEventListener(

MouseEvent.MOUSE_OVER, mouse_over);

jawaban_4.addEventListener(

MouseEvent.MOUSE_OVER, mouse_over);

//mouse out

jawaban_1.addEventListener(

MouseEvent.MOUSE_OUT, mouse_out);

jawaban_2.addEventListener(

MouseEvent.MOUSE_OUT, mouse_out);

jawaban_3.addEventListener(

MouseEvent.MOUSE_OUT, mouse_out);

jawaban_4.addEventListener(

MouseEvent.MOUSE_OUT, mouse_out);

//tombol restart

restart_btn.addEventListener(

MouseEvent.CLICK, ulangi);

btn_backgame.visible=true;

btn_exit_soal.visible=true }

function

mouse_over(e:MouseEvent):void{

e.currentTarget.gotoAndStop (2);

}

function

mouse_out(e:MouseEvent):void{

e.currentTarget.gotoAndStop (1);

}

function

cek_jawaban(e:MouseEvent):void{

var no_jawaban:Number = Number(e.currentTarget.name.substr (8))-1;

if

(temp_jawaban[no_jawaban] ==

temp_soal[no_soal][1]){

//jawaban benar tampilkan_hasil(1);

btn_backgame.visible=false;

nilai+=10;

score_txt.text = String(nilai);

btn_exit_soal.visible=false;

}else{

//jawaban salah tampilkan_hasil(2);

btn_backgame.visible=false;

btn_exit_soal.visible=false;

} }

function

tampilkan_hasil(tp:Number):void{

hasil = new hasil_mc();

hasil.x = 264;

hasil.y = 268;

hasil.gotoAndStop(tp);

hasil.scaleX = 0.2;

hasil.scaleY = 0.2;

hasil.waktu = 0;

hasil.tp = tp;

hasil.addEventListener(Event .ENTER_FRAME, gerak_hasil);

addChild(hasil);

btn_backgame.visible=true;

btn_exit_soal.visible=false;

soal_habis.visible=false;

}

function gerak_hasil(e:Event):void{

var ob:Object =

e.currentTarget;

if (ob.scaleX < 1){

ob.scaleX+=0.2;

ob.scaleY+=0.2;

}

if (ob.waktu > -1 && ob.tp <

3){

ob.waktu++;

if (ob.waktu > 60){

ob.waktu = -1;

//tambah no soal

no_soal++;

ob.removeEventListener(Eve nt.ENTER_FRAME, gerak_hasil);

removeChild(DisplayObject(

ob));

if (no_soal <

max_soal){

tampilkan_soal();

}else{

soal_habis.visible=true;

restart_btn.visible = true;

btn_backgame.visible=true;

btn_exit_soal.visible=true;

} }

} }

function ulangi(e:MouseEvent):void{

//hasil.removeEventListener(

Event.ENTER_FRAME, gerak_hasil);

//removeChild(DisplayObject (hasil));

restart();

restart_btn.visible = false;

//tampilkan_hasil(3);

tampilkan_soal();

btn_backgame.visible=true;

btn_exit_soal.visible=true }

setup_awal();

btn_backgame.addEventListener(Mo useEvent.CLICK,

fl_ClickToGoToAndStopAtFrame_1 95);

function

fl_ClickToGoToAndStopAtFrame_1 95(event:MouseEvent):void

{

gotoAndStop("32");

} Tombol

Kembali

btn_back.addEventListener(MouseE vent.CLICK, tombol_back);

function

tombol_back(event:MouseEvent):voi d

{

gotoAndStop("31");

}

Untuk kembali pada menu utama

sesuai

Tombol OK stop();

function

clikpergi(event:MouseEvent):void {

if (input.text == "t-shirt") {

skor+=10;

nextFrame();

} else {

nextFrame();

}

cek.visible = false;

}

cek.addEventListener(MouseEvent.C LICK,clikpergi);

Untuk melihat hasil apakah jawaban dari game tebak gambar benar atau salah.

sesuai

Tombol Level 1

btn_level1.addEventListener(Mouse Event.CLICK, tombol_level1);

function

tombol_level1(event:MouseEvent):v oid

{

gotoAndStop("52");

Untuk memulai game sesuai dengan levelnya.

Sesuai

Tombol Keluar

import fl.motion.MotionEvent;

stop();

notif.visible=false;

btn_exit.addEventListener(MouseEv ent.CLICK,btnKeluar_122);

function

btnKeluar_122(e:MouseEvent):void{

notif.visible=true;

}

Untuk keluar dari aplikasi game asah otak

Sesuai

Dalam dokumen BAB I PENDAHULUAN (Halaman 47-60)

Dokumen terkait