TESTING IMPLEMENTASI SISTEM Pengkodean Perangkat Lunak Dasar Strategi

  • Slides: 65
Download presentation
TESTING & IMPLEMENTASI SISTEM Pengkodean Perangkat Lunak, Dasar & Strategi pengujian perangkat lunak Diema

TESTING & IMPLEMENTASI SISTEM Pengkodean Perangkat Lunak, Dasar & Strategi pengujian perangkat lunak Diema HS, M. Kom

PENGKODEAN PERANGKAT LUNAK

PENGKODEAN PERANGKAT LUNAK

Perbedaan bahasa generasi ke-4 dengan bahasa generasi ke 3 v 4 GL � Jalur

Perbedaan bahasa generasi ke-4 dengan bahasa generasi ke 3 v 4 GL � Jalur kode yang lebih sedikit �Memberikan potensi dilakukannya pemrograman oleh end user untuk aplikasi mereka sendiri �Metodologi pengembangan �Produktivitas yang meningkat �Layanan yang meningkat �Partisipasi pemakai

Perbedaan bahasa generasi ke-4 dengan bahasa generasi ke 3 v 3 GL � Kepadatan

Perbedaan bahasa generasi ke-4 dengan bahasa generasi ke 3 v 3 GL � Kepadatan �Efisiensi mesin �Fungsionalitas �Kompatibilitas �Produktivitas pengkodean �Pengujian dan pemeliharaan

Bahasa pemrograman berorientasi objek v Jenis bahasa OOP �Murni �Smalltalk �Hybrid �w C++ �C

Bahasa pemrograman berorientasi objek v Jenis bahasa OOP �Murni �Smalltalk �Hybrid �w C++ �C �Cobol

Perangkat bahasa penggunaan khusus �Alat bahasa berorientasi pemakai interaktif �DBMS �Alat bahasa hypertext dan

Perangkat bahasa penggunaan khusus �Alat bahasa berorientasi pemakai interaktif �DBMS �Alat bahasa hypertext dan multimedia

Memilih bahasa yang tepat �Mencocokan bahasa dengan aplikasi rancangan perangkat lunak �Tingkat penggunaan dalam

Memilih bahasa yang tepat �Mencocokan bahasa dengan aplikasi rancangan perangkat lunak �Tingkat penggunaan dalam dunia bisnis �Keekspresifan �Kemudahan �Maintainability

DASAR –DASAR PENGUJIAN PERANGKAT LUNAK

DASAR –DASAR PENGUJIAN PERANGKAT LUNAK

(IEEE – Institute of Electrical and Electronics Engineering, ANSI – American National Standards Institute)

(IEEE – Institute of Electrical and Electronics Engineering, ANSI – American National Standards Institute) �Menurut standar ANSI/IEEE 1059 Testing adalah proses menganalisa suatu entitas software untuk mendeteksi perbedaan antara kondisi yang ada dengan kondisi yang diinginkan (defect/errors/bugs) dan mengevaluasi fitur-fitur dari entitas software

Definisi Sederhana Kualitas � Menurut CROSBY: Kualitas adalah pemenuhan terhadap kebutuhan. � Menurut ISO-8402:

Definisi Sederhana Kualitas � Menurut CROSBY: Kualitas adalah pemenuhan terhadap kebutuhan. � Menurut ISO-8402: Kualitas adalah keseluruhan dari fitur yang menjadikan produk dapat memuaskan atau dipakai sesuai kebutuhan dengan harga yang terjangkau. � Menurut W. E. Perry: Kualitas adalah pemenuhan terhadap standar. � Menurut R. Glass: Kualitas adalah tingkat kesempurnaan. � Menurut J. Juran: Kualitas adalah tepat guna.

Hubungan testing dan kualitas �Software yang berkualitas adalah software yang bebas error dan bug

Hubungan testing dan kualitas �Software yang berkualitas adalah software yang bebas error dan bug secara objektif, tepat waktu dana, sesuai dengan kebutuhan atau keinginan dapat dirawat (maintainable) �Definisi objektif : Suatu proses pembuktian yang terstruktur, terencana dan terdokumentasi dengan baik

Hubungan Testing Dan Kualitas �Testing tidak dapat memastikan kualitas software, namun dapat memberikan jaminan

