1 / 18

Testing dan Implementasi Sistem

Testing dan Implementasi Sistem. Bab 2. Dasar-Dasar Testing. Lecturer: Arochman. Tujuan : Memberikan landasan yang cukup dalam memahami dasar-dasar testing ( seperti obyektifitas dan prinsip-prinsip dasar testing dn testabilitas ).

ernst
Télécharger la présentation

Testing dan Implementasi Sistem

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Testing danImplementasiSistem Bab 2. Dasar-Dasar Testing Lecturer: Arochman Tujuan: • Memberikanlandasan yang cukupdalammemahamidasar-dasar testing (sepertiobyektifitasdanprinsip-prinsipdasar testing dntestabilitas). • Memberikangambaransecaraumumtentangsiklushidup testing danintegrasinyadidalamsiklushiduppengembangan software. Referensi: • Pressman, Roger S., “Software Engineering: A Practitioner’s Approach,” Fifth Edition, McGraw-Hill, New York, 2001. • Hetzel, Bill, “The Complete Guide to Software Testing,” Second Edition, John Wiley & Sons, 1988. • Collard & Co., “Software testing & Quality Assurance Techniques,” Collard & Co., 1997. • Shoemaker, Dan, and Jovanovic, Vladan, “Engineering A Better Software Organization,” Quest Publishing House, Michigan, 1999.

  2. 1. Obyektifitas Testing Dasar-Dasar Testing 2. Misi dari Tim Testing • Meningkatkankepercayaanbahwasistemdapatdigunakandengantingkatresiko yang dapatditerima • Menyediakaninformasi yang dapatmencegahterulangnya error yang pernaterjadi • Menyediakaninformasi yang membantuuntukmendeteksi error secaradini • Mencari error dankelemahanatauketerbatasansistem • Mencarisejauhapakemampuandarisistem • Menyediakaninformasiuntukkualitasproduk software Misidaritim testing tidakhanyauntukmelakukan testing, tapijugauntukmembantumeminimalkanresikokegagalanproyek Tester tidakmelakukanpembenahanataupembedahankode, tidakmempermalukanataumelakukankomplainpadasuatuindividuatautim, hanyamenginformasikan Tester adalahindividu yang memberikanhasilpengukurandarikualitas software

  3. 3. Psikologi Testing Dasar-Dasar Testing 4. Prinsip-prinsip Testing • Tester haruskeinginan yang mendasaruntuk “membuktikankodegagal, danakanmelakukanapasajauntukmembuatnyagagal” • Bilaseorang tester hanyainginmembuktikanbahwakodeberaksisesuaidenganfungsibisnisnya, maka tester tersebuttelahgagaldalammenjalankantugasnyasebagai tester Testing yang komplittidakmungkin Testing merupakanpekerjaankreatifdansulit Alasanpentingdiadakan testing adalahuntukmencegahterjadi errors Testing berbasispadaresiko Testing harusdirencanakan Testing membutuhkanindependensi

  4. 5. Testabilitas Dasar-Dasar Testing • Untukmembantu testing dalammendisain test case yang efektifdanlebihmudah, perekayasa software harusmenempatkantesttabilitasdalambenaknya. • Menurut James bach, testabilitas software adalahseberapamudah (suatu program komputer) dapatdites. • Karakteristik yang dapatmengarahpada software yang dapatdites: • Operability, Semakinbaik software bekerja, akanmembuat software ditesdenganlebihefisien. • Observability,apa yang andalihat, adalahapa yang andates. • Controllability,dengansemakinbaikkitamengenali software, semakinbanyak testing yang dapatdiotomatisasidandioptimalisasi. • Decomposability,denganpengendalianbatasan testing, kitadapatlebihcepatdalammengisolasimasalahdanmelakukan testing ulang yang lebihbaik. • Simplicity,semakinsedikit yang dites, semakincepatkitamelakukannya. • Stability,Semakinsedikitperubahan, semakinsedikit/ masalahatauganguan testing. • Understandability,semakinbanyakinformasi yang kitamiliki, kitaakandapatmelakukanteslebihbaik.

  5. 6. Kemampuan Tester yang Diharapkan Dasar-Dasar Testing • Kemampuansecaraumum • Mempunyaikemampuananalisa yang kuatdanterfokus • Mempunyai kemampuan komunikasi yang baik • Mempunyailatarbelakang QA • Pemahamanterhadapmetodologi • Pengembanganrencanates • Pembuatandanperawatanlingkungantes • Standartes • Dokumentasites (seperti test cases dan procedure test) • Pengetahuanakanpendekatan testing • Integration testing • Acceptance Testing • Stress / Volume Testing • Regression testing • Functional testing • End-To-End Testing • GUI Testing

  6. 6. Kemampuan Tester yang Diharapkan […Lanjutan] Dasar-Dasar Testing • Pengetahuantentangsistem (berhubungandenganpasardariorganisasibersangkutan) • Perbankan/Keuangan • ProdukKomersial • Telecom • Internet • Y2K • Pengetahuan dan pengalaman akan penggunaan alat bantu testing • Alat bantu capture atau playback (sepertiWinRunner) • Alat bantu Load testing (sepertiLoadRunner, RoboTest) • Kemampuanterhadaplinkungan testing • Mainframe (seperti MVS, JCL). • Client – Server (seperti WinNT, UNIX) • Kemampuanterhadapaplikasi • Dokumentasi (seperti office, excel, word, Lorus Notes) • Database (seperti oracle, access, 3GL, 4GL, SQL, RDBMS) • Pemrograman (seperti C++, VB, OO)

  7. 6. Personalitas Tester Dasar-Dasar Testing • Atributpositif • Terencana • Bermentaljuara • Berpendirianteguh • Praktikal • Analitikal • Bermoralbaik • Atributnegatif • Sedikitempatiterhadappengembang • Kurangberdiplomasi • Skeptis • Keraskepala

  8. 6. Personalitas Tester [… Lanjutan] Dasar-Dasar Testing Hambatanapa yang akandihadapi tester dalambekerjasamadenganpengembang?

  9. 6. Personalitas Tester [… Lanjutan] Dasar-Dasar Testing • Hambatan yang akandihadapi tester dalambekerjasamadenganpengembang, Pengembang (developers) padaumumnyaakancenderunguntukmelarikandiridanbersembunyidarinya, bilamerekamerasahal-halsebagaiberikut: • Percayabahwa tester akanmenggangguperkerjaanmerekadanmanambahkankerumitandenganmasalah-masalah yang terjadiakibatkeberadaan tester. • Takutuntukmendiskusikanhal-hal yang berkaitandenganpengembangan yang sedangdilakukan, dimanahaltersebutakandapatdigunakanuntukmenjatuhkanmereka.

  10. 7. Pengertian Defect dari Software Dasar-Dasar Testing • User interface errors: sistemmemberikansuatutampilan yang berbedadarispesifikasi. • Error handling: pengenalandanperlakuanterhadap error bilaterjadi. • Boundary – related errors: perlakuanterhadapnilaibatasandarijangkauanmereka yang mungkintidakbenar. • Calculation errors: perhitunganarimatikadanlogika yang mungkintidakbenar. • Initial and later states: fungsigagalpadasaatpertamadigunakanatausesudahitu. • Control flow errors: pilihan terhadap apa yang akan dilakukan berikutnya tidak sesuai untuk status saat ini. • Errors in handling or interpreting data: melewatkandanmengkonversi data antarsistem (danmungkinkomponen yang terpisahdarisistem) dapatmenimbulkan error. • Race conditions: biladua event diprosesakanmakasalahsatuakanditerimaberdasarkanprioritassampaipekerjaanselesaidenganbaik, barupekerjaanberikutnya. • Load conditions: saatsistemdipaksapadabatasmaksimum, masalahakanmulaimuncul, seperti arrays, overflow, diskfull.

  11. 7. Pengertian Defect dari Software [… Lanjutan] Dasar-Dasar Testing • Hardware: antarmukadengansuatu device mungkintidakdapatberoperasidenganbenarpadasuatukondisitertentuseperti device unavailable. • Source and Version Control: program yang telahkadaluwarsamungkinakandapatdigunakanlagibilaadarevisiuntukmemperbaikinya. • Documentation: penggunatakdapatmelihatoperasi yang telahdideskripsikandalamdokumenpanduan. • Testing errors: tester membuatkesalahanselama testing danberpikirbahwasistemberkelakuantakbenar.

  12. 8. SiklusHidup Software secaraUmum Dasar-Dasar Testing Pembagianfase-fase/tahapandapattidaksamaantarasuatuorganisasidenganorganisasi lain, namunsemuanyamemilikitahap-tahapdasar yang sama.

  13. 9. SiklusHidup Testing SecaraUmum Dasar-Dasar Testing • Padaawalnya testing merupakansalahsatu sub-fasedarifasepengembangan (development), setelahfase coding. • Sudutpandang testing yang tepatadalahdenganmenyediakansuatusiklushidup testing secaralengkap, yang merupakansuatubagiandanmenjadisatukesatuandidalamsiklushidup software secarakeseluruhan

  14. 9. Aktifitas Testing SecaraUmum Dasar-Dasar Testing • Perencanaan • Rencanapendekatanumum • Menentukanobyektivitas testing • Memperjelassecaraumum • Akusisi • Desaintes • Menerapkantes • Pengukuran • Eksekusites • Cekterminasi • Evaluasihasil

  15. 10. TigaTingkatan Testing SecaraUmum Dasar-Dasar Testing 10.1. Praktik unit testing secara umum • Unit testing: Testing penulisankode-kode program dalamsatuan unit terkecilsecara individual. • System Testing: Proses testing padasistemterintegrasiuntukmelakukanverifikasibahwasistemtelahsesuaispesifikasi. • Acceptance Testing: Testing formal yang dilakukanuntukmenentukanapakahsistemtelahmemenuhikriteriapenerimaandanmemberdayakanpelangganuntukmenentukanapakahsistemdapatditerimaatautidak. Tujuan: Konfirmasibahwamodultelahdikodedenganbenar. Pelaku: BiasanyaProgramer Apa yang dites: Fungsi (Black Box), Kode (White Box), Kondisi ekstrim dan batasan-batasan. Kapanselesai: Biasanyasaatprogramertelahmerasapuasdantidakdiketahuilagikesalahan. Alat bantu: Tidakbiasadigunakan. Data: Biasanyatidakdidata.

  16. 10.2. Praktik system testing secaraumum Dasar-Dasar Testing 10.3. Praktik acceptance testing secara umum • Tujuan: Merakitmodulmenjadisuatusistem yang bekerjadanmenentukankesiapanuntukmelakukan Acceptance Test. • Pelaku: Pemimpintimataugruptes. • Apa yang dites: Kebutuhan dan fungsi sistem, Antarmuka sistem. • Kapanselesai: Biasanyabilamayoritaskebutuhantelahsesuaidantidakadakesalahan mayor yang ditemukan. • Alat bantu: Sistempustakadanpustaka test case, Generator, komparatordan simulator data testing. • Data: Data kesalahan yang ditemukan, Test case Tujuan: Mengevaluasikesiapanuntukdigunakan. Pelaku: Penggunaakhiratauagen. Apa yang dites: Fungsi mayor, Dokumentasi, Prosedur. Kapanselesai: Biasanyabilapenggunatelahmerasapuasatautesberjalandenganlancar / sukses. Alat bantu: Komparator. Data: Formalitasdokumen.

  17. SOAL Dasar-Dasar Testing • Apamisidari Tim testing? • Hal apa yang tidakbolehdilakukan tester dalammenjalankantugas? • Tester dinyatakangagaldalammenjalankantugasnyaapabila? • Kenapa testing yang komplittidakmungkindilakukan? • Apa yang dimaksuddenganTesttabilitas? • Sebutkankemampuansecaraumum yang harusdimiliki tester! • Apaperbedaan testing dalamsiklushiduppengembangan software, antarapandanganmasalaludansekarang? • Sebutkanaktifitas testing secaraumum! • Sebutkantigatingkatan testing secaraumum! • Hal apasaja yang ditespadatingkatan unit testing!

  18. Jawaban Dasar-Dasar Testing • Misidaritim testing tidakhanyauntukmelakukan testing, tapijugauntukmembantumeminimalkanresikokegagalanproyek • Tester tidakmelakukanpembenahanataupembedahankode, tidakmempermalukanataumelakukankomplainpadasuatuindividuatautim • Bilaseorang tester hanyainginmembuktikanbahwakodeberaksisesuaidenganfungsibisnisnya • Karenajumlahkemungkinankombinasi test case yang amatbesar. • Testtabilitasadalahseberapamudah (subuah program komputer) dapatdites • Mempunyaikemampuananalisa yang kuatdanterfokus, mempunyaikemampuankomunikasi yang baik, mempunyailatarbelakang QA. • Padamasalalu testing dilakukansetelahtahap coding, tetapisudutpandang testing sekarangmerupakansuatubagiandanmenjadisatukesatuandidalamsiklushidup software secarakeseluruhan. • Perencanaan, Akusisi, Pengukuran • Unit testing, System testing, Acceptance testing • Fungsi, kode, kondisiekstrimdanbatasan-batasan.

More Related