Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Software Testing Strategies
2
Testing Strategy unit test integration test system validation test
3
Unit Testing module to be tested results software engineer test cases
4
Unit Testing module to be tested interface local data structures
boundary conditions independent paths error handling paths test cases
5
Unit Test Environment driver Module stub stub test cases RESULTS
interface local data structures Module boundary conditions independent paths error handling paths stub stub test cases RESULTS
6
Integration Testing Strategies
Options: • the “big bang” approach • an incremental construction strategy
7
Top Down Integration A top module is tested with stubs B F G
stubs are replaced one at a time, "depth first" C as new modules are integrated, some subset of tests is re-run D E
8
Bottom-Up Integration
F G drivers are replaced one at a time, "depth first" C worker modules are grouped into builds and integrated D E cluster
9
Sandwich Testing cluster A Top modules are tested with stubs B F G C
Worker modules are grouped into builds and integrated D E cluster
10
Validation Test Untuk menguji fungsional-2 software terhadap kesesuaian yang diharapkan user Kriteria validasi yang berhasil: Semua kebutuhan fungsional terpenuhi Semua karakteristik tingkah laku sistem dapat dicapai Semua kebutuhan kinerja dapat diperoleh Dokumentasinya betul Kebutuhan lain: kompatibilitas, error recovery, dapat dipenuhi
11
Validation Test Setelah setiap tes validasi, muncul salah satu keadaan berikut: Fungsional dan kinerja sesuai dengan spesifikasi dan diterima Ditemukan penyimpangan terhadap spesifikasi: kekurangan, kelebihan, maupun kekurangtepatan.
12
System Testing Tujuannya untuk melakukan pengujian secara komprehensif dan penuh terhadap sistem berbasis komputer Terdiri atas: Recovery testing Security testing Performance testing
13
Debugging: A Diagnostic Process
14
Debugging: A Diagnostic Process
Tujuannya untuk mencocokkan gejala dengan penyebab kesalahan, yang mengarah pada pembetulan kesalahan Bukan merupakan uji kasus Menghasilkan 2 keluaran: Penyebab akan ditemukan dan dibetulkan Penyebab tidak ditemukan
15
The Debugging Process test cases results Debugging new test cases
regression tests suspected causes corrections Debugging identified causes
16
Debugging Effort time required to diagnose the symptom and
determine the cause time required to correct the error and conduct regression tests
17
Symptoms & Causes symptom cause symptom and cause may be
geographically separated symptom may disappear when another problem is fixed cause may be due to a combination of non-errors cause may be due to a system or compiler error cause may be due to symptom assumptions that everyone cause believes symptom may be due to distributed caused
18
Consequences of Bugs infectious damage catastrophic extreme serious
disturbing annoying mild Bug Type Bug Categories: function-related bugs, system-related bugs, data bugs, coding bugs, design bugs, documentation bugs, standards violations, etc.
19
Debugging Techniques brute force / testing backtracking induction
deduction
20
Debugging Techniques Brute force: Backtracking: Cause elimination:
Paling umum digunakan Memasukkan perintah WRITE dalam program Boros waktu dan usaha Backtracking: Mulai dari tempat gejala yang ditemukan, kemudian di trace back sampai ditemukan penyebabnya Cause elimination: Data yang berkaitan dengan munculnya error diorganisir untuk isolasi penyebab yang potensial
21
Debugging: Final Thoughts
1. Don't run off half-cocked, think about the symptom you're seeing. 2. Use tools (e.g., dynamic debugger) to gain more insight. 3. If at an impasse, get help from someone else. 4. Be absolutely sure to conduct regression tests when you do "fix" the bug.
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.