BAB I PENDAHULUAN 1.1 Latar Belakang

dokumen-dokumen yang mirip
SOFTWARE TESTING. Ratna Wardani

BAB V IMPLEMENTASI SISTEM

BAB II LANDASAN TEORI. beberapa ahli, definisi sistem adalah sebagai berikut.

BAB I PENDAHULUAN. 1.1 Latar Belakang dan Permasalahan

Teknik-Teknik Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

TAHAPAN PENGEMBANGAN DESAIN, DAN VERIFIKASI DAN VALIDASI SISTEM YANG PENTING UNTUK KESELAMATAN BERBASIS KOMPUTER

MAKALAH DESAIN TEST CASE. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

Testing Implementasi Sistem. Black Box Testing Equivalence Partitioning & Boundary Value Analysis


Definisi Black Box. pemenuhan sistem atau komponen dengan kebutuhan fungsional tertentu. q Menurut Myers (1979) :

TINJAUAN PUSTAKA. Pengujian adalah proses eksekusi program untuk menemukan kesalahan.

SATUAN ACARA PERKULIAHAN(SAP)

Dibuat Oleh : 1. Andrey ( )

Sistem (3 sks) Black Box Testing (1) Black Box Testing

A. Pengujian Perangkat Lunak

BAB 1 Pendahuluan 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan masalah

PENGEMBANGAN SISTEM INFORMASI GEOGRAFIS (SIG) PENYEDIA LAYANAN KESEHATAN BERBASIS ANDROID (Studi Kasus Kota Bandar Lampung)

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 2 LANDASAN TEORI Enterprise Resource Planning (ERP)

Rekayasa Perangkat Lunak

BAB V IMPLEMENTASI SISTEM

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN. dalam arti yang lebih sempit, adalah sistem komputer yang memiliki kemampuan

BAB I PENDAHULUAN. Sistem berbasis web dipilih karena beberapa kelebihan antara lain lebih

BAB 1 PENDAHULUAN. Perangkat lunak adalah istilah umum untuk data yang diformat dan disimpan secara

PENGUJIAN PERANGKAT LUNAK DENGAN MENGGUNAKAN METODE WHITE BOX DAN BLACK BOX

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB V IMPLEMENTASI SISTEM. tersebut siap diterapkan atau diimplementasikan. Tahap Implementasi Sistem

BAB V IMPLEMENTASI SISTEM

BAB V IMPLEMENTASI SISTEM

BAB I PENDAHULUAN. pendayagunaan informasi yang dalam volume besar secara cepat dan

PERANGKAT LUNAK PENJUALAN BERBASIS WEB DI PUSAT KUD JAWA BARAT

DESAIN TEST CASE. Tugas ke 11 Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak

BAB 2 LANDASAN TEORI

Pengujian Perangkat Lunak

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Teknik Pengujian (3) Blackbox Testing

Nama : Rendi Setiawan Nim :

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB I PENDAHULUAN. 1 Universitas Kristen Maranatha

BAB I PENDAHULUAN. (SIG) adalah salah satu sistem informasi yang dibahas dalam ilmu komputer, yang

14. PENGUJIAN PERANGKAT LUNAK Dasar-dasar Pengujian 14.2 Teknik Pengujian 14.3 Strategi Pengujian dan V&V

BAB III METODOLOGI PENELITIAN. Penelitian ini dilakukan di Jurusan Ilmu Komputer Fakultas Matematika dan Ilmu

BAB 1 PENDAHULUAN. 1.1 Aplikasi Pengolahan Nilai Sementara Mahasiswa

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG

BAB III METODOLOGI PENELITIAN. Pada pembuatan Plugin Penjadwalan Seminar pada Jurusan Ilmu

BAB I PENDAHULUAN 1.1 Latar Belakang

MI2193 PEMROGRAMAN WEB LANJUT PHP FRAMEWORK. Created by MTA Revised by HPU

Software Testing Technique

BAB 5 FAKTOR PENGUJIAN

White Box Testing dan Black Box Testing, Perbedaannya Serta Contohnya.

SATUAN ACARA PERKULIAHAN PROGRAM STUDI : S1 SISTEM INFORMASI

BAB III METODOLOGI PENELITIAN. tools yang akan digunakan untuk merancang aplikasi generator denah