Hubungan Testing Dan Kualitas �Testing tidak dapat memastikan kualitas software, namun dapat memberikan jaminan terhadap software pada suatu tingkat tertentu �Jaminan kualitas (Quality Assurance – QA) mengukur kualitas proses yang digunakan untuk membuat produk berkualitas Testing merupakan bagian dari aktifitas QA

Hubungan Testing Dengan Kualitas � Proyek pengembangan software memiliki kecenderungan untuk mengalami kegagalan Proyek

Hubungan Testing Dengan Kualitas � Proyek pengembangan software memiliki kecenderungan untuk mengalami kegagalan Proyek yang gagal ? ? ? � Salah satu usaha menurunkan tingkat resiko terjadinya kegagalan adalah dengan berorientasi pada kualitas

Tujuan testing �Adalah menemukan sebanyak mungkin masalah (error) �Tujuan dari menemukan masalah adalah memperbaikinya

Tujuan testing �Adalah menemukan sebanyak mungkin masalah (error) �Tujuan dari menemukan masalah adalah memperbaikinya Tangani masalah yang bersifat penting, karena tidak semua permasalahan dapat.

Misi tim testing �Tidak hanya untuk melakukan testing, tetapi juga membantu meminimalkan resiko kegagalan

Misi tim testing �Tidak hanya untuk melakukan testing, tetapi juga membantu meminimalkan resiko kegagalan proyek �Mencari masalah dari produk �Mencari masalah potensial �Mencari kehadiran masalah Intinya adalah mencari dan melaporkan sehingga tim lain dapat membuat keputusan terhadap pengembangan produk

Cont'd Perlu diingat, tester hanya menginformasikan Tidak melakukan pembenahan kode Tester adalah individu yang

Cont'd Perlu diingat, tester hanya menginformasikan Tidak melakukan pembenahan kode Tester adalah individu yang memberikan hasil pengukuran dari kualitas produk

Psikologi testing �Jika pengembangan dilakukan secara konstruktif, maka testing dilakukan secara destruktif �Tester harus

Psikologi testing �Jika pengembangan dilakukan secara konstruktif, maka testing dilakukan secara destruktif �Tester harus mempunyai keinginan yang mendasar untuk membuktikan kode gagal dan akan melakukan apa saja untuk membuatnya gagal �Bila seorang tester hanya ingin membuktikan bahwa kode beraksi sesuai dengan fungsi bisnisnya, maka tester tersebut telah gagal dalam menjalankan tugasnya sebagai tester

Prinsip-prinsip testing prinsip pertama �Testing yang komplit (dilakukan secara menyeluruh) dilakukan. tidak memungkinkan ØKemungkinan

Prinsip-prinsip testing prinsip pertama �Testing yang komplit (dilakukan secara menyeluruh) dilakukan. tidak memungkinkan ØKemungkinan jumlah kombinasi testcase yang amat besar �Pertimbangan domain masukan yang mungkin sangat besar jumlahnya (masukan yang valid, tdk valid, masukan yg diedit dll) �Kompleksitas user interface dan desain.

Cont'd �Jalur program yang mungkin dapat dilewati sangat banyak ØHarus dilakukan test ulang, setiap

Cont'd �Jalur program yang mungkin dapat dilewati sangat banyak ØHarus dilakukan test ulang, setiap ada perbaikan pada masing-masing bug

Prinsip kedua �Testing merupakan pekerjaan yang kreatif dan sulit Ømitos-mitos yang salah tentang testing

Prinsip kedua �Testing merupakan pekerjaan yang kreatif dan sulit Ømitos-mitos yang salah tentang testing : �Testing itu mudah �Tiap orang akan dapat melakukan testing dengan sendirinya padahal

Cont'd Testing bukanlah hal yang sederhana, karena �Untuk dapat melakukan testing yang efektif harus

Cont'd Testing bukanlah hal yang sederhana, karena �Untuk dapat melakukan testing yang efektif harus mengetahui keseluruhan sistem �Sistem sendiri tidak sederhana (mudah dipahami)

Prinsip ketiga �Testing berbasis pada resiko walaupun testing secara keseluruhan tidak dapat dilakukan, tidak

Prinsip ketiga �Testing berbasis pada resiko walaupun testing secara keseluruhan tidak dapat dilakukan, tidak berarti bahwa testing yang efektif tidak dapat dilakukan testing merupakan hasil pertimbangan dari resiko dan ekonomi

