Anda di halaman 1dari 9

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/340583631

EVALUASI PENGGUNAAN MANUAL DAN AUTOMATED SOFTWARE TESTING


PADA PELAKSANAAN END-TO-END TESTING

Article in JTT (Jurnal Teknologi Terapan) · March 2020


DOI: 10.31884/jtt.v6i1.256

CITATION READS

1 2,588

7 authors, including:

Adila Istiqomah Ani Rahmani

1 PUBLICATION 1 CITATION
Politeknik Negeri Bandung
15 PUBLICATIONS 21 CITATIONS
SEE PROFILE
SEE PROFILE

All content following this page was uploaded by Ani Rahmani on 12 April 2020.

The user has requested enhancement of the downloaded file.


JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

EVALUASI PENGGUNAAN MANUAL DAN AUTOMATED SOFTWARE TESTING


PADA PELAKSANAAN END-TO-END TESTING

Joe Lian Min1, Adila Istiqomah2, Ani Rahmani3


1,3
Politeknik Negeri Bandung
2
Profesional Tester PT Padepokan Tujuh Sembilan-Bandung
Email: 1joelianmin@jtk.polban.ac.id, 2aadilaistiqomah@gmail.com, 3anirahma@jtk.polban.ac.id

Abstrak

Abstrak-- Pada siklus pengembangan software, testing diperlukan untuk memastikan kualitas
software sebelum dirilis. Pemilihan teknik testing yang digunakan dalam pelaksanaan testing
bergantung pada karakteristik software yang akan dirilis. Aplikasi berbasis web sebagai contoh,
akan cenderung menggunakan teknik end-to-end untuk memastikan halaman web berinteraksi
sesuai dengan requirement. Berkaitan dengan masa development cycle dari sebuah software
yang semakin singkat, maka dipandang perlu kajian untuk menentukan teknik pengerjaan
testing (secara manual maupun automated testing) pada end-to-end testing. Penelitian yang
dilakukan bertujuan untuk melihat karakteristik dan teknis pengujian end-to-end testing yang
mungkin dapat dilakukan dalam pengembangan perangkat lunak, baik secara manual atau pun
secara otomatis. Dari kajian yang dilakukan, diketahui bahwa jumlah iterasi pelaksanaan end-
to-end testing sangat berpengaruh dalam pemilihan teknik pengerjaan yang digunakan. Hal ini
dapat menjadi dasar untuk menentukan teknik testing yang akan diambil: manual atau otomatis.

Kata Kunci: end-to-end testing, manual testing, automated testing, protactor

Abstract

In software development life cycle, testing is needed to ensure the quality of the software before
it is released. Choosing the testing technique depends on the characteristics of the software to
be released. Web-based applications, for example, will tend to use end-to-end testing techniques
to ensure web pages interact according to requirements. The cycle of software development
recently is getting shorter. It is necessary to study to determine the testing implementation
techniques (manually or automated) on the right end-to-end testing. The research objective is
to look at the characteristics and technical testing of end-to-end testing that can be done in
software development, both manually and automatically. The result showed that the number of
iterations of end-to-end testing is very influential in the selection of quality techniques used.
That can be a basis for determining testing techniques: manual or automatic.

Keywords: end-to-end testing, manual testing, automated testing, protactor

serangkaian proses yang telah dirancang untuk


I. PENDAHULUAN memeriksa hal-hal yang harus dilakukan dan
Software testing (biasa disingkat testing) merupakan (sebaliknya) tidak boleh terjadi pada sebuah
aktifitas penting dalam software engineering. software (Mirza dan Khan, 2018: 46568; Myers, G.J
Testing akan mengekseksi software dengan tujuan 2011:2).
untuk melihat kesesuaiannya dengan requirement Ada berbagai macam teknik testing yang dapat
yang didefinisikan (Bertolino dan Faedo, 2007:1). digunakan untuk melakukan pengujian pada sebuah
Secara sederhana aktivitas testing akan memproses software. Salah satunya yaitu end-to-end testing
dan mengeksekusi program dengan maksud yang biasa digunakan oleh perusahaan yang
menemukan error. Software testing akan melakukan bergerak dalam pengembang aplikasi web (Manova

18
JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

n.d, 2018:267). pengujian yang sedang diamati, serta metode yang