BAB II LANDASAN TEORI

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

1. PENDAHULUAN 1.1. Latar Belakang

BAB II LANDASAN TEORI. pengertian. Secara garis besar ada dua kelompok pendekatan, yaitu:

BAB 3 METODE PENELITIAN

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

Black-Box Testing. Julian Supardi, M.T. Sumber Slide: Oerip S. Diterjemahkan Oleh: Rosa Ariani Sukamto.

Teknik Informatika S1

BAB 16 IMPLEMENTASI SISTEM

BAB I PENDAHULUAN. bermutu pada tingkat pendidikan. Hal ini dianggap oleh sebagian orang sebagai sebuah kendala

1 BAB III METODOLOGI PENELITIAN

BAB I PENDAHULUAN. semakin relatif sulit juga untuk mengambil keputusan terhadap suatu

BAB IV HASIL DAN UJICOBA

TEKNIK PENGUJIAN PERANGKAT LUNAK PERTEMUAN 14

BAB II TINJAUAN PUSTAKA. Kuliah Kerja Nyata (KKN) Universitas Lampung bertujuan untuk menjamin

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. sebagai sumber pertama dan utama yang banyak memuat ajaran-ajaran yang

SATUAN ACARA PERKULIAHAN MATA KULIAH TESTING & IMPLEMENTASI SISTEM (KA) KODE / SKS : KK / 3 SKS

BAB I PENDAHULUAN. teknologi berbasis komputer, walaupun perusahaan sudah menggunakan

PEMANFAATAN ARDUINO DALAM PENGEMBANGAN SISTEM RUMAH PINTAR BERBASIS MOBILE DAN WEB (Studi Kasus : Penjadwalan Lampu Rumah)

Berikut langkah-langkah penelitian yang dilakukan: 1. Menentukan kebutuhan data yang akan digunakan.

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

Dasar-Dasar Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

BAB I PENDAHULUAN. Seluler adalah suatu sistem komunikasi yang memberikan layanan

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

BAB I PENDAHULUAN. dengan menerapkan teknologi tepat guna, namun dalam mengembangkan sistem

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB I PENDAHULUAN. dengan cepat dan dapat melakukan kegiatan sehari-hari dengan teknologi tersebut.

BAB I PENDAHULUAN. jenis bisnis dalam meningkatkan efisiensi dan efektivitas proses bisnis,

BAB III OBJEK DAN METODE PENELITIAN. Untuk mendukung penulis dalam melakukan penelitian dan pengumpulan

TEKNIK PENGUJIAN PERANGKAT LUNAK PERTEMUAN 14

BAB I PENDAHULUAN. perangkat komputer yang digunakan, maka akan diperlukan waktu yang sangat lama

BAB IV IMPLEMENTASI DAN PENGUJIAN APLIKASI. Setelah melakukan analisis dan perancangan terhadap Aplikasii

BAB 3 Landasan Teori

BAB I PENDAHULUAN. memproduksi kapas seperti kapas kecantikan dengan merek Selection Cotton.

Hubungan antara rencana pengujian dan proses pengembangan system. Tim RPL 1 3

METODE PENGUJIAN PERANGKAT LUNAK

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB I PENDAHULUAN. keunggulan kompetitif (competitive advantage) dengan strategi keunggulan biaya

BAB 6 METODE PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB II LANDASAN TEORI. asing yang ditujukan kepada mereka yang bukan native speaker (Rudman 2011).

BAB I PERSYARATAN PRODUK

BAB V IMPLEMENTASI SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Transkripsi:

