Tugas Besar Testing & Implementasi
Tugas Besar Testing & Implementasi
Diajukan untuk memenuhi salah satu tugas mata kuliah Testing dan Implementasi
yang diampu oleh bapak Hari Supriadi, S.T., M.Kom.
Disusun oleh:
UNIVERSITAS WIDYATAMA
Jl. Cikutra No. 204 A, Kec. Cibeunying Kidul, Kota Bandung, Jawa Barat 40125
Telp. (022) 7275855 Website. https://www.widyatama.ac.id/
2023
DAFTAR ISI
i
4.4 Rencana Pengujian White Box.................................................................... 17
ii
DAFTAR TABEL
Tabel 4.3 Peran & Kontribusi dalam Proses Pengujian Perangkat Lunak ............ 12
iii
DAFTAR GAMBAR
iv
BAB 1
PENDAHULUAN
Aplikasi penjualan furniture juga harus dapat menangani transaksi secara aman
dan efisien. Pengujian diperlukan untuk memastikan bahwa sistem pembayaran
aman, informasi pribadi pelanggan terlindungi, dan proses checkout berjalan
lancar tanpa masalah teknis. Selain itu, performa aplikasi harus diuji untuk
mengetahui responsivitasnya pada berbagai perangkat, serta keandalan saat
menghadapi beban pengguna yang tinggi.
Industri penjualan furniture juga tunduk pada berbagai standar dan regulasi,
terutama terkait dengan ketepatan pencatatan pesanan, pajak, dan kepatuhan
hukum lainnya. Pengujian diperlukan untuk memastikan bahwa aplikasi
mematuhi regulasi yang berlaku, termasuk proses pencatatan transaksi,
perhitungan pajak, dan kepatuhan terhadap ketentuan hukum terkait penjualan
produk furniture secara daring.
1
Kegagalan aplikasi penjualan furniture dapat merusak reputasi merek dan
menurunkan kepercayaan pelanggan. Pengujian menyeluruh diperlukan untuk
menghindari masalah teknis atau kesalahan fungsional yang dapat berdampak
negatif pada bisnis. Dengan menguji aplikasi secara menyeluruh, perusahaan
dapat memastikan bahwa pengalaman belanja pelanggan tetap positif, reputasi
bisnis terjaga, dan kepercayaan pelanggan terus meningkat.
1.2 Tujuan
2
BAB 2
PENGENALAN PERANGKAT LUNAK
Tujuan Sistem:
Aplikasi ini bertujuan untuk menyediakan pengalaman belanja yang praktis dan
memuaskan. Kami ingin memberikan solusi yang efisien untuk memenuhi
kebutuhan konsumen modern yang lebih suka berbelanja secara online,
memberikan alternatif yang lebih cepat dan lebih mudah dibandingkan dengan
kunjungan langsung ke toko fisik.
Target Pengguna:
3
3. Manajemen Pengguna: Fasilitas untuk membuat akun, masuk, dan
mengelola informasi akun, meningkatkan personalisasi dan keterlibatan
pengguna.
Pada sub bab ini, penulis akan menjelajahi penggunaan Business Process Model
and Notation (BPMN) dalam pemodelan proses bisnis aplikasi yang akan menjadi
fokus pengujian. BPMN sebagai bahasa standar untuk memodelkan proses bisnis,
memberikan pendekatan visual yang kuat untuk merancang, menggambarkan, dan
memahami alur kerja dalam konteks pengembangan dan pengujian perangkat
lunak.
Pemilihan BPMN sebagai alat pemodelan sangat relevan ketika berbicara mengenai
pengujian perangkat lunak pada aplikasi berbasis web. Penggunaan simbol-simbol
standar dalam BPMN memungkinkan penulis dengan jelas merepresentasikan dan
memahami setiap tahapan dan alur proses yang terlibat.
a. Layer-Layer Arsitektur:
4
1. Antarmuka Pengguna (UI): Menyajikan tampilan yang ramah pengguna
dan responsif untuk interaksi pengguna yang lebih baik.
2. Logika Bisnis (Business Logic): Mengelola proses bisnis seperti
pencarian produk, perhitungan harga, dan proses pembayaran.
3. Database:
• Manajemen Produk: Menyimpan informasi tentang produk,
termasuk deskripsi, harga, dan ketersediaan.
• Informasi Pengguna: Menyimpan data pengguna seperti informasi
akun dan riwayat pembelian.
b. Interaksi Antar Layer:
1. Antarmuka Pengguna ke Logika Bisnis: Melibatkan pertukaran data
terkait tampilan dan input pengguna.
2. Logika Bisnis ke Database: Mengakses dan memperbarui data produk,
pengguna, dan transaksi.
c. Komponen Utama:
1. Antarmuka Pengguna: Berfungsi sebagai titik masuk bagi pengguna
untuk berinteraksi dengan aplikasi.
2. Proses Pembelian: Menangani langkah-langkah pembelian, termasuk
pengisian detail pengiriman dan pembayaran.
3. Manajemen Pengguna: Mengelola informasi akun pengguna dan
memberikan opsi personalisasi.
Fitur Penting Perangkat Lunak merinci fungsionalitas utama yang ditawarkan oleh
aplikasi e-commerce penjualan furniture. Ini mencakup:
5
BAB 3
METODE PENGUJIAN
Dengan kombinasi metode Black Box Testing, White Box Testing, dan strategi
pengujian Bottom Up, laporan ini akan memberikan pemahaman yang menyeluruh
tentang kualitas dan keandalan aplikasi e-commerce penjualan furniture yang telah
dirancang dan dikembangkan.
Black Box Testing adalah metode pengujian dimana perangkat lunak diuji tanpa
memperhatikan struktur internal atau logika dari kode yang ada di dalamnya.
Pendekatan ini melibatkan penguji yang menguji aplikasi dari perspektif end user,
fokus pada fungsionalitas eksternal, antarmuka pengguna, dan perilaku sistem.
Penguji hanya mengetahui input yang diberikan dan output yang diharapkan tanpa
memperhatikan bagaimana aplikasi mencapai hasil tersebut. Dalam konteks ini,
penguji memeriksa apakah sistem bekerja sesuai dengan harapan pengguna, apakah
alur transaksi berjalan lancar, dan apakah semua fitur yang dijanjikan berfungsi
6
seperti yang diharapkan. Pengujian non-fungsional juga penting, seperti menguji
keamanan data pelanggan, performa aplikasi saat menghadapi beban pengguna
yang tinggi, dan responsifnya antarmuka pengguna pada berbagai perangkat dan
platform.
Terdapat beberapa teknik yang digunakan dalam Black Box Testing untuk
memastikan fungsionalitas dan kualitas aplikasi dari sudut pandang end user.
Berikut adalah beberapa teknik yang umum digunakan dalam Black Box Testing:
White Box Testing merupakan metode pengujian perangkat lunak yang melibatkan
pemeriksaan struktur internal dan logika dari aplikasi. Pengujian ini melibatkan
pengetahuan mendalam tentang source code aplikasi dan bertujuan untuk
memastikan bahwa setiap bagian dari kode bekerja dengan benar. Dalam konteks
aplikasi e-commerce furniture, White Box Testing akan fokus pada komponen-
komponen kritis seperti proses pembelian dan manajemen data ulasan pelanggan.
Tujuan utama dari pengujian ini adalah untuk menjamin keberlanjutan dan
kehandalan fungsionalitas aplikasi dari perspektif teknis.
Dalam White Box Testing, terdapat beberapa teknik yang sering digunakan untuk
memeriksa struktur internal dan logika dari perangkat lunak. Berikut beberapa
teknik yang umum digunakan dalam White Box Testing:
1. Flow Graph adalah representasi visual dari aliran kendali dalam program.
Biasanya, diagram ini menunjukkan setiap bagian dari kode sebagai simpul
7
(node) dan hubungan antara simpul-simpul tersebut sebagai garis-garis (edge).
Hal ini membantu dalam memahami aliran program, memetakan kondisi-
kondisi, dan dapat digunakan untuk memperkirakan cakupan pengujian.
2. Cyclomatic Complexity adalah metrik numerik yang mengukur kompleksitas
struktural dari program. Ini menggambarkan jumlah jalur linear yang
independen dalam kode. Semakin tinggi nilai kompleksitas siklomatik,
semakin kompleks kode tersebut dan semakin banyak pengujian yang
dibutuhkan untuk mencakup semua jalur. Formula umumnya dihitung dengan
menggunakan jumlah simpul, jumlah edge, dan jumlah komponen terhubung
dalam flow graph.
3. Independent Path adalah setiap jalur unik yang ada antara dua simpul dalam
flow graph yang tidak saling terhubung. Dalam pengujian, ini mengacu pada
jalur-jalur yang berbeda dalam program yang harus diuji secara terpisah untuk
memastikan semua kondisi logika dan percabangan kode diuji secara
menyeluruh.
4. Graf Matriks adalah representasi dari flow graph dalam bentuk matriks. Dalam
konteks pengujian perangkat lunak, graf matriks sering digunakan untuk
menunjukkan hubungan antara semua jalur dalam flow graph dan membantu
dalam mengidentifikasi jalur-jalur independen yang perlu diuji.
White Box Testing memiliki kelebihan dalam memastikan kualitas dan keandalan
perangkat lunak. Metode ini memberikan cakupan pengujian yang mendalam
terhadap struktur internal kode program. Dengan akses langsung ke kode, penguji
dapat mengidentifikasi kesalahan logika, percabangan kondisional, dan jalur-jalur
eksekusi yang kompleks. Metode ini juga memungkinkan penguji untuk
mengoptimalkan penggunaan sumber daya dengan fokus pada area-area yang lebih
mungkin menyebabkan masalah. Dengan pengujian yang terperinci, aplikasi dapat
dikembangkan dengan lebih baik dan memiliki tingkat keandalan yang lebih tinggi.
Namun, ada beberapa keterbatasan dalam White Box Testing yang perlu
dipertimbangkan. Memerlukan pemahaman yang mendalam tentang kode yang
sedang diuji. Jika penguji tidak memiliki pengetahuan yang cukup atau tidak dapat
mengakses kode secara menyeluruh, pengujian menjadi terbatas. Selain itu, waktu
8
dan sumber daya yang diperlukan untuk melakukan pengujian white box biasanya
lebih besar dibandingkan dengan metode pengujian lainnya. Hal ini karena
pengujian setiap bagian kode secara terperinci membutuhkan upaya dan waktu
yang signifikan. Terakhir, walaupun White Box Testing efektif dalam menemukan
kesalahan logika, pengujian ini tidak menjamin bahwa seluruh sistem akan berjalan
tanpa masalah. Ada kemungkinan beberapa aspek sistem tidak diuji secara
menyeluruh karena keterbatasan waktu dan sumber daya yang tersedia.
9
BAB 4
PERENCANAAN PENGUJIAN
Dalam tahap pengujian aplikasi ini, kesuksesan dan ketepatan pengujian sangat
bergantung pada peralatan dan lingkungan pengujian yang digunakan. Peralatan
dan lingkungan pengujian yang efisien dan terkelola dengan baik menjadi landasan
utama untuk mendapatkan hasil pengujian yang dapat diandalkan dan akurat.
Berikut diuraikan dengan rinci mengenai peralatan fisik dan perangkat lunak yang
menjadi bagian keseluruhan dari infrastruktur pengujian, serta konteks lingkungan
pengujian yang dapat mencakup berbagai skenario pengujian yang diinginkan.
No Perangkat Lunak
1 Katalon IDE
10
Pemilihan browser yang berbeda seperti Chrome, Safari, dan Edge
didasarkan pada kebutuhan untuk memastikan kompatibilitas dan
konsistensi aplikasi web. Dengan menguji aplikasi pada berbagai
browser, penulis memastikan bahwa aplikasi berfungsi dengan baik di
berbagai platform, memberikan pengalaman pengguna yang konsisten
tanpa terpengaruh oleh perbedaan perilaku tampilan pada masing-masing
browser.
No Perangkat Keras
1 Computer/Laptop
2 Computer Mouse
11
Tabel 4.3 Peran & Kontribusi dalam Proses Pengujian Perangkat Lunak
Modul pengujian memiliki fokus pada pengujian unit dari setiap komponen atau
modul yang membangun aplikasi. Dalam lingkup ini, penulis akan mengulas
mekanisme Sign up & Sign in, mekanisme pemesanan barang, dan mekanisme
pengelolaan barang (untuk super admin). Pengujian ini tidak hanya bertujuan
untuk memverifikasi kebenaran fungsionalitas setiap bagian, tetapi juga untuk
memastikan bahwa setiap modul bekerja secara efisien ketika diintegrasikan ke
dalam sistem secara keseluruhan. Berikut merupakan tampilan dari masing-
masing modul yang akan penulis uji.
12
Gambar 4.2 Tampilan Halaman Sign In
13
Gambar 4. 4 Tampilan Halaman Pengelolaan Barang Pesanan Konsumen
14
dihasilkan oleh sistem. Pada bagian ini akan dilakukan identifikasi serta menyusun
perencanaan pengujian terhadap sistem yang akan diuji. Berikut rencana pengujian
black box dari Penjualan Furnitur berbasis Web.
Admin &
Valid sign up Sign up success
User
Admin &
Valid sign in Sign in success
User
Sign in dengan
Admin &
akun yang belum Sign in failed
User
terdaftar
1 Autentikasi
Sign up dengan
Admin &
akun yang sudah Sign up failed
User
terdaftar
Menambahkan
Add product Admin
produk
Mengubah data
Edit product Admin
produk
15
No Modul Test Case Expexted Result Roles
Dapat menambah
Tambah Produk
produk ke User
ke Keranjang
keranjang
Menampilkan
Validasi detail produk yang
User
Keranjang Belanja sesuai di keranjang
belanja
Memasukkan &
Pengisian Alamat
memvalidasi User
Pengiriman
alamat pengiriman
Pemesanan Memilih metode
3
Produk pembayaran &
Pemilihan Metode
Validasi metode User
Pembayaran
pembayaran tidak
valid
Dapat melihat
Admin &
Status Pesanan riwayat pesanan
User
dengan benar
Dapat melacak
Pengiriman & Admin &
status pengiriman
Pelacakan User
produk
Dapat
Pembatalan membatalkan Admin &
Pesanan pesanan sebelum User
pengiriman
16
4.4 Rencana Pengujian White Box
Pengujian White Box masuk ke dalam kerangka kerja suatu sistem atau aplikasi.
Dalam pembahasan rencana pengujian White Box, fokus utama adalah pada
struktur kode, logika, dan komponen-komponen internal yang membangun suatu
sistem.
Tabel 4.5 Rencana Pengujian White Box
17
BAB 5
IMPLEMENTASI PENGUJIAN
Description
Actual
ID Expected Result Status
Result
Test Case Pre-Condition Test Data
Password &
Verification of Confirm Confirm
AU-1 the Regristration Password need Password Sign Up Failed As expected PASS
Process (Sign up) to match for invalid
Sign Up
Verification of
User Interface User Interface is
AU-2 Site URL As expected PASS
(UI) Registration OK
Form
Verification of
Registration a. Site URL
AU-3 Sign Up Successful As expected PASS
Button for Valid b. Valid data
Data
Verify the
presence of all
Error message for
AU-4 mandatory fields Site URL As expected PASS
the required fields
on the
Registration Form
Verification of
a. Site URL Error message for
AU-5 Blank Space As expected PASS
b. Black space the required fields
Input 1. Functional
Internet The data entered in
2. Web Browser the fields even after
Confirm that the
a submission
registration page
attempt with
AU-6 maintains the data Invalid Data As expected PASS
missing
entered in the
information, so
fields
users don't need to
re-enter valid data
a. Site URL
b. Invalid data Error message for
Checking Email
AU-7 (Email other invalid email As expected PASS
Validation
than Gmail, address
Outlook, etc.)
a. Site URL
Verification of Error message
b. Valid data
AU-8 Duplicate shown for duplicate As expected PASS
(Same email
prevention system email
used)
There is no
1. Functional
An email arrives email
Internet
Verification of Email address asking for received
AU-9 2. Web Browser FAIL
Email Reception user registration requesting
3. Registration
confirmation confirmation
complete
of registration
AU- Verification of Username and a. Valid Email
Log In Successful As expected PASS
10 Login Page with Password need b. Valid
18
Description
Actual
ID Expected Result Status
Result
Test Case Pre-Condition Test Data
Valid Email and to match for Password
Password Log In c. Button
clicked
a. Valid Email Error: The
Verification of
b. Invalid password you
AU- Login Page with
Password entered is incorrect. As expected PASS
11 Valid Email and
c. Button Lost your
invalid Password
clicked password?
a. Invalid Email
Verification of Error: Unknown
b. Valid
AU- Login Page with email address.
Password As expected PASS
12 Invalid Email and Please check your
c. Button
Valid Password email address again
clicked
a. Invalid Email Error: Account is
Verification of
b. Invalid not registered on
AU- Login Page with
Password this site. Please As expected PASS
13 Invalid Email and
c. Button verify your account
Invalid Password
clicked information.
Description
Expected Actual
ID Status
Result Result
Test Case Pre-Condition Test Data
Verify that
1. User is on the All expected
product
homepage product
categories are Categories/Brands
KP-1 2. Website is fully categories are As expected PASS
correctly Name valid
loaded and displayed on the
displayed on
functional homepage
the homepage
1. User is on a
page where When a user
products are clicks on a
Check if the
displayed product's
product A list of products
2. Products are clickable
details page from the page being
KP-2 displayed with element, the As expected PASS
opens when a tested, including
clickable corresponding
product is their names
elements product details
clicked
3. Website is fully page opens
loaded and correctly
functional
1. User is on a
page where
product categories a. List of categories
are displayed to be tested, List of
2. Categories are including their categories to be Display
Browse by
KP-3 displayed with names tested, incorrect FAIL
category
clickable links or b. Expected product including their products
elements listings for each names
3. Website is fully category
loaded and
functional
19
Description
Expected Actual
ID Status
Result Result
Test Case Pre-Condition Test Data
1. User is on a
page with a
product search
bar
Product listings
2. Website is fully a. List of search
are organized
loaded and terms
Product and displayed
KP-4 functional b. Product listings As expected PASS
search appropriately
3. Database for each search
for search
contains products query
results
that match the
search criteria
used in the test
data
- The first page
of items loads
correctly and
displays the
expected
1. User is on a number of
page with a large items.
number of items - Subsequent
a. Number of items
that require pages load
to be displayed per
pagination correctly and
page
KP-5 Pagination 2. Paginated display the As expected PASS
b. Total number of
content is divided appropriate
items to be
into multiple items for that
paginated
pages with a page.
defined number - The last page
of items per page displays any
remaining
items, even if
fewer than the
defined items
per page.
- For "In Stock"
products, no
1. User is on a quantity
product page or limitations are
Product page
browsing displayed
displayed "In
products on a (unless
Stock" status
listing page applicable)
Expected stock and allowed
Stock 2. Website is fully - For "Out of
KP-6 availability for each adding to cart, FAIL
availability loaded and Stock"
product despite being
functional products,
out of stock in
3. Product purchasing
the inventory
information options are
system
includes disabled or a
availability status clear out-of-
stock message
is shown
20
5.3 Pengujian Black Box pada Modul Pemesanan Produk
Description
Actual
ID Expected Result Status
Result
Test Case Pre-Condition Test Data
a. List of
1. User is products to be
browsing a tested, The product
Verify that
product page including their information on the
the "Add to
2. Website is fully names cart page matches
Cart" button
PP-1 loaded and b. Quantity to the selected As expected PASS
adds products
functional add for each products (name,
to the
3. The shopping product (test image, price,
shopping cart
cart is initially single and quantity)
empty multiple
additions)
- When a user
clicks the
"Remove" button
associated with a
product in the cart,
that product is
1. User has at
removed from the
least one product
a. List of cart
added to the
Ensure the products - The product no
shopping cart
"Remove" currently in the longer appears in
2. User is on the
PP-2 button in the cart the cart listing As expected PASS
shopping cart
shopping cart b. Quantity of - The shopping cart
page
works each product in indicator (badge,
3. Website is fully
the cart icon, number)
loaded and
updates to reflect
functional
the new number of
items in the cart
- The total price of
the cart is
recalculated and
updated accurately
1. User is on a
- For "In Stock"
product page or
products, no Product page
browsing
quantity limitations displayed "In
products on a
are displayed Stock" status
listing page
Expected stock (unless applicable) and allowed
Stock 2. Website is fully
PP-3 availability for - For "Out of Stock" adding to cart, FAIL
availability loaded and
each product products, despite being
functional
purchasing options out of stock in
3. Product
are disabled or a the inventory
information
clear out-of-stock system
includes
message is shown
availability status
21
5.4 Pengujian White Box pada Modul Autentikasi
22
5.4.2 Flowchart Modul Autentikasi
23
5.4.4 Cyclomatic Complexity Modul Autentikasi
V(G) = E – N +2
V(G) = 6 – 5 + 2 = 3
E = Jumlah edge pada flowgraph
N = Jumlah node pada flowgraph
V(G) = P + 1
V(G) = 2 + 1 = 3
P = Jumlah predicate node pada flowgraph
1, 2 3, 6 4, 7 5, 8 9
1, 2 0 1 1 1 0
3, 6 0 0 0 0 1
4, 7 0 0 0 0 1
5, 8 0 0 0 0 1
9 0 0 0 0 0
24
5.5 Pengujian White Box pada Modul Pemesanan Produk
25
5.5.2 Flowchart Modul Pemesanan Produk
26
5.5.4 Cyclomatic Complexity Modul Pemesanan Produk
V(G) = E – N +2
V(G) = 6 – 5 + 2 = 3
E = Jumlah edge pada flowgraph
N = Jumlah node pada flowgraph
V(G) = P + 1
V(G) = 2 + 1 = 3
P = Jumlah predicate node pada flowgraph
1-5 6 7 8 9
1-5 0 1 1 1 1
6 1 0 1 0 1
7 0 0 0 8 1
8 1 0 0 0 1
9 0 0 0 0 0
27
BAB 6
PENUTUP
6.1 Kesimpulan
Dalam pengujian Black Box, penulis telah menjalankan serangkaian uji kasus yang
meliputi skenario ekstrem dan kondisi kesalahan yang memungkinkan. Proses
pendaftaran pada fitur sign up berjalan dengan baik, menerima input dengan benar,
memvalidasi data, dan memberikan respons yang sesuai kepada pengguna. Data
pengguna juga disimpan dengan aman tanpa risiko kebocoran informasi sensitif.
Pengalaman pengguna dalam proses sign up terbilang baik, dengan petunjuk yang
jelas dan tidak menyebabkan kebingungan. Sistem dapat menangani input yang
tidak valid dengan memberikan pesan kesalahan yang informatif, memberikan
pengguna kesempatan untuk memperbaiki masalahnya. Kinerja sistem selama
proses pendaftaran berlangsung responsif tanpa keterlambatan yang signifikan.
Dalam pengujian White Box, penulis telah menggali lebih dalam ke dalam struktur
kode, logika, dan komponen-komponen internal sistem. Pengujian White Box
memberikan wawasan mendalam tentang bagaimana sistem beroperasi dari sudut
pandang teknis, memastikan bahwa logika perangkat lunak berjalan dengan benar,
dan cakupan pengujian mencakup aspek internal yang penting.
6.2 Saran
Perluasan Kasus Uji, dengan menambah cakupan pengujian Black Box dan White
Box dengan skenario ekstrem yang lebih luas, termasuk input yang ekstrem, kondisi
kesalahan yang jarang terjadi, dan situasi eksternal yang berbeda. Hal ini akan
meningkatkan kehandalan sistem dalam menghadapi berbagai kondisi yang
mungkin terjadi.
28
Uji Beban dan Performa, dengan melakukan uji beban yang lebih mendalam untuk
menguji kinerja sistem saat terjadi lonjakan pengguna atau situasi beban yang
tinggi. Uji performa ini penting untuk memastikan sistem tetap responsif dan stabil
dalam skala yang lebih besar.
Meningkatkan kolaborasi antara tim pengujian Black Box dan White Box untuk
mendapatkan wawasan yang lebih menyeluruh tentang kualitas sistem. Integrasi
antara kedua pendekatan pengujian ini akan memperkuat kehandalan dan kualitas
aplikasi.
29