End-to-end testing merupakan teknik testing dijalankan baik dari sisi rancangan maupun teknikal.
yang memiliki cakupan besar dan dimungkinkan Sebelum eksperimen, diadakan sebuah tranining
menghabis-kan banyak waktu dalam pelaksaannya, singkat, dan sebelumnya tester juga diberikan
sementara kini masa development cycle dari sebuah dokumen tatacara pelaksanaan end-to-end testing.
software semakin singkat. Menyiasati waktu yang Training singkat bertujuan untuk menyetarakan
singkat tersebut, maka pemilihan teknik eksekusi kemampuan tester (pada penelitian ini tester
testing (dengan manual atau menggunakan dianggap memiliki kemampuan setara setelah
automated software testing) yang tepat harus terus pelaksanaan training) dalam pelaksanaan end-to-end
diupayakan. testing untuk eksperimen.
Paper ini menjelaskan hasil pengamatan pada Kemampuan tester yang dianggap setara setelah
pelaksanaan end-to-end testing yang dilaksanakan diberikan training untuk pelaksanaan end-to-end
secara manual vs otomatis pada aplikasi web testing adalah sebagai berikut:
sederhana. Tujuan pengamatan adalah untuk melihat a. Melakukan end-to-end testing baik secara
teknik terbaik dari kedua teknik tersebut pada manual maupun automated sesuai dengan
pelaksanaan end-to-end testing. Pengetahuan prosedur yang telah ditetapkan.
mengenai teknik terbaik untuk proses pengujian b. Memahami cara mendokumentasikan hasil end-
sebuah software diperlukan agar pelaksanaan testing to-end testing yang dilakukan apabila
dapat efisien. dikerjakan secara manual.
c. Memahami bagaimana menggunakan
automation framework yang digunakan apabila
II. METODE melakukan end-to-end testing secara
Studi yang dilakukan untuk memperoleh automated.
pengetahuan mengenai teknik terbaik pelaksanaan
testing, dirancang dalam beberapa kegiatan. 3.2 Eksperimen
2.1 Penentuan Responden / Tester Persiapan environment termasuk installasi
Pengambilan sampel tester menggunakan software under test (SUT) dilakukan pertama kali
random selection, dengan teknik sampling non sebelum eksperimen. Secara paralel, kuisioner yang
probabilitas yaitu Convenience sampling. mengandung beberapa pertanyaan dibagikan kepada
Convenience sampling (biasa dikenal juga sebagai tester. Pertanyaan yang diajukan adalah untuk
Haphazard sampling atau Accidental sampling) menggali pengalaman dan pembelajaran yang
adalah salah satu tipe dari sampling non probabilitas pernah didapatkan responden dalam hal pelaksanaan
atau non random dengan anggota populasi target software testing. Test session survey yang dibuat
yang memenuhi kriteria praktis tertentu, seperti mengacu pada (Itnoken, J, 2008:61) dengan
aksebilitas mudah, kedekatan geografis, ketersedian beberapa penyesuaian. Jawaban dari responden,
pada waktu tertentu, atau kesedian untuk selanjutnya dijadikan dasar untuk penentuan
berpartisipasi dimasukkan untuk tujuan penelitian kelompok tester.
(Etikan, 2015: 2). Tools automated software testing yang
Berdasarkan hal tersebut, populasi tester yang digunakan adalah Protractor. Kelompok yang
terlibat hanya tester yang sedang atau telah melaksanakan end-to-end testing dengan Protractor
menyelesaikan jenjang pendidikan pada program dikhususkan untuk tester yang telah bekerja atau
studi teknik informatika di Politeknik Negeri yang memiliki pengalaman dalam bidang-bidang
Bandung dengan batasan rentang waktu angkatan yang berkaitan dengan pemanfaatan beberapa
masuk 2012-2015. Tester yang terlibat berjumlah 16 teknologi yang dipandang “dekat” dengan Protactor
orang, dibagi ke dalam dua kelompok, dengan (seperti angular JS atau Javascript). Informasi
masing-masing 8 orang. Kelompok pertama tersebut diperoleh dari hasil survey sebelum
melaksanakan end-to-end testing secara manual, pelaksanaan eksperimen.
dan kelompok kedua melaksanakan end-to-end Eksperimen dilakukan setelah diberikan training
testing secara otomatis. mengenai pelaksanaan end-to-end testing secara
Dari sisi jumlah tester, pada penelitian yang manual dan dipersilakan melakukan uji coba pada
dilakukan kurang menjadi variable penentu. Dalam objek penelitian (dipersiapkan satu screen).
konteks ini, tester dilibatkan untuk teknis Sedangkan untuk kelompok yang melaksanakan
pelaksanaan dalam upaya melihat karakteristik end-to-end testing dengan Protractor diberikan
training mengenai cara pelaksanaan end-to-end

