Senin, 26 Desember 2011

RESUME OBJECT ORIENTED TESTING

Pendahuluan

Proses ujicoba sistem yang berorientasi objek (object-oriented system) dimulai dengan meninjau ulang analisis dan model desain berorientasi obyeknya (object-oriented analysis and design models). Ketika sebuah program telah dituliskan, object-oriented testing (OOT) dimulai dengan menguji "in the small" dengan class testing (class operations dan collaborations).

Ketika class-class tersebut diintegrasikan menjadi sebuah subsistem, maka masalah kolaborasi class akan diketahui. Terakhir, use-cases dari model OOA digunakan untuk menemukan kesalahan validasi software.

OOT hampir mirip dengan ujicoba software konvensional dalam hal kasus uji yang akan dibangun untuk melatih class-class yang ada dan kolaborasi antar class-nya juga prilakunya. OOT berbeda dari ujicoba software konvensional dalam hal penekanan terhadap konsistensi dan kelengkapan penaksiran dari model OOA dan OOD yang telah dibangun.OOT cenderung lebih fokus kepada masalah integrasi dari pada unit testing.

Bahasa Prosedural :

- Serangkaian tugas diselesaikan dalam bentuk fungsi atau prosedur.

- Cara pandang program adalah suatu urutan instruksi.

- Programer harus me-break down suatu problem menjadi sub problem yang lebih simple.

- Fungsi dan prosedur menjadi fokus utama.

- Fungsi dan prosedur digunakan untuk memanipulasi data.

- Data bersifat pasif.

Object-Oriented Programming atau OOP :

- suatu paradigma pemrograman yang berorientasikan kepada objek.

- Fungsi dan data bukan menjadi dua hal yang terpisah.

- Fungsi dan data menjadi satu kesatuan yang disebut sebagai obyek aktif.

- Cara pandang program adalah serangkaian obyek yang bekerjasama untuk menyelesaikan suatu problem.

Apakah Objek itu :

Semua benda yang ada di dunia nyata dapat dianggap sebagai obyek. Contoh : rumah, mobil, sepeda motor, gelas, komputer, meja dll.

Karakteristik Objek :

- Setiap obyek memiliki atribut sebagai status (state).

- Setiap obyek memiliki tingkah laku (behavior) .

- Contoh: obyek sepeda

-Memiliki atribut (state) : pedal, roda, jeruji, warna, jumlah roda.

-Memiliki tingkah laku (behavior) : kecepatanya menaik, kecepatannya menurun, perpindahan gigi sepeda.

- Penggambaran pemrograman berorientasi obyek = penggambaran pada dunia nyata.

- Pada pemrograman berorientasi obyek:

State disimpan pada variabel

Tingkah laku disimpan pada method

Terdapat Konsep dasar dari Pemrograman Berorientasi Objek :

1. Kelas :

- Definisi class: merupakan template untuk membuat obyek.

- Definisi class: merupakan prototipe / blue prints yang mendefinisikan variabel – variabel dan method – method secara umum.

- Obyek merupakan hasil instansiasi dari suatu kelas.

- Proses pembentukan obyek dari suatu class disebut dengan instantiation.

- Obyek disebut juga instances.

2. Object :

Membungkus data dan fungsi bersama menjadi suatu unit dalam program computer sebuah object merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.

3. Abstraksi :

Kemampuan untuk memfokus pada inti.

4. Enkapsulasi : Pembungkusan

5. Polimorfism :

Melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut dikirim.

6. Inheriten :

Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada - objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang perilaku

Komponen yang diuji dalam Object-oriented testing adalah class object.

1. Testing levels

- Testing operations pada objects

- Testing object classes

- Testing clusters cooperating objects

- Testing OO system secara lengkap

2. Pengujian Class

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

3. Cluster Testing

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

4. Object-Interaction Testing

- Object class testing

- Complete test yang menguji class melibatkan

- Testing 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.

5. Integrasi Object

Levels 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.

7. Approaches cluster testing Use-case atau scenario testing

- Testing berdasarkan pada interaksi user dengan sistem.

- Keuntungannya diujikan oleh user yg berpengalaman.

8. Object interaction testing

Tests barisan interaksi object yang berhenti ketika suatu operation object tidak memanggil service dari object lain.

9. Scenario-based testing

Identifikasi scenarios dari use-cases dan menambahkannya dengan diagram interaksi yang menunjukkan object-object yang terlibat dalam scenario.

10. Weather station testing

Thread pengeksekusian methode

- CommsController:request-WeatherStation:report-WeatherData:summarise

Inputs dan outputs

- Input report request dengan acknowledge yg sesuai serta output report akhir

Model Pengujian OOA dan OOD

Model 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 objek

(Pegujian kecil -pengujian besar)

1. Pengujian unit

2. Pengujian integrasi

3. Validasi

4. Pengujian sistem

Desain Test Case untuk Perangkat OO Metode desain test case oleh Berard,

- Test case harus diidentifikasi secara unik dan eksplisit

- Tujuan pengujian harus dinyatakan

- Daftar langkah pengujian harus dikembangkan bagi masing-masing pengujian

Daftar Isi pengujian

1. Daftar keadaan yang ditetapkan untuk objek yang akan diuji

2. Daftar pesan dan operasi yang digunakan sebagai akibat dari Pengujian

3. Daftar pengecualian akan ditemui saat objek diuji

4. Daftar kondisi eksternal

Metode pengujian yang dapat diaplikasikan pada tingkat kelas

- Pengujian random untuk kelas OO

- Pengujian partisi dan tingkat kelas

Tidak ada komentar:

Posting Komentar