BAB I PENDAHULUAN 1.1 Latar Belakang Menurut Pressman (2012) tujuan dari pengujian adalah untuk menemukan dan memperbaiki sebanyak mungkin kesalahan dalam program sebelum menyerahkan program kepada pelanggan. Salah satu pengujian yang baik adalah pengujian yang memiliki probabilitas tinggi dalam menemukan kesalahan. Pengujian perangkat lunak juga bertujuan untuk mendapatkan kepercayaan dari pengguna, jika perangkat lunak memiliki banyak kesalahan, pengguna akan enggan untuk terus memakainya terlebih ada perangkat lunak milik pihak lain yang dapat memberikan pelayanan yang lebih baik. Pengujian pada perangkat lunak juga ditujukan untuk meminimalisir kerugian yang disebabkan oleh perangkat lunak terhadap pengguna. Setiap kali sebuah modul baru ditambahkan atau dimodifikasi maka perangkat lunak akan berubah. Perubahan ini dapat menyebabkan permasalahan pada fungsi-fungsi yang sebelumnya bekerja dengan sempurna. Dalam proses pengujian integrasi, pengujian regresi berarti penguji melakukan pengeksekusian kembali beberapa rangkaian pengujian yang telah dijalankan untuk memastikan bahwa perubahan tidak menimbulkan efek samping yang tidak diharapkan Pressman (2012). Pengujian tersebut pada siklus pengembangan perangkat lunak sangat memungkinkan melakukan pengujian pada kasus pengujian yang sama dan berulang-ulang untuk setiap penambahan atau perubahan baru dalam perangkat lunak. Pengujian regresi cocok dijadikan pengujian otomatis untuk mencapai pengulangan berkelanjutan dari perkejaan yang sama atau serangkaian rentetan pengujian Catelani, dkk. (2008). Penelitian yang telah dilakukan sebelumnya oleh Peethambaran (2015) dan Shivatri (2016) membuktikan eksekusi pengujian otomatis dapat dilakukan lebih cepat dari pengujian manual. Manfaat yang bisa 1

2 didapatkan dari pengujian otomatis menurut Fewster dan Graham (2000) diantaranya : 1. Menjalankan pengujian regresi yang sudah ada. Ini mungkin merupakan tugas yang paling jelas, terutama dalam sebuah lingkungan di mana banyak program sering dilakukan perubahan. Upaya yang terlibat dalam melakukan sebuah set dari pengujian regresi harus minimal. Sebagai contoh, sebuah tes telah ada dan sudah di otomatisasi untuk dijalankan di versi terbaru dari sebuah program, maka seharusnya memungkinkan untuk memilih kasus pengujian dan melakukan eksekusinya dengan menit upaya yang lebih sedikit dari upaya pengujan manual. 2. Menjalankan pengujian lebih sering. Sebuah keuntungan yang jelas dari pengujian otomatis adalah kemampuan untuk menjalankan pengujian dalam waktu yang lebih singkat sehingga dapat dijalankan lebih sering. Hal ini dapat menimbulkan keyakinan yang lebih besar terhadap sistem. 3. Konsistensi dan pengujian yang dapat dilakukan berulang. Pengujian yang diulang secara otomatis akan diulang persis (data yang dimasukkan akan selalu sama, tapi keluarannya mungkin berbeda berdasarkan waktu pengujiannya, sebagai contoh). Hal ini memberikan tingkatan konsistensi pada pengujian yang tentunya sulit dicapai dengan cara manual. Menurut Pressman (2012) Black Box Testing, juga disebut pengujian perilaku, berfokus pada fungsional perangkat lunak. Artinya, framework pengujian black box memungkinkan untuk membuat beberapa kumpulan kondisi masukan yang sepenuhnya akan melakukan semua kebutuhan fungsional untuk program. Black Box Testing bukan alternatif untuk White Box Testing. Sebaliknya, ini merupakan pendekatan pelengkap yang mungkin dilakukan untuk mengungkap kelas kesalahan yang berbeda dari yang diungkap dari metode White Box Testing. Pengujian otomatis dalam penelitian ini menggunakan metode Black Box Testing karena pengujian dilakukan oleh tim penguji yang tidak terlibat dalam penulisan source code dari Application Under Test (AUT). Pengujian dengan metode white box testing telah dilakukan di tahap sebelumnya oleh tim pengembang.