19
JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

testing dengan penulisan test script menggunakan halaman web, dan sudah sesuai dengan kebutuhan
Protractor, dan dipersilakan untuk melakukan uji user (Palmér, T, H, dkk, 2015: 1). Pelaksanaan
coba terlebih dahulu. end-to-end testing terbagi menjadi dua metode,
Dokumentasi tata cara pelaksanaan end-to-end yaitu horizontal end-to-end testing dan vertical end
testing secara manual maupun menggunakan –to-end testing.
Protractor telah di distribusikan terlebih dahulu Horizontal end-to-end testing merupakan
sebelum hari pelaksanaan eksperimen. Dokumentasi metode yang paling banyak digunakan. Jika akan
tersebut dilengkapi juga dengan cara menjalankan melakukan end-to-end testing dengan metode
SUT, panduan installasi alat eskperimen, contoh test horizontal, misalnya pada web penjualan buku,
report hasil uji dengan manual testing, contoh test maka semua proses yang mencakup pengisian data
script yang dikerjakan dengan Protractor, dan alamat pembeli, detail pembelian, termasuk detail
referensi pendukung dari Protractor. pembelian yang dilakukan pembeli harus dilakukan
Pelaksanaan eksperimen kelompok manual testing dari awal sampai akhir.
adalah: tester mencatat waktu awal mulai Vertical end-to-end testing merupakan metode
mengeksekusi pada setiap test item, melakukan yang sangat kompleks sehingga jarang dilakukan,
testing pada SUT1 dengan mengikuti langkah- karena end-to-end testing dengan metode ini
langkah dan test data (input) untuk setiap test item melakukan testing termasuk application
yang terdapat pada test case. Selanjutnya programming interface (API) dan structured query
membandingkan hasil eksekusi SUT dengan actual language (SQL).
output yang diharapkan pada test case. Test report Pelaksanaan end-to-end testing dapat
yang dibuat diharuskan menyertakan tangkapan menggunakan salah satu metode ataupun keduanya
layar hasil eksekusi setiap test item. Setiap selesai untuk kebutuhan testing scenario yang kompleks.
mengeksekusi satu test item, tester diharuskan Pada pelaksanaannya, end-to-end testing merupakan
mencatat waktu selesai. salah satu teknik testing yang bisa dieksekusi
Prosedur pelaksanaan eksperimen kelompok dengan manual testing ataupun dengan automated
automated dimulai dengan tester membuat test script software testing.
dengan acuan test cases. Ketika memulai
transformasi test item ke dalam bentuk script, tester 2.2.1 Manual Testing
diharuskan mencatat waktu mulai. Apabila test script Manual testing adalah sebuah teknik testing
telah selesai, selanjutnya dijalankan di Protractor, dimana tester menyiapkan test cases secara manual
dan hasil eksekusi diperiksa dari generate report dan mengeksekusi test cases untuk mengidentifikasi
yang tersedia, dan terakhir mencatat waktu selesai. defect di software (Sharma, 2014: 252; Dobles, I
Tester yang tergabung pada kelompok dkk, 2019: 7)
automated dibolehkan melakukan manual testing Secara umum penggunaan manual testing pada
pada test item yang dipandang tidak dapat pelaksanaan end-to-end testing adalah melakukan
diautomasi dengan prosedur yang disamakan eksekusi test dengan menjalankan software sesuai
dengan eksperimen kelompok manual. Hal tersebut dengan skenario yang tertulis pada test cases.
dilakukan, karena tidak semua item test dapat Selanjutnya membandingkan output yang keluar
dijalankan secara automated. dari aplikasi dengan output yang diharapkan dari
Setelah tester di kedua kelompok selesai setiap test cases.
melaksanakan pengujian pada SUT1, selanjutnya
dilakukan satu kali lagi eksperimen menggunakan 2.2.2 Automated Software Testing
SUT2 (re-testing). Pelaksanaan end-to-end testing Automated software testing melibatkan
kedua kelompok pada re-testing sama dengan pada pengem- bangan test script menggunakan scripting
pelaksanaan testing sebelumnya. languages seperti phyton, java script, atau tool
command language (TCL), sehingga test case dapat
2.2 End-to-end testing dieksekusi oleh komputer dengan minimal campur
End-to-end testing adalah sebuah metodologi tangan manusia. (Sharma,R,M, 2014: 252). Pada
yang digunakan untuk menguji apakah flow aplikasi (Dudekula, 2011: 7) juga dijelaskan bahwa
bekerja sebagaimana yang dirancang dari awal automated software testing adalah proses membuat
hingga selesai. End-to-end testing merupakan salah sebuah program (test script) yang mensimulasikan
satu teknik testing yang harus dilakukan oleh langkah-langkah test case manual dalam bahasa
perusahaan pengembang web, karena jika telah pemrograman apapun dengan bantuan external
melewati end-to-end testing, secara umum automation helper tool lainnya. Eksekusi end-to-
dipandang telah menjamin interaksi user dengan end testing menggunakan automated software