Cont'd Ø Secara ringkas, testing dipengaruhi oleh pertimbangan : �Sumber daya dan biaya yang

Cont'd Ø Secara ringkas, testing dipengaruhi oleh pertimbangan : �Sumber daya dan biaya yang dibutuhkan untuk melakukan testing menurut skala prioritas, kompleksitas dan kesulitan testing �Biaya dari keterlambatan pengiriman produk (kemungkinan besar disebabkan testing) �Kemungkinan adanya suatu defect �Biaya yang disebabkan oleh defect, bilamana defect tsb menyebabkan error yang membawa kerugian langsung maupun tak langsung bagi customer

Prinsip keempat �Testing harus direncanakan butuh pemikiran dgn pendekatan secara keseluruhan, desain tes dan

Prinsip keempat �Testing harus direncanakan butuh pemikiran dgn pendekatan secara keseluruhan, desain tes dan penetapan hasil yg diinginkan utk setiap kasus tes (test case) yg dipilih test plan dokumen : ygmencakupkeseluruhtujuan testing dan pendekatan testing test design dokumen : ygmendefinisikanapaygtelah dipilih utk dites dan hasil yg diharapkan “test direncanakan didesain sebelum kode dibuat”

Cont'd Perencanaan tes sangat penting, yaitu : �Utk dpt menjaga arah pelaksanaan tes agar

Cont'd Perencanaan tes sangat penting, yaitu : �Utk dpt menjaga arah pelaksanaan tes agar tidak menyimpang dari tujuan tes itu sendiri (mengukur kualitas SW) �Menjaga kesesuaian penggunaan sumber daya dan jadual proyek dengan menetapkan apa yang akan dites dan kapan berhenti �Membantu tester fokus terhadap apa yang akan dites (membuat test case)

Prinsip kelima �Testing butuh independensi testing yang paling efektif adalah yang dilakukan oleh pihak

Prinsip kelima �Testing butuh independensi testing yang paling efektif adalah yang dilakukan oleh pihak ketiga (tidak bias)

Dasar-dasar testing �Testing dikatakan baik, jika : �Kemungkinan mendapatkan error tinggi �Tidak redundan -->

Dasar-dasar testing �Testing dikatakan baik, jika : �Kemungkinan mendapatkan error tinggi �Tidak redundan --> resource terbatas, tiap tes yang dilakukan HARUS memiliki tujuan yang berbeda �Tidak terlalu simpel atau kompleks

Cont'd �Kode untuk kondisi khusus mendapatkan porsi tes yang sama dengan kode yang umum

Cont'd �Kode untuk kondisi khusus mendapatkan porsi tes yang sama dengan kode yang umum �Kode untuk kondisi khusus --> peluang memp. bug tinggi �Testing untuk kode yang dijalankan dalam kondisi normal tidak mengeksekusi error handling code �Testing yang sukses adalah testing yang berhasil menemukan error yang tidak diketahui

“ STRATEGI PENGUJIAN/TESTING PERANGKAT LUNAK ”

“ STRATEGI PENGUJIAN/TESTING PERANGKAT LUNAK ”

�Strategi uji coba PL memudahkan para perancang untuk menentukan keberhasilan system yg telah dikerjakan.

�Strategi uji coba PL memudahkan para perancang untuk menentukan keberhasilan system yg telah dikerjakan. Hal yg harus diperhatikan adalah langkah-langkah perencanaan dan pelaksanaan harus direncanakan dengan baik dan berapa lama waktu, upaya dan sumber daya yg diperlukan. �Strategi uji coba mempunyai karakteristik sbb : �Pengujian mulai pada tingkat modul yg paling bawah, dilanjutkan dgn modul di atasnya kemudian hasilnya dipadukan. �Teknik pengujian yang berbeda mungkin menghasilakn sedikit

�Pengujian dilakukan oleh pengembang perangkat lunak dan (untuk proyek yang besar) suatu kelompok pengujian