3 Penelitian yang dilakukan oleh Amannejad, dkk. (2014) menggunakan kembali alat pengujian merupakan keuntungan pada pengujian otomatis. Pengkodean kasus pengujian otomatis memakan waktu yang tidak sedikit jika dilakukan satu per satu untuk setiap kasus pengujian. Terlebih jika penguji yang terlibat dalam pembuatan pengujian otomatis tidak memiliki pengetahuan mendalam tentang bahasa pemrograman untuk membuat source code pengujian otomatis. Aiya dan Verma (2014) melakukan penelitian pengujian otomatis dengan framework Keyword-Driven, hasilnya framework ini tidak membutuhkan pengetahuan tentang bahasa pemrograman untuk menguji aplikasi berbasis web karena kode telah ditanam di dalam script pada framework tersebut. Modular Framework tidak menjawab masalah ini karena dibuat dengan melakukan pengkodean untuk satu persatu kasus pengujian dan sulitnya untuk melakukan pemeliharaan karena data yang dipakai untuk pengujian dilakukan dengan hardcoded. Nilai penting dari sebuah pengujian otomatis adalah penggunan kembali, script pengujian yang baik adalah script tersebut dapat digunakan oleh berbagai kasus pengujian, Fewster dan Graham (2000). Penggunaan kembali (Reusability) dilakukan dengan kemampuan penggunaan kembali pada fungsi dan data pengujian. Data-Driven Framework dipilih untuk menangani kasus pengujian yang memiliki banyak data. Dalam penelitian yang dilakukan oleh Chandraprabha, dkk. (2015) dan Wang dan He. (2014), Data-Driven Framework adalah solusi framework yang baik untuk pengujian yang memiliki data dengan jumlah besar. Data-Driven dilakukan dengan memisahkan data dengan script pengujian untuk tujuan penggunaan kembali. Meskipun Data-Driven Framework menjawab permasalahan penggunaan kembali data pengujian, Data-Driven Framework tidak dapat melakukan penggunaan kembali setiap fungsi yang ada dan masih memerlukan kemampuan programming untuk melakukan pengujian. Pengkodean kasus pengujian tetap dilakukan satu persatu setiap kasus. Keyword- Driven Framework menjawab masalah penggunaan kembali fungsi dan data pengujian. Aktivitas pengujian yang dilakukan pada Keyword-Driven Framework dengan definisi langkah-langkah kasus pengujian memakan waktu, terlebih jika

4 ternyata beberapa kasus pengujian memiliki langkah yang sama. Hal tersebut diharapkan dapat selesaikan dengan lebih cepat. Black Box Testing berupaya untuk menemukan kesalahan dalam kategori berikut : (1) fungsi yang salah atau hilang, (2) kesalahan antarmuka, (3) kesalahan dalam struktur data atau akses basis data eskternal, (4) kesalahan perilaku atau kinerja, dan (5) kesalahan inisialisasi dan penghentian, Pressman (2012). Penguji mengidentifikasi sebuah set kondisi masukan yang akan menjalankan pengujian pada kebutuhan fungsional sistem. Dengan menerapkan metode ini akan didapatkan serangkaian kasus pengujian yang memenuhi kriteria berikut : (1) test case yang mengurangi jumlah test case tambahan yang harus dirancang untuk mencapai pengujian yang wajar, dan (2) test case yang mengatakan sesuatu tentang ada atau tidaknya kelas kesalahan. Kriteria tersebut didapatkan dengan Equivalence Class Partitioning dan Boundary Value Analysis yang ada dalam metode Black Box Testing, kedua hal tersebut membuat masukan dalam pengujian bervariasi. Penggunaan data untuk pengujian diharapkan bervariasi sehingga dapat menghasilkan pengujian dengan probabilitas tinggi untuk menemukan kesalahan. Data yang digunakan sebaiknya tidak hard-coded di dalam script pengujian otomatis sehingga dapat menggunakan data pengujian sesuai dengan yang diinginkan. Dengan menggunakan framework keyword-driven memungkinkan penggunaan kembali dan mengurangi jumlah script yang diperlukan untuk semua kombinasi yang memungkinkan dari skenario pengujian. Oleh karena itu, kita dapat membuat kumpulan skenario pengujian lengkap dengan jumlah code yang lebih sedikit. Keuntungan lain yang dapat diperoleh jika terjadi perubahan data, maka perubahan tersebut tidak akan memengaruhi script code pengujian. Dengan menggunakan framework keyword-driven, sebuah skenario pengujian dapat dijalankan untuk beragam data yang berbeda. 1.2 Perumusan Masalah Berdasarkan latar belakang yang telah diuraikan sebelumnya, dapat diperoleh rumusan masalah, antara lain :