20
JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

testing membutuhkan konversi test case menjadi 2.4 Software under Test (SUT)
test script, yang setelah itu dilakukan running test Software yang digunakan untuk pengujian
script pada automation tools tersebut. (software under test / SUT) adalah sebuah web
online shop sederhana untuk penjualan kue.
2.3 Protractor SUT yang dibangun diasumsikan telah melalui
Pemilihan automation framework yang level testing sebelum end-to-end testing (unit testing,
digunakan bergantung pada teknik testing yang akan dan integrasi testing). Terdapat tiga SUT yang
diterapkan untuk pengujian system under test. disiapkan, yaitu SUT training, dan SUT untuk
Pemilihan Protractor sebagai automation eksperimen yang dinamakan sebagai SUT1 dan
framework, karena teknik testing pada penelitian SUT2.
yang dilakukan adalah end-to-end testing. Selain itu SUT training digunakan untuk kebutuhan
juga dilatarbelakangi oleh object penelitian yang pelaksanaan training sebelum pelaksanaan
dibangun menggunakan angular js pada front-end, eksperimen end-to-end testing. SUT1 merupakan
dimana angular js untuk pelaksanaan end-to-end SUT yang digunakan pada eksperimen end-to-end
testing telah menyediakan Protractor sebagai testing iterasi pertama (SUT1 dikondisikan sebagai
automation framework. SUT sebelum proses bug fixing). SUT 2 adalah SUT
Protractor adalah sebuah open source end-to- yang digunakan untuk eksperimen pelaksanaan re-
end test framework untuk aplikasi AngularJS end-to-end testing (SUT 2 di kondisikan sebagai
(Bustamante 2017: 1). Protractor dibangun di atas SUT setelah bug fixing).
WebDriverJs, yaitu sebuah implementasi resmi Pada SUT1 terdapat bugs yang ditanam secara
Javascript Selenium. Protractor dapat dilihat sengaja sebanyak 20 buah. Bugs tersebut terdiri dari
sebagai sebuah tool yang berinteraksi dengan kesalahan penulisan (typo), kesalahan perpindahan
website seperti yang biasa dilakukan oleh user. halaman, fitur yang tidak berfungsi (contoh fungsi
Protractor sebagai test-runner masih menggunakan searching tidak berfungsi), dan kesalahan
sebuah test-framework, yaitu Jasmine, Mocha dan perhitungan.
Cucumber. Pada penelitian ini, test-framework yang End-to-end testing difokuskan pada simulasi
digunakan adalah Jasmine. actual user (skenario test atau end-to-end flow
Pemilihan Jasmine selain diperkuat karena aplikasi per screen) tanpa pemeriksaan basis data,
Jasmine merupakan test-framework default ketika maka SUT hanya dibangun menggunakan fake back-
installasi Protractor, juga karena menggunakan end untuk pemrosesan data yaitu hanya dengan
Cucumber. Versi Protractor yang digunakan adalah Javascript, sedangkan pada bagian front-end
protractor versi 5.1.1. Protactor pada versi tersebut memanfaatkan Angular Js.
tidak menyertakan Cucumber sebagai test-
framework secara default yang dapat digunakan 2.5 Test Case
pada Protractor. Apabila menggunakan Mocha Penelitian dilaksanakan untuk melihat waktu
maka Chai harus disertakan sebagai framework pengerjaan end-to-end testing secara manual
tambahan. Hal ini karena pada Mocha, fungsi expect mengguna-kan automation framework. Selain
tidak diadaptasi untuk mengerti promise, sedangkan mengetahui waktu pengerjaan, juga luaran dari
Protractor dibangun di atas WebDriverJs, dan penelitian ini dapat merepresentasikan faktor-faktor
WebDriverJS berjalan secara asynchronous, yang berpengaruh dalam pelaksanaan end-to-end
sehingga keseluruhan fungsi akan memiliki testing. Karena penelitian berfokus pada test
kembalian promise. exexution, maka perancangan test cases menjadi
Selain menggunakan Protractor, untuk proses terpenting.
memudah-kan pembacaan hasil running test script, Software Testing Life Cycle (STLC)
pada console digunakan juga Jasmine-spec-reporter. didefinisikan sebagai rangkaian kegiatan yang
Jasmine-spec-reporter adalah sebuah package npm sistematis dalam testing. Menurut (Afzal, 2007:9),
yang berupa real time console spec reporter untuk banyak sumber memiliki pendekatan berbeda
Jasmine. Selain Jasmine-spec-reporter juga mengenai aktivitas atau phase yang harus dilewati
digunakan Protractor-jasmine2-html-reporter untuk pada STLC. Pada penelitian ini phase yang diikuti
kebutuhan meng-generate laporan hasil ekseskusi adalah phase utama STLC, yaitu terdiri dari test
test (telah di lengkapi tangkapan layar) pada planning, test design, test execution, dan test review.
eksperimen automated. Dokumen test cases yang digunakan untuk
eksperimen ini telah melalui proses test planning
dan design. hHasil dari test planning adalah
dokumen test plan yang disusun berdasarkan acuan

