17) pengujian berorientasi obyek mg ke 7

Upload: satrio-nugroho

Post on 11-Jul-2015

85 views

Category:

Documents


0 download

TRANSCRIPT

Pengujian Berorientasi ObyekMinggu ke 6

Object-oriented testingKomponen yang diuji adalah classobject. Lebih besar dibandingkan pengujian suatu function sehingga pendekatan white-box testing perlu diperluas. Tidak jelasnya top suatu system untuk top-down integration dan testing.

Testing levelsTesting Testing Testing Testing operations pada objects object classes clusters cooperating objects OO system secara lengkap

Object Form

Pengujian Class

frm P e n d a fta ra n Ij i n In ve sta si mb A d dNe wFl a g : Bo o le a n mb Da ta Cha n g ed : B o o l e a n Fo rm_ L oa d () Fo rm_ Resiz e () Fo rm_ K eyD o wn( ) Fo rm_ Unl o ad () cm d Ad d _ Cl ic k( ) cm d Ca n cel _Cl ic k( ) cm d Up d a te _ Cl ic k( ) cm d Cl o se _ Cl ic k( ) cm d Fi rst_ Cl ic k( ) cm d La st_ Cl ic k( ) cm d Ne x t_ Cli ck() cm d Pr e vi ou s_Cl i ck() set B ut to n s()

Menguji terhadap semua operation yg ada dan perubahan atribut-atributnya.

Cluster TestingGambaran UI Sistem Pendaftaran Perijinan

Main_Mod frmLogin +m ainForm +f1 frmIjinInvesDatasheet < >

+UserAuthorization

IUserAu th oriza ti on(f rom UserServ ices)

frmMai n +f2 frmIMBDatasheet

+f3

+f3 + f4

+f4

frm PendaftaranIjinInves tas i

frm PendaftaranIMB

Cluster testing digunakan untuk test integrasi terhadap kooperatif object. Identifikasi clusters menggunakan knowledge operation objects dan system features yang diimplementasikan oleh cluster tersebut.

Object-Interaction Testing: Petugas : Layar Utam a Sis tem Loket Pendaftaran 1 : Pen daftaran Baru( ) : Mem buat Pendaftaran Baru : Form ulir Pendaftaran : Pendaftaran Baru

2: Pendaftaran Baru( ) 3: Jalankan Form ulir Pendaftaran( )

4: Tam pilkan Form Pendaftaran( )

5: Masukan Pendaftaran( ) 6 : Buat Pen dafta ran( )

7: T am bahka n Penda ftaran( )

Object class testingComplete test yang menguji class melibatkanTesting semua operations suatu object Setting dan interrogating semua attribute object Menguji object untuk semua state(keadaan) yg mungkin

Inheritance akan mengakibatkan sulitnya perancangan object class tests seperti information yg diuji sulit dilokalisasi.

Contoh: Weather station object interfaceWeatherStation identifier reportWeather () calibrate (instruments) test () startup (instruments) shutdown (instruments)

Test cases dibutuhkan untuk semua operations Menggunakan state model untuk mengidentifikasi state transitions testing Contoh testing sequences Shutdown Waiting Shutdown Waiting Calibrating Testing Transmitting Waiting Waiting Collecting Waiting Summarising Transmitting Waiting

Integrasi ObjectLevels integrasi sedikit berbeda untuk sistem yang berorientasi object. Cluster testing digunakan untuk test integrasi and testing clusters terhadap cooperating objects Identifikasi clusters menggunakan knowledge dari operation objects dan system features yang diimplementasikan oleh cluster tersebut.

Approaches cluster testingUse-case atau scenario testingTesting berdasarkan pada interaksi user dengan sistem. Keuntungannya diujikan oleh user yg berpengalaman.

Object interaction testingTests barisan interaksi object yang berhenti ketika suatu operation object tidak memanggil service dari object lain.

Scenario-based testingIdentifikasi scenarios dari use-cases dan menambahkannya dengan diagram interaksi yang menunjukkan objectobject yang terlibat dalam scenario Lihat contoh scenario berikut ini pada sistem weather station ketika suatu report dibuat

Collect weather data:CommsController request (report) acknowledge () report () summarise () :WeatherStation :WeatherData

send (report) reply (report) acknowledge ()

Weather station testingThread pengeksekusian methodeCommsController:request WeatherStation:report WeatherData:summarise

Inputs dan outputsInput report request dengan acknowledge yg sesuai serta output report akhir Dapat diujikan dengan membuat raw data dan meyakinkan bahwa dapat menghasilkan kesimpulan (summarize) yg sesuai. Gunakan raw data yg sama untuk menguji object WeatherData

Model Pengujian OOA dan OODModel desain dan analisis tidak dapat diuji dalam arti yang konvensional karena model ini tidak dapat dieksekusi, maka kajian teknis formal dapat digunakan untuk menguji kebenaran dan konsistensi model analisis dan model desain

Strategi Pengujian berorientasi objekStrategi klasikPegujian kecil pengujian besar pengujian unit Pengujian integrasi Validasi Pengujian sistem

Desain Test Case untuk Perangkat OOMetode desain test case oleh BerardTest case harus diidentifikasi secara unik dan eksplisit Tujuan pengujian harus dinyatakan Daftar langkah pengujian harus dikembangkan bagi masing-masing pengujian

Daftar Isi pengujianDaftar keadaan yang ditetapkan untuk objek yang akan diuji Daftar pesan dan operasi yang digunakan sebagai akibat dari pengujian Daftar pengecualian akan ditemui saat objek diuji Daftar kondisi eksternal

Metode pengujian yang dapat diaplikasikan pada tingkat kelasPengujian random untuk kelas OO Pengujian partisi dan tingkat kelas

Desain Test Case Inter KelasATM User InterfaceCardInserted Password Deposit Withdraw AccntStatus Terminate VerifyAcct VerifyPIN VerifyPolicy WithdrawReq DepositReq AcctInfo ValidPIN ValidAcct

ATMVerifyStatus DepositStatus DispenseCash PrintAccntStat ReadCardInfo GetCashAmnt

Bank

OpenAcct InitialDeposit AuthorizeCard Deauthorize CloseAcct

CreditLimit AccntType Balance Withdraw Deposit Close

Cashier

Account

Validation Info