5 a. Bagaimana membuat framework pengujian otomatis pada Graphical User Interface (GUI) yang dapat membantu penguji meringkas pekerjaan pembuatan kasus pengujian otomatis. b. Bagaimana membuat framework pengujian otomatis yang dapat melakukan validasi terhadap masukan AUT. 1.3 Batasan Masalah Ruang lingkup penelitian dibatasi agar penyelesaian masalah dapat lebih terarah pada tujuan penelitian sehingga dapat memberikan manfaat yang diharapkan. Batasan penelitian adalah sebagai berikut: 1. Pengujian ini digunakan untuk melakukan pengujian perangkat lunak berbasis web. 2. Pengujian dilakukan pada antar muka pengguna atau GUI dari AUT. 3. Pengujian menggunakan metode Black Box Testing, dengan pendekatan desain masukan kasus pengujian menggunakan Equivalence Class Partitioning dan Boundary Value Analysis untuk masukan text field maupun text area. 4. Framework yang dibuat tidak dimaksudkan untuk menghasilkan kasus tes secara otomatis. 5. Framework yang dibuat tidak dimaksudkan untuk dapat mendeteksi semua elemen yang ada di dalam suatu halaman website dan memetakannya ke dalam objek halaman secara otomatis. 1.4 Tujuan Penelitian Tujuan dari penelitian ini adalah mengembangkan framework pengujian otomatis pada GUI dengan pendekatan Black Box Testing dan framework keyword-driven serta teknik Equivalence Class Partitioning dan Boundary Value Analysis untuk membuat data pengujian.

6 1.5 Manfaat Penelitian Mengurangi jumlah source code pengujian dengan menggunakan fungsi action keywords. Satu kasus pengujian dapat menggunakan data yang beragam berdasarkan Equivalence Class Partitioning dan Boundary Value Analysis dengan probabilitas untuk menemukan kesalahan dari fungsional antarmuka pengguna. Pemeliharaan pengujian otomatis yang lebih baik dengan penggunaan kembali fungsi, data, dan langkah kasus pengujian untuk kasus pengujian yang lain. 1.6 Keaslian Penelitian Beberapa penelitian telah dilakukan menggunakan metode Black Box Testing dan framework Data-Driven maupun Keyword-Driven. Berdasarkan pada penelitian sebelumnya tidak ditemukan adanya kemiripan yang identik dengan penelitian ini. Pada penelitian ini penulis mencoba menggunakan Equivalence Class Partitioning dan Boundary Value Analysis dalam pembuatan data yang akan digunakan untuk pengujian dan menambahkan kemampuan penggunaan kembali fungsi, data dan langkah pengujian. 1.7 Metodologi Penelitian Penelitian ini menggunakan metode pengembangan perangkat lunak yang terdiri dari tahap-tahap berikut : 1. Studi Pustaka Pada tahap ini dilakukan pengumpulan informasi mengenai berbagai hal tentang pengujian otomatis yang terkait dengan penelitian ini. Sumber berupa jurnal, buku, ataupun artikel lain di internet. 2. Analisis kebutuhan dan perancangan sistem Analisis kebutuhan dan perancangan sistem merupakan tahapan untuk melakukan analisis kebutuhan untuk framework sehingga didapatkan fiturfitur yang akan digunakan untuk melakukan pengujian otomatis. 3. Implementasi Sistem

7 Dalam tahap ini dilakukan pengembangan framework berdasarkan hasil perancangan sistem. Implementasi dilakukan menggunakan Sistem Operasi Windows 7. 4. Pengujian Tahap pengujian terhadap framework yang dibuat dilakukan dengan cara menjalankan kasus pengujian pada domain situs. Memastikan keyword yang ada dapat berfungsi dengan baik dalam melakukan aksi terhadap elemen web dan dapat melakukan verifikasi untuk menentukan hasil pengujian. 5. Perbaikan kesalahan Melakukan perbaikan terhadap kesalahan yang ditemukan pada saat pengujian. Jika tidak ada kesalahan maka perbaikan tidak perlu dilakukan, sebaliknya jika terdapat kesalahan maka perbaikan harus dilakukan. 6. Penyusunan Laporan Penyusunan Laporan merupakan tahap terakhir pada penelitian ini, dilakukan dengan memberikan hasil dan membuat laporan penelitian.