21
JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

IEEE Std 829-1998 untuk Software Test Tabel 1. Jumlah Test Item
Documentation, dan dokumen test design yang
Test Cases Code Jumlah Test Item
disusun berdasarkan sumber yang sama dengan test TC 1 40
plan. TC 2 51
Pada pengembangan test cases untuk TC 3 37
pelaksanaan end-to-end testing tidak ada template TC 4 44
khusus (Palmér, T, H, dkk, 2015: 1). Pada penelitian TC 5 27
yang dilakukan test case yang dikembangkan
menerapkan teknik equivalence partitioning, nature
of the application (web-based software). III. HASIL DAN PEMBAHASAN
Equivalance Partitioning melibatkan pembagian Hasil eksperimen dan pembahasan untuk
domain input ke dalam koleksi subset (atau mengetahui perbandingan lama pengerjaan end-to-
equivalence classes) berdasarkan pada kriteria atau end testing dengan manual dan dengan automated
relasi yang ditentukan (19759:2005ISO, 2005: 4-8). software testing dijelaskan sebagai berikut.
Contoh penerapan pada test cases misalnya input qty
kue yang valid adalah angka 1 – 1000, maka ada tiga 3.1 Hasil Eksperimen
case yang terbentuk (lihat representasi Gambar 2).
a. Case 1 digunakan untuk testing invalid input, Tabel 2 merupakan rekapitulasi dari lembar
dimana test data dari nilai input qty berupa nilai survei yang disebar pada tester yang terlibat pada
yang lebih kecil dari nilai minimum input yang penelitian. Dari lembar survei ini dapat diketahui
valid (lebih kecil dari 1). lebih dalam latar belakang pengalaman responden
terhadap hal-hal yang berkaitan dengan beberapa
b. Case 2 digunakan untuk testing valid input,
aspek yang dibutuhkan dari eksperimen.
dimana test data dari nilai input qty berupa nilai
Pada table 3 dan table 4 secara berurut
yang memiliki range sama atau diantara nilai
merupakan data lama pengerjaan eksperimen secara
minimum dan nilai maksimum dari input yang
manual dan automated software testing.
valid (contoh 10).
c. Case 3 digunakan untuk testing invalid input, Pada prosedur pelaksanaan end-to-end testing
dimana test data dari nilai input qty berupa nilai secara otomatis, tester dibolehkan melakukan
yang lebih besar dari nilai maskimum input manual testing jika menurut tester, test item yang
yang valid (lebih kecil dari 1000). terdapat pada test case tidak dapat diotomasi.
Mengenai hal tersebut dinyatakan bahwa memilih
Techniques based on the nature of the application penggunaan automated software testing pada
yang diterapkan adalah nature dari web-based pelaksanaan testing tidak sepenuhnya menghilang-
software. Pengembangan test case yang kan manual testing, karena ada beberapa hal pada
berdasasrkan teknik ini dan masih berkaitan dengan test cases yang tidak dapat dioutomasi, (Sharma,
end-to-end testing diantaranya pengecekan field 2014: 253), sehingga pada test metric dapat
label, fungsional tombol pada page, dan pengecekan ditentukan berapa banyak test case yang dapat di-
scenario (termasuk pengecekan data yang automated. Test metric tersebut adalah percent
ditampilkan, dan hasil perhitungan). automable (persamaan 1).
no. of test items automable
Percent automable = x100% (1)
no.of total test items