�Pengujian dilakukan oleh pengembang perangkat lunak dan (untuk proyek yang besar) suatu kelompok pengujian yang independen. �Pengujian debugging merupakan aktivitas yang berbeda, tetapi debugging termasuk dalam strategi pengujian. � Pengujian PL adalah satu elemen dari topik yang lebih luas yang sering diacu sebagai verifikasi dan validasi (V& V). �Verifikasi : Kumpulan aktifitas yg menjamin penerapan PL benar-benar sesuai dgn fungsinya. �Validasi : Kumpulan aktivitas yang berbeda yang memastikan bahwa PL yang dibangun dapat memenuhi keperluan pelanggan. � Dgn kata lain : �Verifikasi : “ Apakah kita membuat produk dgn benar? ” �Validasi : “ Apakah kita membuat benar-benar suatu produk? ”

Pendekatan Strategis ke pengujian perangkat lunak 1. Pengujian Unit 2. Pengujian Integrasi 3. Pengujian

Pendekatan Strategis ke pengujian perangkat lunak 1. Pengujian Unit 2. Pengujian Integrasi 3. Pengujian Validasi 4. Pengujian Sistem

1. Pengujian Unit �Berfokus pada inti terkecil dari desain perangkat lunak yaitu modul �Biasanya

1. Pengujian Unit �Berfokus pada inti terkecil dari desain perangkat lunak yaitu modul �Biasanya berorientasi pada white box

Pengujian Unit v Checklist untuk pengujian interface (Myers) � Apakah jumlah parameter input sama

Pengujian Unit v Checklist untuk pengujian interface (Myers) � Apakah jumlah parameter input sama dengan jumlah argumen? �Apakah antara atribut dan parameter argumen sudah cocok? �Apakah antara sistem satuan parameter dan argumen sudah cocok? �Apakah jumlah argumen yang ditransmisikan ke modul yang dipanggil sama dengan atribut parameter?

Pengujian Unit �Apakah atribut dari argumen yang ditransmisikan ke modul yang dipanggil sama dengan

Pengujian Unit �Apakah atribut dari argumen yang ditransmisikan ke modul yang dipanggil sama dengan atribut parameter? �Apakah sistem unit dari argumen yang ditransmisikan ke modul yang dipanggil sama dengan sistem satuan parameter? �Apakah jumlah atribut dan urutan argumen ke fungsi-fungsi built-in sudah benar? �Adakah referensi ke parameter yang tidak sesuai dengan poin entri yang ada? �Apakah argumen input only diubah? �Apakah definisi variabel global konsisten dengan modul ?

Pengujian Unit �Test case harus didesain untuk mengungkap kesalahan dalam kategori �pengetikan yang tidak

Pengujian Unit �Test case harus didesain untuk mengungkap kesalahan dalam kategori �pengetikan yang tidak teratur dan tidak konsisten �inisialisasi yang salah atau nilai-nilai default �Nama variabel yang tidak benar �Tipe data yang tidak konsisten

Seberapa baik sistem yang sudah dibangun ? v Dua Aspek yang dipertimbangkan: �Apakah implementasi

Seberapa baik sistem yang sudah dibangun ? v Dua Aspek yang dipertimbangkan: �Apakah implementasi sudah sesuai dengan spesifikasi ? �Apakah spesifikasi sesuai dengan kebutuhan user ? v Validasi �“Apakah sistem yang dikembangkan sudah benar? ” �Pengujian dimana sistem ketika diimplementasikan sesuai dengan yang diharapkan v Verifikasi �“Apakah sistem dikembangkan dengan cara yang benar ? ” �Pengujian apakah sistem sudah sesuai dengan spesifikasi

2. Integration testing �Menjelaskan kecacatan dalam antarmuka dan interaksi antar komponen terpadu (modul). �Semakin

2. Integration testing �Menjelaskan kecacatan dalam antarmuka dan interaksi antar komponen terpadu (modul). �Semakin besar kelompok komponen perangkat lunak yang diuji terkait dengan elemen-elemen dari desain arsitekturnya akan dipadukan diuji sampai perangkat lunak bekerja sebagai sistem.

3. Pengujian Validasi � Setelah semua kesalahan diperbaiki maka langkah selanjutnya adalah validasi testing.

3. Pengujian Validasi � Setelah semua kesalahan diperbaiki maka langkah selanjutnya adalah validasi testing. � Pengujian validasi dikatakan berhasil bila fungsi yg ada pada PL sesuai dgn yg diharapkan pemakai. � Validasi PL merupakan kumpulan seri uji coba black box yg menunjukkan sesuai dgn yg diperlukan. � Kemungkinan kondisi setelah pengujian: 1. Karakteristik performansi fungsi sesuai dgn spesifikasi dan dapat diterima. 2. Penyimpangan dari spesifikasi ditemukan dibuatkan daftar penyimpangan.

