LAPORAN
Oleh:
BAB I...................................................................................................................................................................... 1
PENDAHULUAN .................................................................................................................................................. 1
BAB II .................................................................................................................................................................... 4
PERSIAPAN ........................................................................................................................................................ 17
BAB IV ................................................................................................................................................................. 22
TESTING ............................................................................................................................................................. 22
i
4.1 Manual Testing ...................................................................................................................................... 22
BAB V .................................................................................................................................................................. 76
KESIMPULAN .................................................................................................................................................... 76
ii
BAB I
PENDAHULUAN
Indonesia merupakan negara kepulauan yang terbesar keempat di dunia (Introducing the Indonesian
Education System, 2020). Per 30 Juni 2020, jumlah penduduk Indonesia telah mencapai 268.583.016 jiwa
(Kemendagri: Penduduk Indonesia 268 Juta, Lebih Banyak Pria, 2020). Peningkatan jumlah penduduk di
Indonesia dari tahun ke tahun menyebabkan terjadinya persaingan dalam memperoleh lapangan kerja. Alhasil,
terjadi peningkatan jumlah pengangguran di Indonesia hampir 60 ribu orang dalam setahun terakhir yaitu sebesar
4,99% dari penduduk Indonesia atau setara dengan 137,91 juta orang (Februari 2020: Tingkat Pengangguran
Terbuka (TPT) sebesar 4,99 persen, 2020). Tentunya, hal ini dapat menurunkan tingkat kesejahteraan dari
masyarakat Indonesia (The Role of Population in Economic Growth, 2017). Oleh karena itu, tidak dapat
dipungkiri bahwa inklusi keuangan menjadi salah satu fokus pemerintah dalam beberapa tahun terakhir. Berbagai
upaya telah dilakukan untuk membantu masyarakat Indonesia memperoleh akses ke layanan keuangan (Fintech
Indonesia User Legal Protection in Balance Borrowing Money Based on Information, 2018).
Faktanya, perkembangan akun kepemilikan kredit di Indonesia terus meningkat dimana dari 20 persen
pada 2011, menjadi 36 persen pada 2014 dan 49 persen pada 2017 (Financial Technology in Indonesia: A
Fragmented Instrument for Financial Inclusion?, 2019). Pada tahun 2014, sekitar 8 persen penduduk berusia 15
tahun atau lebih menggunakan kartu debit sebagai alat pembayaran. Persentase tersebut terus meningkat hingga
11 persen pada tahun 2017 (The Global Findex Database 2017: Measuring Financial Inclusion and the Fintech
Revolution, 2018). Hal ini menunjukkan tingginya kebutuhan masyarakat terutama kalangan muda dalam produk
keuangan peminjaman uang. Peningkatan tersebut juga diiringi dengan jumlah penetrasi internet di Indonesia
yang menunjukkan tren yang positif selama dekade terakhir dimana dimulai dari 500.000 pengguna pada tahun
1998 hingga mencapai 143.260.000 pengguna internet pada tahun 2017 dengan mayoritas berusia 13-34 tahun
sebagaimana yang terlihat dalam infografis di bawah ini (Financial Technology in Indonesia: A Fragmented
Instrument for Financial Inclusion?, 2019).
Sumber: (APJII: Penetrasi Pengguna Internet Indonesia Capai 143 Juta Orang, 2018)
1
Dinamika tersebut mendorong munculnya Financial Technology atau yang dikenal sebagai FinTech.
FinTech pada dasarnya merupakan industri baru yang menggunakan teknologi untuk menyediakan dan
memfasilitasi layanan keuangan dengan perantara keuangan yang dapat diakses melalui ponsel yang terhubung
dengan internet, atau sistem pembayaran digital (Digital Finance and FinTech: current research and future
research directions, 2017). Berdasarkan hal tersebut, FinTech dapat didefinisikan sebagai inovasi finansial yang
diberikan sentuhan teknologi modern (Influence of Financial Technology on National Financial Institutions,
2019). Di Indonesia sendiri, teknologi FinTech mulai berkembang pada tahun 2015, tepatnya pada saat
dibentuknya Asosiasi Fintech Indonesia (AFI) yang bertujuan untuk menyediakan partner bisnis yang mumpuni
dalam segi keuangan. Berkat hal tersebut pada tahun 2016, mulai bermunculan berbagai perusahaan FinTech.
Hingga saat ini, ada lebih dari 150 FinTech yang telah terdaftar dan diawasi oleh Otoritas Jasa Keuangan (OJK)
(An Overview of Indonesian FinTech Application, 2019).
Pada dasarnya dengan adanya teknologi FinTech, masyarakat dapat melakukan segala aktivitas transaksi
keuangan dengan lebih mudah (Financial Technology (FinTech) A New Transaction In Future, 2017). Fintech
menyediakan kesempatan bagi pemilik Usaha Mikro Kecil dan Menengah (UMKM) untuk mengembangkan
usahanya dengan menyediakan suatu layanan dan produk keuangan. Hal ini tentunya mempermudah proses
pengembangan bisnis UMKM. Terlebih, layanan transaksi online yang disediakan oleh FinTech telah dilengkapi
dengan sejumlah teknologi yang memungkinkan transaksi menjadi sangat aman (Data security and consumer
trust in FinTech innovation in Germany, 2018).
Perkembangan FinTech yang cukup pesat di Indonesia menyebabkan target pasar teknologi ini meluas
hingga hampir ke seluruh kalangan usia. Perusahaan Fintech yang awalnya hanya menargetkan masyarakat
berpenghasilan, kini juga menargetkan masyarakat muda yang bahkan belum berpenghasilan seperti mahasiswa.
Meskipun belum banyak FinTech yang menyediakan akses peminjaman uang untuk mahasiswa, tetapi hal ini
dapat dijadikan sebagai suatu potensi pasar yang dapat dipertimbangkan. Salah satu FinTech yang menyediakan
produk keuangan bagi mahasiswa adalah “Cicil” dan “KoinWorks”.
Baik “Cicil” maupun “KoinWorks” merupakan perusahaan yang terbilang baru dalam industri FinTech
dimana “Cicil” terdaftar dalam Otoritas Jasa Keuangan (OJK) pada tahun 2017 sedangkan “KoinWorks” terdaftar
dalam Otoritas Jasa Keuangan (OJK) pada tahun 2019 (Perusahaan Fintech Lending Berizin dan Terdaftar di
OJK, 2020). Oleh karena itu, kedua aplikasi tersebut dipilih sebagai objek testing dalam proyek “Testing and
Implementation on Financial Technology Application”. Dalam proyek tersebut, akan dilakukan sejumlah jenis
testing diantaranya ialah manual testing dan android automated testing dengan menggunakan aplikasi “Cicil”,
serta web automated testing dengan menggunakan aplikasi “KoinWorks”. Testing dilakukan pada dua aplikasi
yang berbeda karena aplikasi “Cicil” memiliki fitur dan workflow yang sama baik dalam mobile application
maupun dalam website. Oleh karena itu, dilakukan web automated testing pada website “KoinWorks”. Dengan
adanya proses manual dan automated testing ini, diharapkan dapat mengevaluasi dan meningkatkan kinerja dari
aplikasi “Cicil” dan “KoinWorks” sehingga kedua aplikasi tersebut dapat digunakan secara optimal.
2
1.2 Tujuan
Adapun tujuan dari pengujian aplikasi “Cicil” antara lain sebagai berikut.
1.2.1. Menganalisa aplikasi “Cicil” berdasarkan 11 Mc’Call Factors.
1.2.2. Mengetahui bug dan efektivitas penggunaan user interface yang ada dalam aplikasi “Cicil”.
1.2.3. Menganalisa fitur-fitur yang disediakan oleh “Cicil”.
1.3 Manfaat
Adapun manfaat yang dapat diperoleh dari pengujian aplikasi “Cicil” adalah sebagai berikut.
1.3.1. Mengetahui hasil analisa terhadap aplikasi “Cicil” berdasarkan 11 Mc’Call Factors.
1.3.2. Memberikan rekomendasi cara untuk menyelesaikan bug untuk meminimalisir adanya bug dalam
aplikasi.
1.3.3. Memberikan rekomendasi fitur yang dapat ditambahkan ke “Cicil”.
3
BAB II
LANDASAN TEORI
Sumber: (Apa Itu Fintech? Apa Pentingnya Fintech Bagi Pelaku Usaha Indonesia?, 2017)
FinTech di Indonesia pada dasarnya memiliki dampak positif terhadap pertumbuhan ekonomi dimana
FinTech berkontribusi terhadap Produk Domestik Bruto lebih dari Rp60 triliun pada tahun 2019. Sementara itu,
jika ditinjau dari sisi serapan tenaga kerja, FinTech juga mampu menambah lapangan kerja sebesar 362 ribu orang
4
baik secara langsung maupun tidak langsung. Tidak hanya itu, keberadaan FinTech P2P Lending juga berdampak
terhadap penurunan angka kemiskinan sebesar 177 ribu orang dan mengurangi ketimpangan (rasio gini) sebesar
0,01 (Studi Dampak Fintech P2P Lending terhadap Perekonomian Nasional, 2019). Adanya dampak positif
tersebut tentunya tidak terlepas dari sejumlah segmen yang berperan dalam industri FinTech.
Sumber: (Financial Technology as an Innovation Strategy for Digital Payment Services in the Millenial
Generations, 2018)
Sektor financing mencakup segmen yang menyediakan pembiayaan bagi individu dan bisnis. Segmen ini
dapat dibagi lagi menjadi yang penawarannya didasarkan pada partisipasi sejumlah besar contributor (subsektor
crowdfunding) dan mereka yang menawarkan layanan kredit tanpa partisipasi orang banyak (subsektor kredit).
Segmen asset management mencakup fintech yang menawarkan saran, pengelolaan aset, dan indikator agregat
dari personal wealth. Segmen ini juga dibagi menjadi subsegmen lebih lanjut. Social trading adalah bentuk
investasi yang investornya dapat mengamati, mendiskusikan, dan menyalin strategi investasi atau portofolio dari
anggota jaringan sosial lainnya. Subsegmen robo-advice mengacu pada sistem manajemen portofolio yang
memberikan saran investasi berbasis algoritma dan sebagian besar otomatis, terkadang juga membuat keputusan
investasi. Subsegmen pengelolaan keuangan pribadi mencakup perusahaan FinTech yang menawarkan
perencanaan keuangan pribadi, khususnya administrasi dan penyajian data keuangan yang menggunakan
perangkat lunak atau menggunakan layanan berbasis aplikasi (FinTech (Financial Technology): What is it and
How to Use Technologies to Create Business Value in Fintech Way?, 2018).
Segmen payments adalah istilah umum yang berlaku untuk FinTech yang aplikasi dan layanannya
menyangkut transaksi pembayaran nasional dan internasional. Di bawah segmen ini juga terdapat subsegmen
5
blockchain dan cryptocurrency yang mencakup FinTech yang menawarkan mata uang virtual (cryptocurrency)
sebagai alternatif dari uang biasa, seperti cara pembayaran legal yang dimungkinkan untuk menyimpan,
menggunakan, dan menukar kripto. Salah satu kripto yang paling terkenal adalah “Bitcoin” (FinTech (Financial
Technology): What is it and How to Use Technologies to Create Business Value in Fintech Way?, 2018). Segmen
FinTech lainnya menggambarkan bisnis FinTech yang tidak dapat diklasifikasikan oleh tiga fungsi bank
tradisional lainnya, yaitu transaksi pembiayaan, pengelolaan aset, dan pembayaran. FinTech menawarkan
asuransi atau memfasilitasi akuisisi, termasuk dalam subsegmen asuransi. FinTech juga sering disebut sebagai
insur-techs karena menawarkan asuransi peer-to-peer, yaitu sekelompok pemegang polis berkumpul dan
menganggap tanggung jawab kolektif dalam kasus kerusakan. (FinTech (Financial Technology): What is it and
How to Use Technologies to Create Business Value in Fintech Way?, 2018). Di samping itu, FinTech juga
seringkali disebut sebagai kolaborasi antara teknologi dan industri finansial. Oleh karena itu, perkembangan
teknologi seperti mobile application yang umumnya digunakan sebagai sarana bertransaksi juga dapat
berpengaruh terhadap perkembangan dari FinTech itu sendiri.
6
Sumber: (Indonesia Digital 2019: Tinjauan Umum, 2019)
7
libraries SQLite, libraries SSL dan Webkit, libraries liveWebcore, dan libraries 3D implementasi OpenGL
ES 1.0 API’s.
4. Android Run Time
Android Run Time dibagi menjadi dua bagian, yaitu sebagai berikut
a) Core Libraries. Aplikasi android dibangun dalam bahasa Java, sementara Dalvik sebagai virtual
mesinnya bukan virtual machine Java, sehingga diperlukan sebuah libraries yang berfungsi untuk
menerjemahkan bahasa Java yang ditangani oleh core libraries.
b) Dalvik Virtual Machine, adalah mesin berbasis register yang dioptimalkan untuk menjalankan fungsi-
fungsi secara efisien, dimana merupakan pengembangan yang mampu membuat linux kernel untuk
melakukan threading dan manajemen tingkat rendah.
5. Linux Kernel
Linux Kernel adalah layer dimana inti dari sistem operasi pada suatu Android berada. Layer ini
menyimpan file-file sistem yang mengatur seluruh sistem processing, memory, resource, 11 drivers dan
operasi android lainnya. Untuk android sendiri Linux Kernel yang digunakan adalah linux kernel release
2.6
Adapun kelebihan dari penggunaan mobile application Android adalah sebagai berikut (Aplikasi
Pembelajaran Trigonometri Berbasis Android Menggunakan Algoritma Fisher Yates Shuffle, 2017)
a. Complete platform
Android merupakan sistem operasi yang sangat aman dan banyak menyediakan tools yang stabil untuk
membangun sebuah aplikasi dan menjadikan peluang untuk developer aplikasi melakukan pendekatan yang
komperhensif ketika sedang mengembangkan platform Android yang dibangun. Selain itu android juga
merupakan platform yang lengkap, terbuka, bebas, serta informasi lainnya yang dapat diunduh secara gratis
menjadikan android adalah platform yang sempurna (complete).
b. Free platform
Android merupakan free platform dimana tidak ada biaya untuk membayar lisensi ataupun royalti dalam
penggunaannya.
c. Sistem operasi yang merakyat
Sistem operasi Android merupakan jenis sistem operasi yang paling banyak digunakan, sehingga dapat
dengan mudah ditemukan di Indonesia pada berbagai macam brand smartphone dari harga yang mahal
sampai dengan harga yang murah.
Pada sisi lain, juga terdapat sejumlah kekurangan pada mobile application Android yaitu sebagai berikut
(Perancangan Aplikasi Android Tentang Tips Kesehatan dan Kegunaan Alat Fitness, 2017)
a. Android harus selalu terhubung dengan internet
Smartphone yang menerapkan sistem Android sangat memerlukan koneksi internet yang aktif dalam
penggunaannya.
b. Banyaknya iklan
8
Iklan ini biasa nya terpampang diatas atau bawah aplikasi pada sistem operasi android. Meskipun tidak
memberikan pengaruh terhadap aplikasi yang sedang digunakan tetapi banyaknya iklan ini sangat
mengganggu pengguna pada saat pemakaian.
c. Tidak hemat daya
Sistem operasi Android sedikit lebih boros daya dibandingkan dengan sistem operasi lain, hal ini dibuktikan
dengan banyak nya keluhan dari pegguna android mengenai daya / baterai pada smartphone yang digunakan
oleh pengguna.
Dalam konteks pengujian terhadap aplikasi, terdapat dua jenis pengujian yang dapat dilakukan dalam mobile
application, yaitu manual testing dan automated testing.
Manual testing adalah sebuah teknik testing dimana tester menyiapkan test cases secara manual dan
mengeksekusi test cases untuk mengidentifikasi defect di software (Evaluasi Penggunaan Manual dan Automated
Software Testing pada Pelaksanaan End-To-End Testing, 2020). Berdasarkan hal tersebut, secara garis besar
dapat dikatakan manual testing adalah salah satu tipe testing dari software testing tools yang menggunakan cara
tradisional dalam menemukan bug/error pada aplikasi yang dibangun. Walaupun upaya yang dikeluarkan sedikit
lebih besar dan cukup memakan banyak waktu, tetapi manual testing pada dasarnya sangat berguna dalam
pengujian untuk test case tertentu. Tujuan dari testing sendiri adalah untuk mampu mengenali error atau bug dari
suatu aplikasi (Evaluasi Penggunaan Manual dan Automated Software Testing pada Pelaksanaan End-To-End
Testing, 2020). Secara umum penerapan manual testing adalah sebagai berikut.
a. Menganalisa requirement
b. Membuat test plan
c. Membuat test case
d. Eksekusi dari test case
e. Mencari kesalahan
f. Memperbaiki kesalahan
Manual testing adalah pengujian yang tergolong sebagai white box testing. Pengujian dengan
menggunakan metode white box adalah sebuah metode dimana dalam pengujian ini memiliki fokus utama yaitu
menyelidiki secara rinci logika internal dan struktur kode sumber. Dalam pengujian ini, penguji harus memiliki
pengetahuan penuh mengenai kode sumber (An Innovative Approach to Investigate Various Software Testing
Techniques and Strategies, 2016).
9
Sumber: (The Quality Assessment of Software Testing Procedure and Its Effects, 2015)
Dalam manual testing, perangkat lunak diuji secara manual dengan menggunakan test case. Perancang
pengujian melakukan semua percobaan (test-case) dan menjalankan aplikasi secara manual guna menunjukkan
apakah langkah tertentu telah dipenuhi secara efektif atau gagal. Untuk pengujian manual, informasi yang
dibutuhkan oleh penguji hanyalah test-case dan pedoman tentang cara menjalankan kasus tersebut. Sesuai
rencana pengujian, test-case harus terdiri dari semua jenis pengujian. Dokumen desain digunakan sebagai sumber
untuk menulis kasus uji oleh seorang insinyur penguji. Pada dasarnya, penggunaan manual testing sangat sesuai
ketika perangkat lunak dan antarmuka penggunanya tidak cukup stabil, dan memulai otomatisasi bukanlah cara
yang sesuai (The Quality Assessment of Software Testing Procedure and Its Effects, 2015). Adapun kelebihan
dan kekurangan dari manual testing antara lain sebagai berikut.
Pada umumnya, automated testing adalah proses penggunaan perangkat lunak secara terpisah dari
perangkat lunak yang diuji untuk mengontrol pelaksanaan pengujian dimana dilakukan perbandingan hasil aktual
dengan hasil yang diharapkan (A Study of Automated Software Testing: Automation Tools and Frameworks,
2019). Automated testing dapat dijadikan solusi untuk memaksimalkan cakupan pengujian dalam waktu yang
tersedia dan meningkatkan keandalan dan kualitas perangkat lunak. Automated testing juga melibatkan
penggunaan alat otomatisasi dan/atau dengan kerangka kerja dalam menjalankan pengujian.
Adapun kategorisasi umum dari automated testing meliputi boundary value testing, branch coverage
testing, prototyping, dan syntax testing (Software Testing and Continous Quality Improvement, 2017). Dalam
kaitannya dengan automated testing, juga terdapat automated testing tools yakni perangkat lunak yang digunakan
dalam pengujian perangkat lunak lainnya yang dirancang dengan bantuan alat otomatisasi. Ada berbagai jenis
automated testing tools yang dapat digunakan dalam automated testing yang dirancang dengan tujuan tertentu.
Oleh karena itu, perlu dilakukan analisa terhadap automated testing tools yang digunakan berdasarkan anggaran,
fitur-fitur yang disediakan, persyaratan dalam pengujian, dan keterampilan yang dibutuhkan untuk
mengoperasikan tools tersebut. Pada umumnya, proses analisa tersebut akan membutuhkan banyak tenaga dan
waktu, namun proses tersebut akan sangat membantu dalam memastikan kesuksesan proyek pengujian (Choose
The Right Automation Tool and Framework is Critical to Project Success, 2015). Adapun beberapa automated
testing tools yang umumnya digunakan dalam automated testing antara lain “Selenium”, “Unified Functional
Testing (UFT)”, ““Katalon Studio””, dan “TestComplete”. Dalam proses pengujian automated testing, juga
terdapat sejumlah sub-proses yang dilakukan yaitu sebagai berikut (Test Automation: Not Just for Test Execution,
2017).
a. Test-case design
Test-case design umumnya menunjuk daftar case pengujian atau persyaratan tes untuk memenuhi
kriteria cakupan, atau tujuan teknik lainnya. Test-case design adalah kegiatan menentukan daftar case
pengujian dan persyaratan pengujian. Proses ini meliputi tahap mengidentifikasi data pengujian yang
mencakup data input pengujian dan keluaran yang diharapkan. Identifikasi tersebut dapat dilakukan baik
berdasarkan kriteria ataupun berdasarkan pengetahuan manusia seperti pada pengujian eksplorasi
(Introduction to Software Testing, 2017).
Melakukan test-case design berbasis kriteria secara lengkap biasanya dilakukan dengan mode
otomatis, dengan melibatkan banyak pengetahuan yang tersedia yang disebut sebagai software test-data
generation. Dalam test-case tersebut, teknik dan alat yang berbeda dapat dijadikan cara untuk menghasilkan
data pengujian. Selain itu, proses tersebut juga dapat mengotomatiskan pendekatan berbasis kriteria
kombinatorial sebagai pengujian berpasangan dengan menggunakan alat komersial yang mampu
11
menghasilkan input pengujian (Introduction to Software Testing, 2017). Adapun keluaran dari aktivitas test-
case design adalah sekumpulan test case berupa masukan dan keluaran yang diharapkan yang akan
digunakan pada proses berikutnya yakni test-scripting.
b. Test-scripting
Test-scripting pada dasarnya mendokumentasikan case pengujian dalam pengujian secara manual
maupun dengan menggunakan skrip atau kode dalam automated testing. Adapun keluaran dari aktivitas test-
scripting adalah skrip pengujian manual dalam berbagai format, atau dalam proses automated testing
misalnya, skrip yang dihasilkan dari automated testing tools seperti JUnit, HP QTP (Test Automation: Not
Just for Test Execution, 2017).
c. Test-execution
Test-execution menjalankan case pengujian pada perangkat lunak yang sedang diuji dan kemudian
merekam output (Introduction to Software Testing, 2017). Pada dasarnya, test-execution juga bisa dilakukan
secara manual, otomatis sebagian, atau otomatis penuh seperti pada proses sebelumnya. Dalam proses test-
execution ini, terdapat kondisi saling ketergantungan antar pilihan keputusan yang dibuat dalam aktivitas.
Misalnya, jika penguji memilih mengembangkan semua pengujian sebagai rangkaian pengujian otomatis,
test-execution jelas akan dilakukan sepenuhnya otomatis. Sebaliknya, jika tim penguji memutuskan untuk
mengembangkan semua pengujian mereka sebagai pengujian manual, test-execution harus dilakukan
sepenuhnya manual (Test Automation: Not Just for Test Execution, 2017).
d. Test evaluation
Test evaluation merupakan proses evaluasi hasil tes yang bernilai lulus atau gagal. Umumnya proses
ini juga dikenal sebagai test oracle atau test verdict. Dalam test evaluation, terdapat tiga pendekatan antara
lain sebagai berikut. Pertama, seorang penguji yang melakukan test evaluation. Kedua, dengan memutuskan
untuk memasukkan hard code dari test evaluation sebagai poin verifikasi dalam kode uji. Ketiga, dengan
menggunakan machine learning dan artificial intelligence sebagai kecerdasan buatan untuk proses test
evaluation (Test Automation: Not Just for Test Execution, 2017).
Penggunaan automated testing dapat meningkatkan akurasi dan kecepatan dalam menemukan bugs
dibandingkan dengan menggunakan manual testing. Oleh sebab itu, penggunaan automated testing lebih efisien
dibandingkan penggunaan manual testing karena proses pengujian lebih hemat waktu dan tenaga. Terlebih,
penggunaan automated testing script juga dapat digunakan berulang (A Study of Automated Software Testing:
Automation Tools and Frameworks, 2019). Tidak hanya itu, penggunaan automated testing juga dapat
meningkatkan pengujian paralel dengan penggunaan skenario pengujian yang berbeda. Di samping itu, automated
testing juga memungkinkan hasil pengujian yang lebih akurat (Advantages and Disadvantages of Automated
Testing, 2020).
Pada sisi lain, penggunaan automated testing harus didasarkan atas analisa terhadap automated testing tools
untuk memastikan kesesuaian penggunaan tools dengan kebutuhan testing. Dalam menggunakan testing tools
dibutuhkan pengetahuan mengenai tools tersebut sehingga penggunaan testing tools terbatas pada orang yang
12
memiliki kemampuan pengoperasian tools (Advantages and Disadvantages of Automated Testing, 2020).
Penggunaan automated testing tools juga membutuhkan biaya pembelian tools, dan biaya pemeliharaan yang
cukup besar. Selain itu, dalam penggunaan automated testing tools juga diperlukan kemahiran untuk menulis skrip
otomasi pada beberapa automated testing tools (A Study of Automated Software Testing: Automation Tools and
Frameworks, 2019).
“Katalon Studio” merupakan sebuah software yang digunakan untuk automation testing suatu aplikasi baik
berbasis website maupun mobile apps. Menurut pengertian dari salah satu buku, “Katalon Studio” adalah sebuah
platform pengujian interaktif yang open source, yang dibangun di atas Selenium dan Appium. Katalon dapat
digunakan untuk menguji aplikasi dan API berbasis web dan seluler (Stop Coding, 2016).
Pada “Katalon Studio”, terdapat tiga fitur utama yang dapat membantu pengujian di berbagai platform.
Fitur-fitur tersebut antara lain API Testing, Web Testing, dan Mobile Testing (Analisis GUI Testing pada Aplikasi
E-Commerce menggunakan Katalon, 2019). Dalam “Katalon Studio” terdapat juga test management. Pada test
14
management, test data akan ditempatkan dalam struktur folder yang fleksibel untuk memaksimalkan penggunaan
data. Dalam test management biasanya mendukung data dinamis seperti data dari CSV, Excel, ataupun database.
“Katalon Studio” juga memiki kegunaan dan fungsi dalam hal menyediakan object spy untuk melakukan pelacakan
elemen pada setiap aplikasi.
“Katalon Studio” juga memiliki fungsi analitik untuk setiap aplikasi dashboard. Tentunya ini berguna untuk
memperoleh suatu laporan yang baik dari suatu tes yang dilakukan berulang. Biasanya proses analitiknya di
tampilkan dalam bentuk screenshoot, video, maupun logs. “Katalon Studio” juga memiliki fitur untuk melakukan
record dan replay. Record biasanya digunakan untuk merekam pengujian atau eksekusi dari suatu aplikasi dan
kemudian hasilnya akan disimpan dalam bentuk code agar dapat dilakukan replay kapanpun di inginkan.
Pengintegrasiannya dapat dilakukan dengan tools JIRA, Slack, maupun CI/CD.
Selain itu “Katalon Studio” melakukan eksekusi pengujian paralel dengan didukung melalui integrasi
dengan SauceLabs maupun BrowserStack. “Katalon Studio” menyediakan eclipse seperti IDE untuk melakukan
penulisan code maupun untuk mencatat setiap langkahnya. “Katalon Studio” mendukung pengujian API-REST dan
SOAP untuk melakukan pengukian yang fungsional dan end-to-end (Unified Approach Towards Automation of
any Desktop Web, Mobile Web, Android, iOS, REST and SOAP API Use Cases , 2018).
Adapun kelebihan dari penggunaan “Katalon Studio” sendiri adalah sebagai berikut. Saat menggunakan
“Katalon Studio”, pengguna tidak perlu membayar biaya perizinan (licensing) dan juga biaya pemeliharaan
“Katalon Studio” sehingga pengguna studio dapat menghemat biaya. Kemudian, “Katalon Studio” juga dapat
membantu mengintegrasikan frameworks dan fitur-fitur yang diperlukan dalam melakukan pembuatan dan
eksekusi pada suatu quick test case. “Katalon Studio” dibangun di atas Selenium namun, menghilangkan kebutuhan
advanced programming skill yang diperlukan dalam Selenium.
Pada sisi lain juga terdapat beberapa kekurangan pada “Katalon Studio”. Pada “Katalon Studio”, meskipun
ditawarkan secara gratis kepada pengguna namun layanan community support nya kurang baik. Kemudian fitur
yang disediakan juga terbatas. Seperti halnya pada bahasa pemrograman yang ada pada “Katalon Studio”. Pada
“Katalon Studio” hanya mendukung bahasa pemrograman Java/Groovy saja, tidak di dukung oleh bahasa
pemrograman lainnya. (A Study of Automated Software Testing: Automation Tools and Frameworks, 2019).
Pada dasarnya, struktur organisasi yang dipilih juga dapat mempengaruhi produktivitas, kualitas, kepuasan
pelanggan, moral karyawan, dan anggaran. Hal ini disebabkan karena testing adalah aktivitas terdistribusi yang
dilakukan pada siklus hidup pengembangan software. Oleh karena itu, penting utnuk melakukan penyusunan
struktur organisasi dalam project IT testing. Pada umumnya, dalam sebuah testing team, terdapat sejumlah divisi
yang berperan di dalamnya sebagaimana yang terlihat dalam bagan sebagai berikut.
15
Bagan tersebut merupakan struktur utama dalam testing team untuk project IT yang berskala kecil. Dalam
bagan tersebut, terdapat tiga peranan utama yakni project manager, test manager, dan development manager. Baik
test manager maupun development manager, keduanya memiliki tanggung jawab untuk memberikan laporan atas
proses yang dilakukan kepada project manager. Test manager umumnya akan memimpin sebuah test group
dimana test group ini tidak independen seutuhnya karena test group akan membantu proses pengembangan sistem
aplikasi yang dilakukan oleh development group agar project tersebut dapat selesai tepat waktu. Pada dasarnya,
test manager juga akan memimpin quality control manager dan quality assurance manager. Quality control
manager bertanggung jawab untuk melakukan pengetesan dengan mencari kesalahan dalam aplikasi. Sementara
itu, quality assurance manager tidak hanya bertanggung jawab untuk menemukan kesalahan tetapi juga mencegah
timbulnya kesalahan serta mengusahakan peningkatan kualitas produk secara terus-menerus (Pengujian dan
Implementasi Sistem, 2018)
16
BAB III
PERSIAPAN
1. Project Manager
Project manager dalam tim ini adalah Tania Ciu. Project manager bertanggung jawab dalam
merencanakan meeting, melakukan monitoring terhadap eksekusi dari manual testing dan automated
testing, mengarahkan dan membantu tim dalam proses testing baik pembuatan skenario pengujian (test
case) maupun dalam proses eksekusi pengujian, serta dokumentasi testing dalam laporan.
17
Automated tester team terdiri atas seluruh anggota dalam tim yakni Cinthiya, Corina Sugiarto,
Isabella Donita, Luke Darmawan, Tania Ciu, dan Veronica Landrea D.O. Automated tester team memiliki
tanggung jawab dalam melakukan automated testing dengan menggunakan software “Katalon”. Adapun
sejumlah aktivitas yang juga menjadi bagian dari tanggung jawab automated tester team yaitu pembuatan
test case, melakukan dokumentasi atas testing yang dilakukan berupa screenshoot, dan melakukan analisa
terhadap hasil dari automated testing.
18
3.2 Timeline
MINGGU KE-1 MINGGU KE-2 MINGGU KE-3 MINGGU KE-4 MINGGU KE-5 MINGGU KE-6 MINGGU KE-7
TASK TITLE
S S R K J S S R K J S S R K J S S R K J S S R K J S S R K J S S R K J
19
MINGGU KE-8 MINGGU KE-9 MINGGU KE-10 MINGGU KE-11 MINGGU KE-12 MINGGU KE-13 MINGGU KE-14
TASK TITLE
S S R K J S S R K J S S R K J S S R K J S S R K J S S R K J S S R K J
20
3.3 Budgeting
Tania Ciu Cinthiya Corina Sugiarto Isabella Donita H Luke Darmawan Veronica Landrea D.O
No. Kebutuhan Total
(Project Manager) (Tester) (Tester) (Tester) (Tester) (Tester)
21
BAB IV
TESTING
4.1.1.1 Correctness
22
No. Skenario Expected Result Actual Result End Result Recommendation
2. Ubah password: Proses ubah password User masih berada di layer ubah password dengan field “Kata Sandi” masih terisi Success Memberikan notifikasi wrong password
Memasukan password lama yang salah gagal dengan password sebelumya.
23
No. Skenario Expected Result Actual Result End Result Recommendation
3. Register: Proses register gagal User masih berada di layar register dengan tombol register tidak dapat berfungsi Success Memberikan notifikasi mengenai ketentuan
Memasukkan kata sandi tidak sesuai pengisian kata sandi yang benar.
dengan ketentuan
24
4.1.1.2 Reliability
1. Memasukkan url produk yang dijual di Proses cicilan gagal Simulasi pembiayaan tetap ditampilkan walaupun Failed Menampilkan notifikasi bahwa produk yang dijual melalui shopee tidak dapat
shopee ke dalam aplikasi “Cicil” menggunakan link dari shopee dicicil melalui “Cicil” karena “Cicil” tidak bekerjasama dengan e-commerce
shopee.
25
No. Skenario Expected Result Actual Result End Result Recommendation
2. Memasukkan url produk yang stoknya telah habis dan Proses cicilan gagal User dapat mengajukan cicilan. Tidak ditemukan perbedaan antara tampilan Failed Menampilkan notifikasi bahwa produk yang
mengajukan cicilan terhadap produk tersebut. pengajuan cicilan dengan produk out of stock atau available stock. ingin dicicil sedang kehabisan stok.
26
No. Skenario Expected Result Actual Result End Result Recommendation
3. Memasukkan url produk yang harganya Proses cicilan gagal karena harga produk tidak Muncul alert, dan permintaan maaf karena cicilan Success Menampilkan notifikasi bahwa cicilan tidak bisa diajukan
di bawah Rp250.000 mencapai minimum pembelian. tidak bisa diajukan. karena produk memiliki harga dibawah Rp250.000
27
No. Skenario Expected Result Actual Result End Result Recommendation
4. Memasukkan url produk yang akan dibeli kemudian mengajukan Proses cicilan gagal User langsung diarahkan ke halaman login Success Menampilkan notifikasi bahwa pengguna harus melakukan
cicilan terhadap produk tersebut tanpa melakukan proses login login terlebih dahulu untuk dapat melanjutkan proses cicil
28
4.1.1.3 Efficiency
1. Menjalankan aplikasi “Cicil” di Waktu yang dibutuhkan oleh aplikasi “Cicil” yang Waktu yang dibutuhkan untuk menjalankan aplikasi Failed Menampilkan rekomendasi untuk menggunakan aplikasi
smartphone yang memiliki RAM 2GB dan dijalankan di smartphone yang memiliki RAM 2GB “Cicil” di smartphone yang memiliki RAM 3GB “Cicil” pada smartphone yang memiliki RAM 3GB atau
smartphone yang memiliki RAM 3GB dan sama dengan yang dijalankan di smartphone yang lebih cepat dibandingkan saat aplikasi dijalankan di lebih besar dari 3GB.
menghitung waktu yang dibutuhkan untuk memiliki RAM 3GB. smartphone yang memiliki RAM 2GB.
dapat masuk ke dalam aplikasi.
Aplikasi “Cicil” dijalankan di smartphone yang memiliki RAM 3GB Aplikasi “Cicil” dibuka di smartphone yang memiliki RAM 2GB
29
No. Skenario Expected Result Actual Result End Result Recommendation
2. Membandingkan kecepatan menjalankan Waktu yang dibutuhkan kedua smartphone yang Aplikasi “Cicil” yang diakses dengan smartphone Failed Menampilkan rekomendasi untuk menggunakan
aplikasi “Cicil” di smartphone yang memiliki memori 32GB dan smartphone yang memiliki yang memiliki memori 32GB lebih cepat aplikasi “Cicil” pada smartphone yang memiliki
memiliki memori 32GB dan smartphone memori 16GB untuk menjalankan aplikasi “Cicil” sama dibandingkan smartphone yang memiliki memori memori 32GB atau lebih dari 32GB.
yang memiliki memori 16GB 16GB.
Aplikasi “Cicil” dijalankan di smartphone yang memori 32GB Aplikasi “Cicil” dibuka di smartphone yang memiliki memori 16GB
30
Skenario Expected Result Actual Result End Result Recommendation
No.
3. Membandingkan kecepatan membuka aplikasi Waktu yang dibutuhkan smartphone yang Aplikasi “Cicil” yang diakses dengan Failed Menampilkan rekomendasi untuk menggunakan
“Cicil” di smartphone yang memiliki CPU memiliki CPU dengan Kernel Version smartphone yang memiliki CPU dengan Kernel aplikasi “Cicil” pada smartphone yang memiliki CPU
dengan Kernel Version 3.18.66-g849f17f dan 3.18.66-g849f17f dan smartphone yang Version 3.18.66-g849f17f lebih cepat dengan kernel version terbaru.
smartphone yang memiliki CPU dengan Kernel memiliki CPU dengan Kernel Version dibandingkan yang diakses pada smartphone
Version 3.10.49-12284047. 3.10.49-12284047 untuk menjalankan aplikasi yang memiliki CPU dengan Kernel Version
“Cicil” sama 3.10.49-12284047.
Aplikasi “Cicil” dijalankan di yang memiliki CPU dengan Kernel Version 3.18.66-g849f17f Aplikasi “Cicil” dijalankan di smartphone yang memiliki CPU dengan Kernel Version 3.10.49-12284047.
31
4.1.1.4 Integrity
1. Melakukan pengajuan cicilan tanpa Proses cicilan gagal Pengguna berada dalam halaman Success Aplikasi sudah melakukan fungsi integrasi dengan baik, namun informasi mengenai “Harus Melakukan
melakukan proses verifikasi data. verifikasi Verifikasi” diberitahukan sebelumnya seperti informasi konfirmasi pemesanan pop up yang ada di bawah ini.
35
No. Skenario Expected Result Actual Result End Result Recommendation
2. Melakukan proses registrasi dengan menggunakan Proses registrasi Email terdaftar dan tidak dapat dilakukan proses verifikasi dengan Failed Pada proses registrasi akun, jika user memasukkan nomor hp yang
nomor hp yang sama dengan akun yang lainnya gagal menggunakan OTP karena nomor hp yang digunakan telah digunakan sama dengan akun lainnya, maka akan muncul notifikasi untuk
pada akun lainnya menggunakan nomor hp lain dalam proses registrasi akun tersebut.
36
No. Skenario Expected Result Actual Result End Result Recommendation
3. Mendaftar dengan menggunakan kode OTP dari kode yang Proses registrasi gagal Muncul notifikasi bahwa kode OTP Success Menampilkan notifikasi bahwa kode OTP tidak valid
diberikan untuk proses verifikasi nomor lain tidak valid
37
4.1.1.5 Usability
1. Url produknya harus menggunakan link dari barang yang User tidak bisa User tidak bisa mengetahui apakah barang Failed Menampilkan notifikasi bahwa input yang dimasukkan harus berupa link
diinginkan sehingga cukup sulit dalam pengaplikasiannya melakukan cicilan tersebut sesuai atau tidak dan tidak dapat bukan nama produk.
Skenario: Memasukan nama produk ke cicil produk mengetahui konversi cicilan yang sesuai. Maaf, kami tidak dapat memproses perhitungan cicilan secara otomatis.
38
No. Skenario Expected Result Actual Result End Result Recommendation
2. Mencari menu logout pada halaman akun dari aplikasi, namun Menu logout ditampilkan di bagian User tidak menemukan menu tersebut di Failed Menampilkan menu logout dalam halaman akun
tidak ditemukan menu logout. Hal ini menunjukkan bahwa depan halaman akun halaman akun sehingga user harus karena logout berkaitan dengan akun user.
peletakan menu tidak sesuai dengan layer yang terkait yakni memeriksa setiap pilihan menu di setiap
layer akun. Alhasil, dapat dikatakan desain user interface dari layer dan baru diketahui bahwa fitur
aplikasi kurang efisien karena hal tersebut mengakibatkan user logout berada di pengaturan.
kesulitan mencari menu tertentu.
39
No. Skenario Expected Result Actual Result End Result Recommendation
3. Pilih produk dari platform yang bekerja sama dengan cicil Langsung diarahkan masuk Masih berada di website merchant “jakartanotebook” dan Failed Menampilkan tombol atau untuk masuk kembali
misalnya “jakartanotebook” dengan mengklik langsung kembali untuk melakukan tidak terdapat instruksi untuk menyalin url produk untuk ke aplikasi “Cicil”
merchant melalui aplikasi cicil kemudian pilih produk di website proses cicil digunakan dalam proses pengajuan cicilan
yang ditampilkan
40
4.1.2 Product Transition Software Quality Factors
4.1.2.1 Reusability
No. Skenario
41
No. Skenario
42
No. Skenario
43
4.1.2.2 Portability
Skenario Expected Result Actual Result End Result Recommendation
No.
1. Menjalankan aplikasi “Cicil” pada lingkungan customer dan Customer dan student ambassador Customer dan student ambassador Failed Membuat proses login terdiri atas dua pilihan yakni login
student ambassador memiliki aplikasi yang berbeda memiliki aplikasi yang sama sebagai customer atau login sebagai student ambassador.
44
No. Skenario Expected Result Actual Result End Result Recommendation
2. Menjalankan aplikasi “Cicil” pada operating Aplikasi “Cicil” dapat dijalankan pada Aplikasi hanya dapat dijalankan di Android, Failed Aplikasi “Cicil” juga dikembangkan pada operating system IOS
system yang berbeda yaitu di Android dan IOS operating system Android dan IOS tidak tersedia di operating system IOS sehingga pengguna smartphone berbasis IOS juga dapat menggunakan
aplikasi “Cicil”
45
No. Skenario Expected Result Actual Result End Result Recommendation
3. Menjalankan aplikasi “Cicil” pada browser Aplikasi “Cicil” dapat dijalankan pada browser Aplikasi “Cicil” dapat dijalankan pada Success
“Safari” dan “Chrome” “Safari” dan “Chrome” browser “Safari” dan “Chrome”
Menjalankan aplikasi “Cicil” pada browser “Safari” Menjalankan aplikasi “Cicil” pada browser “Chrome”
46
4.1.2.2 Interoperability
No. Skenario
1. Menghubungkan aplikasi “Cicil” dengan pembayaran uang kuliah dan KRS melalui MyUMN
47
No. Skenario
48
No. Skenario
3. Membayar biaya cicilan “Cicil” dengan menghubungkan “KlikBCA” dengan aplikasi “Cicil”
49
4.2 Automated Testing
1. Layer Daftar Dari 10 step yang dilakukan pada fungsi “Alamat Email” di layer daftar, semua step tersebut berhasil
dilakukan sehingga proses testing dinyatakan berhasil.
Skenario: Menginput email yang sudah
terdaftar pada field “Alamat Email”
1. Membuka aplikasi “Cicil”.
2. Melakukan tap pada menu “Masuk”.
3. Melakukan tap pada tulisan “Daftar”.
4. Menginput email yang sudah terdaftar pada
field “Alamat Email”.
5. Menginput nomor telepon.
6. Menginput kata sandi.
7. Menginput kata sandi pada field “Konfirmasi
Kata Sandi”.
8. Melakukan tap pada tombol “Daftar”.
9. Melakukan tap pada tombol “Ya, Sudah
Benar”.
10. Menutup aplikasi.
50
No. Prosedur User Interface Log Error
2. Layer Daftar Dari 9 step yang dilakukan pada fungsi “Kata Sandi” di layer daftar, semua step tersebut berhasil
1. Membuka aplikasi “Cicil”. dilakukan sehingga proses testing dinyatakan berhasil.
2. Melakukan tap pada menu “Masuk”.
3. Melakukan tap pada tulisan “Daftar”.
4. Menginput email
“miaanugrah03@gmail.com” pada field
“Alamat Email”.
5. Menginput nomor telepon.
6. Menginput kata sandi yang tidak sesuai
dengan kriteria yakni “!@#$%”.
7. Menginput kata sandi “!@#$%” pada field
“Konfirmasi Kata Sandi”.
8. Melakukan tap pada tombol “Daftar”.
9. Menutup aplikasi.
51
No. Prosedur User Interface Log Error
3. Layer Daftar Dari 11 step yang dilakukan pada fungsi “Kode referral” di layer daftar, semua step tersebut berhasil
1. Membuka aplikasi “Cicil”. dilakukan sehingga proses testing dinyatakan berhasil.
2. Melakukan tap pada menu “Masuk”.
3. Melakukan tap pada tulisan “Daftar”.
4. Menginput email
“miaanugrah03@gmail.com” pada field
“Alamat Email”.
5. Menginput nomor telepon.
6. Menginput kata sandi.
7. Menginput kata sandi yang diinput pada
field “Kata Sandi” dalam field
“Konfirmasi Kata Sandi”.
8. Menginput kode referral yang tidak valid
yakni “ABCD123”.
9. Melakukan tap pada tombol “Validasi
Kode”.
10. Melakukan tap pada tombol “Daftar”.
11. Menutup aplikasi.
52
4.2.1.2 Layer Masuk
1. Layer Masuk Dari 5 step yang dilakukan pada fungsi “Alamat Email” di layer daftar, semua step tersebut berhasil
Skenario: Menginput nama pada field dilakukan sehingga proses testing dinyatakan berhasil.
“Alamat Email”.
53
No. Prosedur User Interface Log Error
2. Layer Masuk Dari 6 step yang dilakukan pada fungsi “Kata Sandi” di layer masuk, semua step tersebut berhasil
Skenario: Menginput kata sandi tidak sesuai dilakukan sehingga proses testing dinyatakan berhasil.
dengan kriteria.
54
4.2.1.3 Layer Lupa Kata Sandi
1. Layer Lupa Kata Sandi Dari 7 step yang dilakukan pada fungsi “Alamat Email” di layer lupa kata sandi, semua step tersebut
Skenario: Menginput angka pada field berhasil dilakukan sehingga proses testing dinyatakan berhasil.
“Alamat Email”.
55
4.2.1.4 Layer Ubah Password
1. Layer Ubah Password Dari 8 step yang dilakukan pada fungsi “Kata Sandi” di layer ubah password, semua step tersebut
Skenario: menginput kata sandi tidak berhasil dilakukan sehingga proses testing dinyatakan berhasil.
sesuai dengan kriteria
56
No. Prosedur User Interface Log Error
2. Layer Ubah Password Dari 8 step yang dilakukan pada fungsi “Konfirmasi Kata Sandi” di layer ubah password, semua step
Skenario: Menginput kata sandi yang tersebut berhasil dilakukan sehingga proses testing dinyatakan berhasil.
berbeda pada kedua field yang harusnya
memiliki kata sandi yang sama.
57
4.2.1.5 Layer Beranda
1. Layer Beranda Dari 5 step yang dilakukan pada fungsi “URL produk” di layer beranda, semua step tersebut berhasil
Skenario: Menginput URL produk Shopee dilakukan sehingga proses testing dinyatakan berhasil.
58
No. Prosedur User Interface Log Error
2. Layer Beranda Dari 5 step yang dilakukan pada fungsi “URL produk” di layer bernada, semua step tersebut
Skenario: Menginput URL produk yang berhasil dilakukan sehingga proses testing dinyatakan berhasil.
kehabisan stok.
59
4.2.1.6 Layer Ubah Data Personal
1. Layer Ubah Data Personal Dari 8 step yang dilakukan pada fungsi “Nama Lengkap Sesuai KTP” di layer ubah data personal,
Skenario: menginput simbol pada field semua step tersebut berhasil dilakukan sehingga proses testing dinyatakan berhasil.
“Nama Lengkap Sesuai KTP”
60
4.2.1.7 Layer Ubah Data Akademik
1. Layer Ubah Data Akademik Dari 9 step yang dilakukan pada fungsi “Universitas” di layer ubah data akademik, semua step tersebut
Skenario: Memilih universitas yang tidak berhasil dilakukan sehingga proses testing dinyatakan berhasil.
berada di Kota Tangerang Selatan.
61
4.2.1.8 Layer Simulasi Pembiayaan
1. Layer Simulasi Pembiayaan Dari 6 step yang dilakukan pada fungsi “Total tagihan” di layer simulasi pembiayaan, semua step
Skenario: Menginput biaya kuliah yang tersebut berhasil dilakukan sehingga proses testing dinyatakan berhasil.
tidak valid.
62
4.2.2 Web Testing
1. Layer Login Dari 5 step yang dilakukan pada fungsi “Email Address” di layer login, semua step tersebut
Skenario: Menginput nama pada berhasil dilakukan sehingga proses testing dinyatakan berhasil.
field “Email Address”.
63
No. Prosedur User Interface Log Error
2. Layer Login Dari 5 step yang dilakukan pada fungsi “Sandi” di layer login, semua step tersebut berhasil
Skenario: Menginput sandi yang tidak dilakukan sehingga proses testing dinyatakan berhasil.
sesuai dengan kriteria.
64
4.2.2.2 Layer Dana Pendidikan
1. Layer Dana Pendidikan Dari 7 step yang dilakukan pada fungsi “Nama Lengkap” di layer dana pendidikan, semua
Skenario: Menginput angka pada step tersebut berhasil dilakukan sehingga proses testing dinyatakan berhasil.
field “Nama Lengkap”.
1. Membuka website
“KoinWorks”.
2. Memilih icon kirim permintaan.
3. Menginput Nama Lengkap.
4. Menginput nama institusi
pendidikan
5. Menginput alamat email akun
yang digunakan
6. Menginput nomor telepon yang
di daftarkan pada akun
7. Mengajukan pinjaman dengan
meng klik tombol “daftar
sekarang”
65
4.2.2.3 Layer Buat Akun Baru
1. Layer Buat Akun Baru Dari 10 step yang dilakukan pada fungsi “Email” di layer buat akun baru, semua step tersebut berhasil
Skenario: Menginput angka pada field dilakukan sehingga proses testing dinyatakan berhasil.
“Email”.
66
No. Prosedur User Interface Log Error
2. Layer Buat Akun Baru Dari 9 step yang dilakukan pada fungsi “Password” di layer buat akun baru, semua step tersebut
Skenario: Menginput password yang berhasil dilakukan sehingga proses testing dinyatakan berhasil.
kurang dari 8 karakter.
1. Membuka website koinworks
2. Masuk ke home koinworks
3. Mengklik button pinjaman
Pendidikan
4. Mengklik button daftar sekarang
5. Memasukan alamat email
6. Memasukan password kurang dari 8
karakter
7. Mengklik button verifikasi “I’m not
robot”
8. Mengklik centang bagian “Saya
menyetujui syarat dan ketentuan”
9. Mengklik selesaikan aplikasi
67
4.2.2.4 Layer Keuangan Anda
1. Layer Keuangan Anda Dari 14 step yang dilakukan pada fungsi “Company Name” di layer keuangna anda, semua step
Skenario: Menginput simbol pada field tersebut berhasil dilakukan sehingga proses testing dinyatakan berhasil.
“Company Name”.
1. Membuka koinworks
2. Masuk ke layer login
3. Input email
4. Input password
5. Mengklik button login
6. Mengklik button information
7. Mengklik button Co Applicant
8. Mengklik button Your finance
9. Klik dua kali Company name
10. Memasukan Company name dengan
symbol
11. Mengklik button continue
12. Mengklik button continue
13. Mengklik button continue
14. Menutup browser
68
4.2.2.5 Layer Pinjaman
1. Layer Pinjaman Dari 10 step yang dilakukan pada fungsi “Alamat Lengkap” di layer pinjaman,
Skenario: Menginput simbol pada field semua step tersebut berhasil dilakukan sehingga proses testing dinyatakan
“Alamat Lengkap” berhasil.
69
No. Prosedur User Interface Log Error
2. Layer Pinjaman Dari 10 step yang dilakukan pada fungsi “Kode Pos” di layer pinjaman, semua step
Skenario: Menginput huruf pada field tersebut berhasil dilakukan sehingga proses testing dinyatakan berhasil.
“Kode Pos”
70
No. Prosedur User Interface Log Error
3. Layer Pinjaman Dari 14 step yang dilakukan pada fungsi “Nama WebsiteWebsiteInstitusi” di layer
Skenario: Menginput nama institusi pinjaman, semua step tersebut berhasil dilakukan sehingga proses testing dinyatakan
yang tidak valid berhasil.
71
No. Prosedur User Interface Log Error
4. Layer Pinjaman Dari 14 step yang dilakukan pada fungsi “Website” di layer pinjaman, semua step tersebut berhasil
Skenario: Menginput URL website yang dilakukan sehingga proses testing dinyatakan berhasil.
tidak valid.
72
No. Prosedur User Interface Log Error
5. Layer Pinjaman Dari 13 step yang dilakukan pada fungsi “Total Biaya” di layer pinjaman, semua step tersebut
Skenario: Menginput total biaya berhasil dilakukan sehingga proses testing dinyatakan berhasil.
pendidikan di bawah Rp3.000.000
73
4.2.2.6 Layer Ganti Sandi
1. Layer Ganti Sandi Dari 12 step yang dilakukan pada fungsi “Sandi Saat Ini” di layer ganti sandi, semua step
Skenario: Menginput sandi saat ini tersebut berhasil dilakukan sehingga proses testing dinyatakan berhasil.
yang tidak sesuai dengan kriteria
1. Open Browser
2. Membuka URL KoinWorks
3. Pilih menu masuk
4. Masukkan email yang benar
5. Masukkan kata sandi yang
benar
6. Klik button masuk
7. Klik email di kanan atas
8. Pilih pengaturan
9. Masukkan kata sandi saat ini
yang tidak valid
10. Masukkan sandi baru yang
valid
11. Masukkan konfirmasi sandi
baru yang valid
12. Klik update
74
No. Prosedur User Interface Log Error
2. Layer Ganti Sandi Dari 12 step yang dilakukan pada fungsi “Sandi Baru” di layer daftar, semua step tersebut
Skenario: Menginput sandi baru berhasil dilakukan sehingga proses testing dinyatakan berhasil.
yang tidak sesuai dengan
kriteria.
1. Open Browser
2. Membuka URL KoinWorks
3. Pilih menu masuk
4. Menginput email yang benar
5. Menginput kata sandi yang
benar
6. Melakukan tap pada button
“Masuk”
7. Melakukan tap pada email di
kanan atas
8. Pilih pengaturan
9. Masukkan kata sandi saat ini
yang valid
10. Masukkan sandi baru yang
tidak valid
11. Masukkan konfirmasi sandi
baru yang tidak valid
12. Klik update
75
BAB V
KESIMPULAN
Testing adalah proses penting dalam menjamin kualitas dari sebuah aplikasi baik ditinjau dari spesifikasi,
desain, maupun coding. Testing dilakukan agar aplikasi dapat berfungsi secara optimal dalam berbagai kondisi
tanpa mengalami kesalahan (error). Dalam proyek testing sebagaimana yang didokumentasikan dalam laporan
ini, terdapat dua jenis testing yang dilakukan yaitu manual testing dan automated testing. Berdasarkan hasil
testing tersebut, diperoleh bahwa keseluruhan test case berhasil dijalankan dan tidak ditemukan error dalam
aplikasi. Selain itu, juga diperoleh tabel perbandingan sebagai berikut.
Parameter
Manual Testing Automated Testing
Pembanding
Efisiensi proses Waktu rata-rata yang dibutuhkan untuk Waktu eksekusi rata-rata yang
melakukan eksekusi terhadap test case dibutuhkan untuk melakukan eksekusi
lebih lama dibandingkan dengan terhadap test case lebih singkat yakni
automated testing yakni sekitar 2 sekitar kurang dari 1 menit untuk setiap
hingga 4 menit untuk setiap test case. test case.
Tingkat Kesalahan yang Testing yang dilakukan secara manual Automated testing memiliki tingkat risiko
terjadi akibat human akan memiliki tingkat risiko akan yang lebih rendah akan kesalahan atau
error kesalahan atau ketidaktepatan akibat ketidaktepatan akibat terjadinya human
terjadinya human error yang lebih error dibandingkan dengan manual
tinggi dibandingkan dengan automated testing.
testing.
Tingkat kebutuhan Tingkat kebutuhan sumber daya dari Tingkat kebutuhan sumber daya dalam
sumber daya manual testing bergantung pada jumlah automated testing tidak bergantung
test case yang akan ditangani dalam secara sepenuhnya dengan jumlah test
proyek testing. case yang akan ditangani dalam project.
76
Parameter Pembanding Manual Testing Automated Testing
Biaya (Cost) Manual testing membutuhkan biaya Automated testing memiliki biaya awal
awal yang lebih rendah daripada yang lebih besar dibandingkan dengan
automated testing. Namun, akan manual testing. Akan tetapi, automated
membutuhkan lebih banyak biaya testing berpotensi kecil mengalami
ketika terjadi pertambahan jumlah test pertambahan biaya akibat pertambahan
case. jumlah test case, sehingga automated
testing memiliki biaya yang lebih cost-
effective.
Tingkat pengetahuan Manual testing dapat dilakukan oleh Automated testing hanya dapat
tester tester yang belum memiliki dilakukan oleh tester yang memiliki
pengetahuan terakait dengan testing pengetahuan terkait dengan proses
software. testing dengan menggunakan testing
software.
Kemampuan dalam Manual testing memungkinkan adanya Tester dalam automated testing tidak
melakukan UI testing user interface testing karena proses dapat melakukan user interface testing
testing yang dilakukan secara manual. karena automated testing berfokus pada
pengujian fungsi dari fitur-fitur dalam
aplikasi.
1. Efisiensi Proses
Ditinjau dari aspek efisiensi waktu yang dibutuhkan untuk mengeksekusi sebuah test case, manual
testing membutuhkan waktu yang lebih banyak dibandingkan dengan automated testing dimana waktu rata-
rata yang dibutuhkan untuk mengeksekusi sebuah test case adalah sekitar 2 hingga 4 menit. Sementara, waktu
rata-rata yang dibutuhkan untuk mengeksekusi sebuah test case dengan menggunakan automated testing
adalah sekitar kurang dari 1 menit. Dengan demikian, automated testing lebih efisien dibandingkan dengan
manual testing. Hal ini dikarenakan manual testing dilakukan oleh tester secara manual, sehingga berpotensi
memiliki delay time saat proses eksekusi test case berlangsung.
Tidak hanya itu, ketika terdapat kebutuhan untuk melakukan proses testing kembali, seperti untuk
melengkapi proses dokumentasi, proses automated testing akan jauh lebih efisien dibandingkan dengan
manual testing. Sebab pada automated testing, tester dapat menggunakan kembali test suit yang sebelumnya
digunakan dengan cukup menjalankan kembali test case tersebut. Sementara, dalam manual testing, tester
harus mengulang kembali proses eksekusi dari test case.
77
2. Tingkat Kesalahan yang terjadi akibat human error
Ditinjau dari tingkat kesalahan yang terjadi akibat human error, testing yang dilakukan secara manual
akan memiliki tingkat risiko akan kesalahan atau ketidaktepatan yang lebih tinggi dibandingkan dengan
automated testing karena proses manual testing khususnya pada proses eksekusi test case dilakukan oleh
manusia tanpa bantuan alat atau software testing tools yang mengakibatkan tingginya potensi akan terjadinya
human error. Sementara itu, Automated testing memiliki tingkat risiko yang lebih rendah akan kesalahan
atau ketidaktepatan dibandingkan dengan manual testing. Hal ini disebabkan karena minimnya keterlibatan
manusia dalam proses automated testing khususnya dalam proses eksekusi test case sehingga automated
testing memiliki potensi yang lebih rendah untuk mengalami kesalahan akibat human error.
3. Jenis Sumber Daya
Berdasarkan jenis sumber daya yang dibutuhkan, manual testing membutuhkan jenis sumber daya
yang lebih sedikit dibandingkan dengan automated testing. Manual testing hanya membutuhkan sumber daya
manusia dan hardware tanpa adanya persyaratan akan spesifikasi khusus. Pada sisi lain, automated testing
membutuhkan jenis sumber daya yang lebih banyak dibandingkan dengan manual testing. Kebutuhan
tersebut meliputi hardware dengan spesifikasi tertentu untuk menunjang automated testing tools, automated
testing tools yang akan digunakan dalam proses testing, dan sumber daya manusia.
4. Tingkat Kebutuhan Sumber Daya
Tingkat kebutuhan sumber daya juga menjadi salah satu faktor yang berpengaruh dalam proses
testing. Apabila kebutuhan sumber daya terlalu besar, sedangkan project tidak memiliki budget yang
memumpuni, maka proses testing tersebut akan terhambat. Kebutuhan sumber daya manual testing pada
dasarnya akan bergantung pada jumlah test case yang ditangani dalam project. Jumlah sumber daya manusia
dan hardware akan meningkat seiring dengan pertambahan jumlah test case yang ditangani. Sementara itu,
kebutuhan sumber daya automated testing tidak bergantung pada jumlah test case yang ditangani dalam
project. Jumlah sumber daya pada automated testing berpotensi lebih kecil untuk mengalami pertambahan
karena automated testing tools mampu menangani lebih banyak test case daripada jumlah test case yang
dapat ditangani oleh manual testing dalam waktu yang relatif singkat.
5. Biaya
Dari segi biaya, manual testing akan memiliki kebutuhan biaya yang lebih rendah pada awal proses
testing dibandingkan dengan automated testing. Akan tetapi, manual testing berpotensi besar akan
mengalami pertambahan biaya seiring dengan pertambahan kebutuhan sumber daya manusia dan hardware
yang bergantung pada pertambahan jumlah test case. Pada sisi lain, automated testing memiliki biaya lebih
cost-effective dibandingkan dengan manual testing. Pada automated testing, biaya awal yang dikeluarkan
untuk kebutuhan sumber daya memang lebih besar dibandingkan dengan manual testing dimana biaya
tersebut dikeluarkan untuk pembelian hardware yang wajib memiliki spesifikasi tertentu untuk dapat
menjalankan automated testing tools. Akan tetapi, automated testing memiliki potensi kecil untuk
78
mengalami pertambahan biaya akibat pertambahan sumber daya manusia sebagaimana yang mungkin lebih
sering terjadi pada manual testing.
6. Tingkat Pengetahuan Tester
Pada dasarnya dalam melakukan manual testing, tidak dibutuhkan pengetahuan dalam menggunakan
testing software tertentu. Akan tetapi, untuk automated testing dibutuhkan pengetahuan terkait dengan proses
testing dengan menggunakan automated testing tools dimulai dari proses instalasi automated testing tools
hingga proses eksekusi test case dalam automated testing tools
7. Kemampuan dalam Melakukan UI Testing
Penggunaan automated testing juga terbatas pada jenis testing tertentu dimana terdapat jenis testing
yang tidak dapat dilakukan dengan automated testing. Tester dalam automated testing tidak dapat melakukan
user interface testing. Sebab, penggunaan automated testing tools terbatas pada proses pengujian fitur-fitur
yang terdapat dalam aplikasi. Sementara itu, tester dalam manual testing dapat melakukan user interface
testing karena tester dapat secara manual menguji user interface dari aplikasi seperti melakukan pengujian
terhadap kemudahan akses suatu fitur dalam aplikasi, dan sebagainya. Selain itu, manual testing juga
memungkinkan tester untuk memberikan rekomendasi-rekomendasi tertentu terhadap desain dan
fungsionalitas user interface dari aplikasi.
Berdasarkan hasil analisa tersebut, dalam sebuah project testing sebaiknya dilakukan manual testing dan
automated testing. Meskipun penggunaan automated testing lebih efisien dan akurat dibandingkan dengan
manual testing. Akan tetapi penggunaan automated testing, membutuhkan pengetahuan yang memadai terkait
penggunaan automated testing tools dan proses testing tersebut juga masih terbatas pada pengujian fitur dalam
aplikasi. Dengan mengombinasikan manual testing dan automated testing, maka dapat pengukuran kualitas dari
aplikasi dapat jauh lebih menyeluruh dimana manual testing dapat melengkapi proses testing yang tidak dapat
dilakukan dengan proses automated testing.
79
DAFTAR PUSTAKA
80
Kemendagri: Penduduk Indonesia 268 Juta, Lebih Banyak Pria. (2020, August 13). From CNN Indonesia:
https://www.cnnindonesia.com/nasional/20200813101754-20-535205/kemendagri-penduduk-indonesia-
268-juta-lebih-banyak-pria
Lakshmi, R., & Mallika, S. (2017). A Review on Web Application Testing and Its Current Research Directions.
International Journal of Electrical and Computer Engineering (IJECE), 2132 - 2141.
Lazareska, L., & Jakimoski, K. (2017). Analysis of the Advantages and Disadvantages of Android and iOS
Systems and Converting Applications from Android to iOS Platform and Vice Versa. American Journal
of Software Engineering and Applications, 116-120.
Leong, K., & Sung, A. (2018, April). FinTech (Financial Technology): What is it and How to Use Technologies
to Create Business Value in Fintech Way? International Journal of Innovation, Management and
Technology, 9(2), 74-78.
Lewis, W. E. (2017). Software Testing and Continous Quality Improvement (Vol. 640). CRC Press.
Min, L. J., Istiqomah, A., & Rahman, A. (2020, March). Evaluasi Penggunaan Manual dan Automated Software
Testing pada Pelaksanaan End-To-End Testing. JTT (Jurnal Teknologi Terapan), 6, 18-25.
Muhtadi, Majuddin, M., Friyadi, M. D., & Rahmani, A. (2019). Analisis GUI Testing pada Aplikasi E-Commerce
menggunakan Katalon. In Prosiding Industrial Research Workshop and National Seminar (Vol. 10, No.
1, pp. 1387-1393).
Nabila, M. (2018, February 19). APJII: Penetrasi Pengguna Internet Indonesia Capai 143 Juta Orang. Retrieved
August 28, 2020 from Dailysocial.id: https://dailysocial.id/post/apjii-survei-internet-indonesia-2017
Nuryakin, C., Aisha, L., & Gerald Massie, N. W. (2019, May). Financial Technology in Indonesia: A Fragmented
Instrument for Financial Inclusion? 9.
OJK. (2020). Perusahaan Fintech Lending Berizin dan Terdaftar di OJK. OJK.
Pohan, A. B. (2018). Pengujian dan Implementasi Sistem. Jakarta.
Purnomo, H., & Khalda, S. (2019). Influence of Financial Technology on National Financial Institutions. IOP
Conference Series: Materials Science and Engineering, 8.
Purushothaman, S. K., Kashyap, N., HA, D., Agarwal, S., Iqbal, S., & Behere, V. (2018). Unified Approach
Towards Automation of any Desktop Web, Mobile Web, Android, iOS, REST and SOAP API Use Cases
. From Katalon: https://www.katalon.com/resources-center/blog/7-things-katalon-studio-7/
Putra, N. Y. (2017). Perancangan Aplikasi Android Tentang Tips Kesehatan dan Kegunaan Alat Fitness.
Rizky, C. (2017, December 5). Apa Itu Fintech? Apa Pentingnya Fintech Bagi Pelaku Usaha Indonesia? From
GOukm.id: https://goukm.id/tentang-fintech/
Saher, N., Khan, D. M., Shahzad, F., & Karim, A. (2015). The Quality Assessment of Software Testing Procedure
and Its Effects. Sci.Int.(Lahore).
Setiawan, A. R. (2020, May 12). Introducing the Indonesian Education System. 6.
doi:https://doi.org/10.31237/osf.io/ygt5c
81
Sharma, H. (2020, March 2). Advantages and Disadvantages of Automated Testing. From GeeksforGeeks:
https://www.geeksforgeeks.org/advantages-and-disadvantages-of-automated-testing/
StatCounter. (2020, August). Mobile Operating System Market Share Indonesia Aug 2019 - Aug 2020. From
StatCounter GlobalStats: https://gs.statcounter.com/os-market-share/mobile/indonesia
Stewart, H., & Jurjens, J. (2018, March 12). Data security and consumer trust in FinTech innovation in Germany.
Information and Computer Security, 26(1), 109-128. doi:https://doi.org/10.1108/ICS-06-2017-0039
Sulistyandari. (2018, November 14). Fintech Indonesia User Legal Protection in Balance Borrowing Money
Based on Information. SHS Web of Conferences, 54(SHS Web Conferences).
doi:https://doi.org/10.1051/shsconf/20185406003
Tan, J. D., & Purba, T. J. (2018). Financial Technology as an Innovation Strategy for Digital Payment Services
in the Millenial Generations. Advances in Social Science, Education and Humanities Research.
Umar, M. A., & Chen, Z. (2019, December 31). A Study of Automated Software Testing: Automation Tools and
Frameworks. International Journal of Computer Science Engineering (IJCSE), 223.
doi:10.5281/zenodo.3924795
Websindo. (2019, March 7). Indonesia Digital 2019: Tinjauan Umum. From Websindo:
https://websindo.com/indonesia-digital-2019-tinjauan-umum/
Wesley, E., & Peterson, F. (2017, October 11). The Role of Population in Economic Growth. SAGE journals, 15.
doi:https://doi.org/10.1177/2158244017736094
Wulan, V. R. (2017, June). Financial Technology (FinTech) A New Transaction In Future. Journal of Electrical
Engineering and Computer Sciences, 2, 177-182.
82