3.2 Pembahasan
Berdasarkan tabel 3 dan 4 dapat diketahui bahwa:
Gambar 1. Contoh Equivalence Partitioning a. Pengerjaan end-to-end testing lebih cepat pada
iterasi pertama kali apabila dikerjakan secara
Total test case yang terbentuk berdasarkan SUT manual.
yang disediakan dan dari penerapan teknik yang b. Pada saat re-testing, end-to-end testing akan
telah dipaparkan adalah lima buah test cases, dengan lebih cepat apabila dikerjakan secara automated.
salah satu test case digunakan untuk keperluan Dari kesimpulan yang diperoleh dianalisis lebih
training. Jumlah test item pada masing-masing test lanjut bahwa ada beberapa hal yang harus dipertim-
cases ditunjukkan pada Tabel 1. bangkan untuk memutuskan pelaksanaan end-to-end
testing secara manual ataupun otomatis.

22
JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

Tabel 2. Rekapitulasi Data Lembar Survei Tabel 5. Rekapitulasi Automable Eksperimen


Automated

Matakuliah

AngularJS

Protractor
Javascript

Selenium
Software

Software
Training
Test Jumlah Tester Total Percent
Testing

Testing
Tester

Keterangan case Test Automated Automable


Item (Test Items) (%)
TC1 40 T10 36 90.0
Belum T11 17 42.5
T1 Y T Y T T T
bekerja TC2 51 T1 33 64.7
T2 Y T Y T T T Bekerja T13 27 52.9
Belum TC3 37 T8 26 70.3
T3 T T T T T T
bekerja
T15 26 70.3
T4 Y T Y T T T Bekerja
Belum
TC4 44 T2 17 38.6
T5 T T T T T T T4 16 36.4
bekerja
Belum
T6 T T T T T T
bekerja a. Iterasi pelaksanaan testing
Belum
T7 T T T T T T
bekerja End-to-end testing dengan otomatis sangat
T8 Y T Y T T T Bekerja dianjurkan jika SUT yang dibangun selalu
Belum terdapat peningkatan fitur secara berkala,
T9 T T T T T T
bekerja
Belum sehingga dimungkinkan dibutuhkan proses re-
T10 T T Y T T T
bekerja testing pada semua fitur untuk meyakinkan
Belum penambahan fitur baru tersebut tidak
T11 Y T Y Y T T
bekerja
Belum menganggu fungsi fitur yang sudah ada. Proses
T12 T T T T T T
bekerja pelaksaan end-to-end testing akan dengan cepat
T13 Y T Y T T T Bekerja dapat dilakukan pada tiap iterasi apabila telah
Belum
T14 T T T T T T
bekerja diotomasi, hanya perlu melakukan running
T15 T T Y Y T T Bekerja kembali test script yang sudah dibuat.
Belum (perbandingan dapat dilihat pada tabel 3 dan 4
T16 T T T T T T
bekerja
di kolom lama pengerjaan re-testing).

