LOOPING TESTING
KELOMPOK VI :
HENDI MIADI 1511010024
NHOJI TUSENO 1411010017
RIZKY ILHAM DANI 15110100
INSTITUT INFORMATIKA & BISNIS DARMAJAYA
FAKULTAS ILMU KOMPUTER
JURUSAN TEKNIK INFORMATIKA
2018
Definisi
* Loop adalah sistem yang terintegrasi untuk menggabungkan instrument field device
(input) dari dan (output) ke lapangan dengan sistem control yang jejaringnya
dihubungkan dengan wiring.
* Open Loop adalah hubungan signal satu arah dari lapangan (input) ke sistem kontrol
atau sebaliknya (output) dari sistem kontrol ke lapangan. Input dan output tidak
mempunyai hubungan. Sehingga ketika action output ke lapangan yang merubah proses,
tidak ada feedback yang diberikan ke loop.
* Closed Loop adalah siklus signal dari lapangan (input) ke sistem kontrol kemudian
diolah dan menghasilkan signal output yang akan dikirimkan kembali ke final element di
lapangan (output). Dan action dari final element itu akan berpengaruh pada input.
* Single Loop adalah loop sederhana dapat berupa open loop atau closed loop sederhana.
Pre-Commissioning adalah aktivitas untuk memastikan bahwa setiap instrument input
devices, sistem control, dan instrument final element dapat beroperasi sebagaimana
control design untuk menunjang proses. Pre-commissioning dapat juga disebut function
test untuk setiap loop.
Ujicoba Perulangan (Loop Testing)
Ujicoba perulangan (Loop Testing) merupakan ujicoba whitebox yang memfokuskan secara
khusus
pada validitas pembentukan loop. Terdapat 4 jenis loop yang berbeda, yaitu : simple loop,
concatenated loop,
Simple loop, serangkaian uji coba harus diaplikasikan pada loop sederhana, dimana n
merupakan jumlah maksimum yang diperbolehkan dalam loop :
1. Lewati loop secara keseluruhan (skip the loop entirely)
2. Hanya satu yang melalui loop (only one pass through the loop)
3. 2 melalui loop (two passes through the loop)
4. m melalui loop, jika m < n (m passes the loop where m < n)
5. n - 1, n, n+1 passes the loop
Simple Looping atau dikenal juga dengan Basic Looping adalah perulangan yang sangat
sederhana yang akan mengeksekusi program tanpa batasan waktu. Perulangan akan berhenti
ketika ada statement EXIT atau EXIT WHEN.
Sintak Dasar:
Dibawah ini adalah sintak dasar penggunaan Simple Looping / Perulangan sederhana.
1
LOOP
2
statement;
3
END LOOP;
Contoh:
Dibawah ini adalah contoh program looping sederhana untuk mencetak bilangan 1
sampai dengan 5 dengan menggunakan operator penambahan (+). Perulangan akan
berhenti ketika bilangan = 6, yaitu dengan adanya statement EXIT.
01
DECLARE
02
bilangan NUMBER := 1;
03
BEGIN
04
-- Program Mencetak Bilangan 1 s/d 5
05
LOOP
06
DBMS_OUTPUT.PUT_LINE ('Bilangan = ' || bilangan);
07
bilangan := bilangan + 1;
08
IF bilangan = 6 THEN
09
-- Jika bilangan = 6, keluar dari blok looping
10
EXIT;
11
END IF;
12
END
LOOP;
13
14
END
;
15
/
Contoh program diatas, apabila dijalankan maka akan menghasilkan output seperti
dibawah ini:
1
Bilangan = 1
2
Bilangan = 2
3
Bilangan = 3
4
Bilangan = 4
5
Bilangan = 5
6
7
PL/SQL procedure successfully completed.
FOR Looping
FOR Looping adalah perulangan dimana kita telah menentukan batas minimal dan
maksimal untuk dilakukan proses perulangan (looping).
Sintak Dasar:
Di bawah ini adalah sintak dasar penggunaan FOR looping:
1
FOR nilai IN [ REVERSE ] nilai_bawah..nilai_atas LOOP
2
statement;
3
END LOOP
Contoh:
Dibawah ini adalah contoh program FOR Looping untuk mencetak bilangan 1 sampai dengan
1
BEGIN
2
-- Program untuk mencetak bilangan 1 s/d 5
3
FOR no IN 1 .. 5 LOOP
4
DBMS_OUTPUT.PUT_LINE('Bilangan : ' || no);
5
END LOOP;
6
END;
7
/
Apabila program diatas dijalankan, maka akan keluar output seperti dibawah ini:
1
Bilangan : 1
2
Bilangan : 2
3
Bilangan : 3
4
Bilangan : 4
5
Bilangan : 5
Bagaimana caranya agar kita dapat mencetak bilangan 5 sampai dengan 1 dengan
menggunakan looping? Caranya adalah menggunakan tambahan keyword REVERSE pada
FOR LOOP diatas, seperti contoh program dibawah ini.
1
BEGIN
2
-- Program untuk mencetak bilangan 5 s/d 1 Menggunakan REVERSE
3
FOR no IN REVERSE 1 .. 5 LOOP
4
DBMS_OUTPUT.PUT_LINE('Bilangan : ' || no);
5
END LOOP;
6
END;
7
/
Coba Anda jalankan program diatas, maka akan menghasilkan output seperti dibawah ini:
1
Bilangan : 5
2
Bilangan : 4
3
Bilangan : 3
4
Bilangan : 2
5
Bilangan : 1
WHILE Looping
WHILE Looping adalah perulangan yang menggunakan eskpresi boolean, artinya akan dicek
terlebih dahulu sebelum melakukan perulangan. Apabila kondisi bernilai TRUE, maka
perulangan akan dijalankan sampai kondisi tidak terpenuhi. Sebaliknya kalau bernila FALSE,
maka akan keluar dari blok perulangan.
Sintak Dasar:
Dibawah ini adalah sintak dasar penggunakan WHILE Looping:
1
WHILE kondisi LOOP
2
statement;
3
END LOOP
Contoh:
Dibawah ini adalah contoh program WHILE Looping untuk mencetak bilangan 1 sampai
dengan 5 beserta jumlahnya.
01
DECLARE
02
no NUMBER := 0;
03
jumlah NUMBER := 0;
04
BEGIN
05
-- Program mencetak angkan 1 s/d 5 dan jumlahnya
06
WHILE no < 5 LOOP
07
no := no + 1;
08
jumlah := jumlah+no;
09
10
DBMS_OUTPUT.PUT_LINE('Angka :' || no);
11
END LOOP;
12
DBMS_OUTPUT.PUT_LINE('Jumlah :' || jumlah);
13
END;
14
/
Coba Anda jalankan program diatas, maka akan menghasilkan output seperti dibawah ini.
1
Angka :1
2
Angka :2
3
Angka :3
4
Angka :4
5
Angka :5
6
Jumlah :15
7
8
PL/SQL procedure successfully completed.
Nested loop, bila menerapkan ujicoba untuk loop sederhana pada nested loop, maka jumlah dari
ujicoba yang mungkin berkembang secara geometri sejalan dengan peningkatan level dari
nested. Beizer
menyarankan pendekatan yang akan mengurangi jumlah ujicoba :
1. Mulai dari loop terdalam, Tetapkan loop lainnya pada nilai minimum
2. Lakukan uji loop sederhana untuk loop terdalam dan loop luar tetap pada parameter
iterasi minimum.Tambahkan ujicoba lainnya untuk out-of-range atau nilai lainnya
(exclude value)
3. Lakukan mengarah keluar, dan tetap mempertahankan loop luarnya dalam nilai
minimum dan nested loop lainnya dengan nilai yang sesuai.
4. Lanjutkan sampai seluruh loop teruji.
Lingkaran bersarang adalah loop di dalam loop, loop dalam di dalam tubuh yang terluar. Cara
kerjanya adalah bahwa laluan pertama dari lingkaran luar memicu loop bagian dalam, yang
dieksekusi hingga selesai. Kemudian laluan kedua dari lingkaran luar memicu lingkaran dalam
lagi. Ini berulang sampai loop luar selesai. Tentu saja, istirahat dalam lingkaran dalam atau luar
akan mengganggu proses ini.
Contoh 11-20. Loop Bersarang
#! / bin / bash
# nested-loop.sh: Digabung "untuk" loop.
outer = 1 # Atur penghitung lingkaran luar.
# Awal dari lingkaran luar.
untuk dalam 1 2 3 4 5
melakukan
echo "Berikan $ outer dalam lingkaran luar."
echo "---------------------"
inner = 1 # Atur ulang penghitung loop internal.
# ===============================================
# Awal dari loop batin.
untuk b dalam 1 2 3 4 5
melakukan
echo "Pass $ inner dalam lingkaran batin."
biarkan "inner + = 1" # Increment inner loop counter.
selesai
# Akhir lingkaran dalam.
# ===============================================
biarkan "outer + = 1" # Increment outer loop counter.
echo # Spasi di antara blok output di luar lingkaran luar.
selesai
# Akhir lingkaran luar.
keluar 0
Concatenated loop, dapat diuji dengan menggunakan pendekatan yang didefinisikan untuk loop
sederhana, jika setiap loop saling independen. Jika loop digabungkan (concatenated) dan counter
untuk loop1
digunakan sebagai nilai awal dari loop2, maka loop saling bergantung dan pendekatan untuk
nested loop
direkomendasikan.
Contoh:
=====================================================================
// Program Penggunaan Do-while
#include <iostream>
#include <string>
using namespace std;
int main ()
{
char cPilihan; // variabel untuk menampung kondisi
string zNama; // variabel untuk menampung nama
do
{
cout <<"Masukan Nama anda :";
cin >> zNama;
cout <<"Nama anda adalah " << zNama << endl
<<"Apakah anda ingin Mengulanginya lagi [y / n] ? ";
cin >> cPilihan;
}while(cPilihan =='y' || cPilihan=='Y');
cout <<"Disini Sudah Bukan Wilayah Loop" << endl;
system("PAUSE");
return 0;
}
=====================================================================
Unstructured loop, Jika mungkin sebaiknya loop jenis ini didesain ulang untuk merefleksikan
kegunaan pembentukan struktur program.
Contoh:
=====================================================================
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
//gatewan.com -- Wawan Beneran
//MENCARI RATA - RATA, MAKSIMUM DAN MINIMUM
void main()
{
randomize();
int data, mak, min,tot=0;
float rata;
for(int i=1;i<=5;i++)
{
data=random(100);
cout<<"Data masuk : "<<data<<endl;
if (i==1)
mak=min=data;
else
{
if (mak<data)
mak=data;
if (min>data)
min=data;
}
tot=tot+data;
}
rata=tot/5;
cout<<"Rata-rata : "<<rata<<endl;
cout<<"Masimum : "<<mak<<endl;
cout<<"Minimum : "<<min<<endl;
getch();
}
====================================================================
KELOMPOK VI :
HENDI MIADI 1511010024
NHOJI TUSENO 1411010017
RIZKY ILHAM DANI 15110100
INSTITUT INFORMATIKA & BISNIS DARMAJAYA
FAKULTAS ILMU KOMPUTER
JURUSAN TEKNIK INFORMATIKA
2018
Definisi
* Loop adalah sistem yang terintegrasi untuk menggabungkan instrument field device
(input) dari dan (output) ke lapangan dengan sistem control yang jejaringnya
dihubungkan dengan wiring.
* Open Loop adalah hubungan signal satu arah dari lapangan (input) ke sistem kontrol
atau sebaliknya (output) dari sistem kontrol ke lapangan. Input dan output tidak
mempunyai hubungan. Sehingga ketika action output ke lapangan yang merubah proses,
tidak ada feedback yang diberikan ke loop.
* Closed Loop adalah siklus signal dari lapangan (input) ke sistem kontrol kemudian
diolah dan menghasilkan signal output yang akan dikirimkan kembali ke final element di
lapangan (output). Dan action dari final element itu akan berpengaruh pada input.
* Single Loop adalah loop sederhana dapat berupa open loop atau closed loop sederhana.
Pre-Commissioning adalah aktivitas untuk memastikan bahwa setiap instrument input
devices, sistem control, dan instrument final element dapat beroperasi sebagaimana
control design untuk menunjang proses. Pre-commissioning dapat juga disebut function
test untuk setiap loop.
Ujicoba Perulangan (Loop Testing)
Ujicoba perulangan (Loop Testing) merupakan ujicoba whitebox yang memfokuskan secara
khusus
pada validitas pembentukan loop. Terdapat 4 jenis loop yang berbeda, yaitu : simple loop,
concatenated loop,
Simple loop, serangkaian uji coba harus diaplikasikan pada loop sederhana, dimana n
merupakan jumlah maksimum yang diperbolehkan dalam loop :
1. Lewati loop secara keseluruhan (skip the loop entirely)
2. Hanya satu yang melalui loop (only one pass through the loop)
3. 2 melalui loop (two passes through the loop)
4. m melalui loop, jika m < n (m passes the loop where m < n)
5. n - 1, n, n+1 passes the loop
Simple Looping atau dikenal juga dengan Basic Looping adalah perulangan yang sangat
sederhana yang akan mengeksekusi program tanpa batasan waktu. Perulangan akan berhenti
ketika ada statement EXIT atau EXIT WHEN.
Sintak Dasar:
Dibawah ini adalah sintak dasar penggunaan Simple Looping / Perulangan sederhana.
1
LOOP
2
statement;
3
END LOOP;
Contoh:
Dibawah ini adalah contoh program looping sederhana untuk mencetak bilangan 1
sampai dengan 5 dengan menggunakan operator penambahan (+). Perulangan akan
berhenti ketika bilangan = 6, yaitu dengan adanya statement EXIT.
01
DECLARE
02
bilangan NUMBER := 1;
03
BEGIN
04
-- Program Mencetak Bilangan 1 s/d 5
05
LOOP
06
DBMS_OUTPUT.PUT_LINE ('Bilangan = ' || bilangan);
07
bilangan := bilangan + 1;
08
IF bilangan = 6 THEN
09
-- Jika bilangan = 6, keluar dari blok looping
10
EXIT;
11
END IF;
12
END
LOOP;
13
14
END
;
15
/
Contoh program diatas, apabila dijalankan maka akan menghasilkan output seperti
dibawah ini:
1
Bilangan = 1
2
Bilangan = 2
3
Bilangan = 3
4
Bilangan = 4
5
Bilangan = 5
6
7
PL/SQL procedure successfully completed.
FOR Looping
FOR Looping adalah perulangan dimana kita telah menentukan batas minimal dan
maksimal untuk dilakukan proses perulangan (looping).
Sintak Dasar:
Di bawah ini adalah sintak dasar penggunaan FOR looping:
1
FOR nilai IN [ REVERSE ] nilai_bawah..nilai_atas LOOP
2
statement;
3
END LOOP
Contoh:
Dibawah ini adalah contoh program FOR Looping untuk mencetak bilangan 1 sampai dengan
1
BEGIN
2
-- Program untuk mencetak bilangan 1 s/d 5
3
FOR no IN 1 .. 5 LOOP
4
DBMS_OUTPUT.PUT_LINE('Bilangan : ' || no);
5
END LOOP;
6
END;
7
/
Apabila program diatas dijalankan, maka akan keluar output seperti dibawah ini:
1
Bilangan : 1
2
Bilangan : 2
3
Bilangan : 3
4
Bilangan : 4
5
Bilangan : 5
Bagaimana caranya agar kita dapat mencetak bilangan 5 sampai dengan 1 dengan
menggunakan looping? Caranya adalah menggunakan tambahan keyword REVERSE pada
FOR LOOP diatas, seperti contoh program dibawah ini.
1
BEGIN
2
-- Program untuk mencetak bilangan 5 s/d 1 Menggunakan REVERSE
3
FOR no IN REVERSE 1 .. 5 LOOP
4
DBMS_OUTPUT.PUT_LINE('Bilangan : ' || no);
5
END LOOP;
6
END;
7
/
Coba Anda jalankan program diatas, maka akan menghasilkan output seperti dibawah ini:
1
Bilangan : 5
2
Bilangan : 4
3
Bilangan : 3
4
Bilangan : 2
5
Bilangan : 1
WHILE Looping
WHILE Looping adalah perulangan yang menggunakan eskpresi boolean, artinya akan dicek
terlebih dahulu sebelum melakukan perulangan. Apabila kondisi bernilai TRUE, maka
perulangan akan dijalankan sampai kondisi tidak terpenuhi. Sebaliknya kalau bernila FALSE,
maka akan keluar dari blok perulangan.
Sintak Dasar:
Dibawah ini adalah sintak dasar penggunakan WHILE Looping:
1
WHILE kondisi LOOP
2
statement;
3
END LOOP
Contoh:
Dibawah ini adalah contoh program WHILE Looping untuk mencetak bilangan 1 sampai
dengan 5 beserta jumlahnya.
01
DECLARE
02
no NUMBER := 0;
03
jumlah NUMBER := 0;
04
BEGIN
05
-- Program mencetak angkan 1 s/d 5 dan jumlahnya
06
WHILE no < 5 LOOP
07
no := no + 1;
08
jumlah := jumlah+no;
09
10
DBMS_OUTPUT.PUT_LINE('Angka :' || no);
11
END LOOP;
12
DBMS_OUTPUT.PUT_LINE('Jumlah :' || jumlah);
13
END;
14
/
Coba Anda jalankan program diatas, maka akan menghasilkan output seperti dibawah ini.
1
Angka :1
2
Angka :2
3
Angka :3
4
Angka :4
5
Angka :5
6
Jumlah :15
7
8
PL/SQL procedure successfully completed.
Nested loop, bila menerapkan ujicoba untuk loop sederhana pada nested loop, maka jumlah dari
ujicoba yang mungkin berkembang secara geometri sejalan dengan peningkatan level dari
nested. Beizer
menyarankan pendekatan yang akan mengurangi jumlah ujicoba :
1. Mulai dari loop terdalam, Tetapkan loop lainnya pada nilai minimum
2. Lakukan uji loop sederhana untuk loop terdalam dan loop luar tetap pada parameter
iterasi minimum.Tambahkan ujicoba lainnya untuk out-of-range atau nilai lainnya
(exclude value)
3. Lakukan mengarah keluar, dan tetap mempertahankan loop luarnya dalam nilai
minimum dan nested loop lainnya dengan nilai yang sesuai.
4. Lanjutkan sampai seluruh loop teruji.
Lingkaran bersarang adalah loop di dalam loop, loop dalam di dalam tubuh yang terluar. Cara
kerjanya adalah bahwa laluan pertama dari lingkaran luar memicu loop bagian dalam, yang
dieksekusi hingga selesai. Kemudian laluan kedua dari lingkaran luar memicu lingkaran dalam
lagi. Ini berulang sampai loop luar selesai. Tentu saja, istirahat dalam lingkaran dalam atau luar
akan mengganggu proses ini.
Contoh 11-20. Loop Bersarang
#! / bin / bash
# nested-loop.sh: Digabung "untuk" loop.
outer = 1 # Atur penghitung lingkaran luar.
# Awal dari lingkaran luar.
untuk dalam 1 2 3 4 5
melakukan
echo "Berikan $ outer dalam lingkaran luar."
echo "---------------------"
inner = 1 # Atur ulang penghitung loop internal.
# ===============================================
# Awal dari loop batin.
untuk b dalam 1 2 3 4 5
melakukan
echo "Pass $ inner dalam lingkaran batin."
biarkan "inner + = 1" # Increment inner loop counter.
selesai
# Akhir lingkaran dalam.
# ===============================================
biarkan "outer + = 1" # Increment outer loop counter.
echo # Spasi di antara blok output di luar lingkaran luar.
selesai
# Akhir lingkaran luar.
keluar 0
Concatenated loop, dapat diuji dengan menggunakan pendekatan yang didefinisikan untuk loop
sederhana, jika setiap loop saling independen. Jika loop digabungkan (concatenated) dan counter
untuk loop1
digunakan sebagai nilai awal dari loop2, maka loop saling bergantung dan pendekatan untuk
nested loop
direkomendasikan.
Contoh:
=====================================================================
// Program Penggunaan Do-while
#include <iostream>
#include <string>
using namespace std;
int main ()
{
char cPilihan; // variabel untuk menampung kondisi
string zNama; // variabel untuk menampung nama
do
{
cout <<"Masukan Nama anda :";
cin >> zNama;
cout <<"Nama anda adalah " << zNama << endl
<<"Apakah anda ingin Mengulanginya lagi [y / n] ? ";
cin >> cPilihan;
}while(cPilihan =='y' || cPilihan=='Y');
cout <<"Disini Sudah Bukan Wilayah Loop" << endl;
system("PAUSE");
return 0;
}
=====================================================================
Unstructured loop, Jika mungkin sebaiknya loop jenis ini didesain ulang untuk merefleksikan
kegunaan pembentukan struktur program.
Contoh:
=====================================================================
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
//gatewan.com -- Wawan Beneran
//MENCARI RATA - RATA, MAKSIMUM DAN MINIMUM
void main()
{
randomize();
int data, mak, min,tot=0;
float rata;
for(int i=1;i<=5;i++)
{
data=random(100);
cout<<"Data masuk : "<<data<<endl;
if (i==1)
mak=min=data;
else
{
if (mak<data)
mak=data;
if (min>data)
min=data;
}
tot=tot+data;
}
rata=tot/5;
cout<<"Rata-rata : "<<rata<<endl;
cout<<"Masimum : "<<mak<<endl;
cout<<"Minimum : "<<min<<endl;
getch();
}
====================================================================
0 Response to "LOOPING TESTING"
Post a Comment