Pengujian Alpha dan Beta �Apabila PL dibuat untuk pelanggan maka dapat dilakukan aceeptance test

Pengujian Alpha dan Beta �Apabila PL dibuat untuk pelanggan maka dapat dilakukan aceeptance test sehingga memungkinkan pelanggan untuk memvalidasi seluruh keperluan. �Test ini dilakukan karena memungkinkan pelanggan menemukan kesalahan yg lebih rinci dan membiasakan pelanggan memahami PL yg telah dibuat.

�Pengujian Alpha Dilakukan pada sisi pengembang oleh seorang pelanggan. PL digunakan pada setting yg

�Pengujian Alpha Dilakukan pada sisi pengembang oleh seorang pelanggan. PL digunakan pada setting yg natural dgn pengembang “yg memandang” melalui bahu pemakai dan merekam semua kesalahan dan masalah pemakaian. �Pengujian Beta Dilakukan pada satu atau lebih pelanggan oleh pemakai akhir PL dalam lingkungan yg sebenarnya, pengembang biasanya tidak ada pengujian ini. Pelanggan merekan semua masalah (real atau imajiner) yg ditemui selama pengujian dan melaporkan pada pengembang pada interval waktu tertentu.

4. Pengujian Sistem �Pada akhirnya PL digabungkan dgn elemen system lainnya dan rentetan perpaduan

4. Pengujian Sistem �Pada akhirnya PL digabungkan dgn elemen system lainnya dan rentetan perpaduan system dan validasi tes dilakukan. Jika uji coba gagal atau diluar skope dari proses daur siklus pengembangan system, langkah yg diambil selama perancangan dan pengujian dapat diperbaiki. Keberhasilan perpaduan PL dan system yg besar merupakan kuncinya. �Sistem testing merupakan rentetan pengujian yg berbeda-beda dgn tujuan utama mengerjakan keseluruhan elemen system yg dikembangkan.

Pengujian Sistem (lanjutan) � Recovery/perbaikan Testing Adalah system testing yg memaksa PL mengalami kegagalan

Pengujian Sistem (lanjutan) � Recovery/perbaikan Testing Adalah system testing yg memaksa PL mengalami kegagalan dalam bermacam-macam cara dan memeriksa apakah perbaikan dilakukan dgn tepat. � Security Testing Adalah pengujian yg akan melalukan verifikasi dari mekanisme perlindungan yg akan dibuat oleh system, melindungi dari hal-hal yg mungkin terjadi. � Strees Testing Dirancang untuk menghadapi situasi yg tidak normal pada saat program

Menjalankan test 1. Testing aplikasi desktop 2. Testing aplikasi server 3. Testing aplikasi web

Menjalankan test 1. Testing aplikasi desktop 2. Testing aplikasi server 3. Testing aplikasi web

1. Testing aplikasi desktop � Jenis : v Functionality : �Aplikasi harus terlihat dan

1. Testing aplikasi desktop � Jenis : v Functionality : �Aplikasi harus terlihat dan berfungsi sebagaimana mestinya terhadap end-user atau pengguna akhir. Testing dilakukan dengan menggunakan data yang menggambarkan data yang digunakan oleh pengguna sesungguhnya. �Data yang dimasukkan tersimpan dengan benar pada database. �Pengujian dilakukan sekelompok pengguna dengan kemampuan yang berbeda. v Configuration �Jika aplikasi Anda di-develop untuk lingkungan yang besar, testing harus dilakukan pada komputer khusus. Komputer yang digunakan sebagai komputer testing harus terlebih dahulu dikonfigurasi hanya dengan: a. Operating system yang dibutuhkan. b. Software pendukung/add on untuk aplikasi Driver yang diperlukan oleh aplikasi, jika ada. c. Aplikasi yang dites.

v Compatibility �Hardware �OS �Diimplementasikan pada konfigurasi yang berbeda diuji compatibilitasnya. Misalnya jika membuat

v Compatibility �Hardware �OS �Diimplementasikan pada konfigurasi yang berbeda diuji compatibilitasnya. Misalnya jika membuat di IE, coba di Firefox, Opera, Safari �HTML validation