Tabel 3. Rekapitulasi Lama Pengerjaan - Sedangkan end-to-end testing dengan manual


Eksperimen Manual juga dapat dilakukan, namun lebih dianjurkan
Test Tester Lama Lama
pada SUT yang tidak memiliki banyak fitur dan
case pengerjaan pengerjaan re- langsung selesai (dalam artian tidak ada
(menit) testing (menit) penambahan fitur secara berkala). Hal ini dapat
TC1 T6 69 17 terlihat dari table 3 dan 4, bahwa pada iterasi
T7 98 75 pertama penggunaan manual testing, lama
TC2 T5 104 22
pengerjaan lebih singkat dari pada pembuatan
T9 63 15
TC3 T3 142 51 test script.
T14 54 30 b. Test report
TC4 T12 110 33 Pengerjaan end-to-end testing secara manual
T16 92 42 membutuhkan evidence tangkapan layar untuk
melengkapi status actual result dari proses
Tabel 4. Rekapitulasi Lama Pengerjaan - testing yang dilakukan. Hal ini berpengaruh
Eksperimen Automated pada lama pelaksanaan end-to-end testing
secara manual ketika iterasi (lihat
Test Tester Lama Lama
perbandingan re-testing pada tabel 3 dan 4),
case pengerjaan pengerjaan re-
(menit) testing (menit) dengan automated software testing
TC1 T10 298 5 diuntungkan dengan generate report.
T11 126 92 c. Training / experience dalam software testing
TC2 T1 222 13 Training atau pengalaman dalam software
T13 120 15 testing sangat diperlukan terutama untuk
TC3 T8 252 26
T15 220 26
pelaksanaan end-to-end testing dengan
TC4 T2 152 20 automated software testing. Hal tersebut dapat
T4 220 40 terlihat pada table 4. Pada iterasi pertama tester
membutuhkan waktu lama untuk pembuatan
test script.

23
JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

pengalaman dalam bidang software testing, dan


Hasil penelitian dimungkinkan memberikan ketersedian environment.
lama pengerjaan yang berbeda apabila
eksperimen dilakukan oleh tester yang telah
Saran
berpengalaman dalam pelaksanaan testing Untuk studi lebih lanjut, beberapa hal disarankan:
dengan automated software testing, khususnya a. Berdasarkan pembahasan dapat diketahui
protractor. Selain lama pengerjaan, tester yang bahaw faktor kompetensi tester yang terlibat
telah berpengalaman dengan automated selama proses end-to-end testing memiliki
software testing dimungkinkan banyak test pengaruh terhadap lama pengerjaan end-to-end
item yang bisa diotomasi. Hal ini juga akan testing, maka agar mendapatkan kesimpulan
menekan lama pelaksanaan end-to-end testing, yang lebih mendalam dibutuhkan penelitian
karena jika dilihat hubungan antara tabel 4 dan lebih lanjut dengan keragaman subjek
tabel 5 semakin besar percent automable maka penelitian (tester) yang terlibat dan berfokus
semakin singkat waku pelaksanaan re-testing. hanya pada satu test cases..
b. Berdasarkan studi pustaka dapat diketahui juga
d. Environment bahwan end-to-end testing merupakan
Environment yang mumpuni sangat kombinasi metode secara horizontal dan
berpengaruh untuk menekan waktu vertical, walaupun pada pelaksanaannya end-
pelaksanaan end-to-end testing, terutama to-end testing metode horizontal lebih sering
apabila end-to-end testing menggunakan dilakukan. Dari hal tersebut disarankan untuk
automated software testing. Hal ini merupakan melakukan penelitian serupa dengan cakupan
hal sederhana, namun patut menjadi pelaksanaan end-to-end testing diperluas
pertimbangan bagi tim developer ketika akan misalnya dengan integrasi dengan basis data,
melaksanakan pengujian terhadap software agar kesimpulan yang diambil bisa
yang sedang dikembangkan. menggambarkan pelaksanaan end-to-end
testing secara keseluruhan.
IV. PENUTUP c. SUT yang digunakan untuk eksperimen
memiliki keterbatasan dalam sisi fungsional
Kesimpulan (aplikasi SUT masih sederhana). Mengenai hal
Berdasarkan eksperimen yang dilakukan dapat tersebut dipandang perlu untuk melakukan
disimpulkan bahwa: penelitian pembanding untuk melihat lama
pengerjaan end-to-end testing dengan
a. End-to-end testing dapat dikerjakan secara
menggunakan SUT yang melibatkan
manual testing jika pada aplikasi yang diuji
keberagaman fungsi serta konten data yang
memiliki lingkup yang tidak terlalu besar dan
lebih bervariasi, seperti video, grafik, dan lain-
tidak direncanakan adanya penambahan fitur
lain.
secara berkala. Hal tersebut karena proses re-
d. Eksperimen lain dapat juga dilakukan
testing akan menambah waktu lama
menggunakan objek penelitian berupa website
pelaksanaan end-to-end testing jika dilakukan
yang telah ada (sudah di-launching), dengan
dengan manual testing.
skala yang lebih besar.
b. Dari hasil eksperimen dapat diketahui bahwa
end-to-end testing menggunakan automated
software testing membutuhkan lama V. DAFTAR PUSTAKA
pengerjaan yang tidak sebentar pada iterasi
pertama (pembuatan test script), akan tetapi 19759:2005, ISO /IEC TR. 2005. “Guide to the
ketika ada proses re-testing, lama pelaksanaan Software Engineering Body of Knowladge
end-to-end testing dapat dipangkas dengan ISO/IEC 19759:2005, ISO /IEC TR.”
hanya melakukan running kembali pada test Afzal, W. “Metrics in Software Test Planning and
script yang sudah ada . Test Design Processes.” Department of
Selain hal tersebut, dapat diketahui beberapa faktor Systems and Software Engineering. Blekinge
yang harus dipertimbangkan apakah end-to-end Institute of Technology. Karlskrona.
testing dilaksanakan dengan manual testing atau Sweerden, 2007.
automated software testing. Faktor tersebut antara Bertolino, Antonia, and Informazione A Faedo.
lain dalam pembuatan test report, training, atau 2007. “Software Testing Research :

24
JTT (Jurnal Teknologi Terapan) | Volume 6, Nomor 1, Maret 2020 p-ISSN 2477-3506
e-ISSN 2549-1938

Achievements , Challenges , Dreams Software Manova, Denitsa. “TASSA Methodology : End-to-


Testing Research : Achievements , Challenges End Testing of Web Service Compositions.”
, Dreams.” (September 2007). 2018 11th International Conference on the
Quality of Information and Communications
Bustamante, Justo. 2017. “Introduction of Protractor
Technology (QUATIC): 264–67.
as Test Automation Framework for AngularJS
Applications.” Mirza, Aamir Mehmood, and Muhammad Naeem
Ahmed Khan. 2018. “An Automated
Dobles, I, et, al. 2019. “Comparing the Effort and
Functional Testing Framework for Context-
Effectiveness of Automated and Manual Tests:
Aware Applications.” IEEE Access 6: 46568–
An Industrial Case Study.” Iberian Conference
83.
on Information Systems and Technologies,
CISTI 2019-June(June): 19–22. Myers, G.J, et al. 2011. The Art of Software Testing.
Dudekula, R.M. 2011. “Automated Software Palmér, T, H, et, Al. 2015. “Automated End-to-End
Testing: A Study of the State of Practice.” User Testing on Single Page Web Applications
(December). Examensarbete Utfört i Medieteknik Vid
Tekniska Högskolan Vid Linköpings
JUHA ITKONEN. 2008. “Do Test Cases Really
Universitet.” http://www.ep.liu.se/.
Matter? An Experiment Comparing Test Case
Based and Exploratory Testing.” Sharma, R M. 2014. “Quantitative Analysis of
Automation and Manual Testing.”
International Journal of Engineering and
Innovative Technology (IJEIT) 4(1): 252–57.

25

View publication stats

Anda mungkin juga menyukai