2. Pengujian Aplikasi Server �Volume Testing �Stress Testing �Performance Testing �Data Recovery Testing �Data

2. Pengujian Aplikasi Server �Volume Testing �Stress Testing �Performance Testing �Data Recovery Testing �Data Backup and Restore Testing �Data Security Testing

Volume Testing �Menemukan kelemahan sistem selama melakukan pemrosesan data dalam jumlah yang besar dalam

Volume Testing �Menemukan kelemahan sistem selama melakukan pemrosesan data dalam jumlah yang besar dalam periode waktu yang singkat. �Tujuan: meyakinkan bahwa sistem tetap melakukan pemrosesan data antara batasan fisik dan batasan logik. �Contoh: �Mengujikan proses antar server dan antar partisi hardisik pd satu server.

Stress Testing �Tujuan: mengetahui kemampuan sistem dalam melakukan transaksi selama periode waktu puncak proses.

Stress Testing �Tujuan: mengetahui kemampuan sistem dalam melakukan transaksi selama periode waktu puncak proses. Contoh periode puncak: ketika penolakan proses login on-line setelah sistem down atau pada kasus batch, pengiriman batch proses dalam jumlah yg besar dilakukan setelah sistem down. �Contoh: Melakukan login ke server ketika sejumlah besar workstation melakukan proses menjalankan perintah sql database.

Performance Testing � Dilakukan secara paralel dengan Volume dan Stress testing untuk mengetahui unjuk

Performance Testing � Dilakukan secara paralel dengan Volume dan Stress testing untuk mengetahui unjuk kerja sistem (waktu respon, throughput rate) pada beberapa kondisi proses dan konfigurasi. � Dilakukan pada semua konfigurasi sistem perangkat keras dan lunak. �Mis. : pd aplikasi Client-Server diujikan pd kondisi korporate ataupun lingkungan sendiri (LAN vs. WAN, Laptop vs. Desktop) �Menguji sistem dengan hubungannya sistem ke lain pada server yg sama. � Load Balancing Monitor � Network Monitor

Data Recovery Testing �Investigasi dampak kehilangan data melalui proses recovery ketika terjadi kegagalan proses.

Data Recovery Testing �Investigasi dampak kehilangan data melalui proses recovery ketika terjadi kegagalan proses. �Penting dilakukan karena data yg disimpan di server dapat dikonfigurasi dengan berbagai cara. �Kehilangan Data terjadi akibat kegagalan sistem, hardisk rusak, peghapusan yg tidak sengaja, kecelakaan, virus dan pencuri.

n Data Backup and Restore Testing �Dilakukan untuk melihat prosedur back-up dan recovery. �Diakukan

n Data Backup and Restore Testing �Dilakukan untuk melihat prosedur back-up dan recovery. �Diakukan dengan mensimulasikan beberapa kesalahan untuk menguji proses backup dan recovery. �Pengujian dilakukan terhadap strategi backup: frekuensi, medium, waktu, mekanisme backup (manual/ otomatis), personal, ? Berapa lama backup akan disimpan. �Switching antara live dan backup server ketika terjadi

Data Security Testing �Privilege access terhadap database diujikan pada beberapa user yang tidak memiliki

Data Security Testing �Privilege access terhadap database diujikan pada beberapa user yang tidak memiliki privilege access ke database. �Shutdown database engine melalui operating system (dengan beberapa perintah OS) yg dapat mematikan aplikasi database.

Testing aplikasi web �Testing untuk aplikasi web memiliki banyak kesamaan dengan testing untuk aplikasi

Testing aplikasi web �Testing untuk aplikasi web memiliki banyak kesamaan dengan testing untuk aplikasi client server, tetapi aplikasi web lebih sulit karena tingkat kompleksitasnya lebih tinggi interaksi komponen (teknologi) yang dipergunakan tidak terbatas �Browser �OS �Aplikasi plugin, dll

�Idealnya semua komponen dan fungsi yg ada pada sisi client dan server harus dites

�Idealnya semua komponen dan fungsi yg ada pada sisi client dan server harus dites (tapi sgt jarang bisa dilakukan) pendekatan terbaik agar tetap sesuai dengan batasan waktu dan budget : �Mengecek requirement project/kebutuhan proyek �Mensetting prioritas sesuai hasil risk analysis �Tentukan fokus testing yg dilakukan

Risk analysis �Risk analysis yang dilakukan harus mempertimbangkan : �seberapa mirip lingkungan test dengan

Risk analysis �Risk analysis yang dilakukan harus mempertimbangkan : �seberapa mirip lingkungan test dengan lingkungan produksi (idealnya akan mirip) �fungsionalitas mana yang sangat kritikal terhadap tujuan pembuatan website �area mana yang memerlukan interaksi DB yang lebih banyak

�tipe permasalahan seperti apa yang akan lebih sering dikomplain �area mana dari suatu situs

�tipe permasalahan seperti apa yang akan lebih sering dikomplain �area mana dari suatu situs yang akan lebih sering dibuka �aspek mana yang memiliki resiko keamanan lebih tinggi

faktor seperti project requirement, risk analysis, budget dan schedule menentukan kategori testing yang mana

faktor seperti project requirement, risk analysis, budget dan schedule menentukan kategori testing yang mana yang sesuai dengan project web yang dilaksanakan

Kategori testing web �Load testing �Security testing �Link testing �HTML validation �dll

Kategori testing web �Load testing �Security testing �Link testing �HTML validation �dll

Penjelasan �Load testing �Testing dengan load yang sudah diatur rangenya untuk menentukan pada poin

Penjelasan �Load testing �Testing dengan load yang sudah diatur rangenya untuk menentukan pada poin mana respons time sistem turun atau bahkan gagal sama skali. �Server yang dipakai, seting konfigurasi yang dipergunakan, script CGI, desain database dan faktor-faktor lain bisa juga memberikan pengaruh �Testing bisa dilakukan dengan 2 cara �Testing keseluruhan komponen dibawah kondisi yang bermacam-macam �Testing masing-masing komponen

� Security testing �Untuk aplikasi web base mengharuskan tingkat keamanan yang tinggi, testing aplikasi

� Security testing �Untuk aplikasi web base mengharuskan tingkat keamanan yang tinggi, testing aplikasi harus mempertimbangkan pengujian keamanan aplikasi tersebut. �Menguji semua fungsi yg berhubungan dengan firewall, enkripsi, autentikasi, transaksi, akses database. �Selain permasalahan kontrol akses di sisi client (password dan enkripsi) juga ada permasalahan di sisi server spt siapa yg berhak mempublish dan memodifikasi file html, siapa yang memiliki wewenang untuk melakukan publikasi final, yang meng-approve suatu file graphics, file sound dan halaman layout �Sebagai contoh adalah sebuah aplikasi e-commerce yang mengizinkan transaksi melalui kartu kredit. Cukup banyak terjadi kasus pencurian PIN/Password credit card dengan memanfaatkan kelemahan aplikasi ecommerce.

�Link testing �Untuk menentukan apakah link dari suatu situs baik itu ke internal dan

�Link testing �Untuk menentukan apakah link dari suatu situs baik itu ke internal dan external web pages bekerja �Web yg memiliki banyak link ke situs luar perlu link testing yg dijadwal secara teratur �HTML validation �Ditentukan oleh audience yg dituju, jenis browser yang kemungkinan akan dipakai dan seberapa sesuai dengan standar html, microsoft atau ekstensi lainnya

Tool yang dipergunakan �Load testing Curl-Loader, Stress. Tester, Proxy Sniffer, Funkload, Loadea, Load. Manager,

Tool yang dipergunakan �Load testing Curl-Loader, Stress. Tester, Proxy Sniffer, Funkload, Loadea, Load. Manager, web. Stress, WAPT, FORECAST, dll �Security testing Hailstorm, OWASP Security testing tools, Gama. Sec, Wikto, add-ons di firefox SQL Inject Me 0. 4. 0

Cont’d �Link testing Web. Light, HTML Power. Tools, Broken Link Preventer, W 3 C

Cont’d �Link testing Web. Light, HTML Power. Tools, Broken Link Preventer, W 3 C Link Checker �HTML validation Web. Light, HTML Power. Tools, W 3 C CSS Validation Service, W 3 C HTML Validation Service

�TERIMA KASIH ATAS PERHATIAN ANDA !!!

�TERIMA KASIH ATAS PERHATIAN ANDA !!!