Analisis Statis vs Analisis Dinamis ing Pengujian Piranti Lunak



Apa Analisis Statis?

Analisis statis ora kalebu eksekusi dinamis piranti lunak sing dites lan bisa ndeteksi cacat sing bisa ditindakake ing tahap awal, sadurunge mbukak program kasebut.

Analisis statis ditindakake sawise kode lan sadurunge nindakake tes unit.

Analisis statis bisa ditindakake dening mesin kanthi otomatis 'mbukak liwat' kode sumber lan ndeteksi aturan sing ora netepi. Conto klasik yaiku kompilator sing nemokake leksikal, sintaksis lan uga sawetara kesalahan semantik.


Analisis statis uga bisa ditindakake dening wong sing bakal mriksa kode kasebut kanggo mesthekake standar lan konvensi kodhe sing tepat digunakake kanggo mbangun program kasebut. Iki asring diarani Review Code lan ditindakake dening pangembang peer, wong liya kajaba pangembang sing nulis kode kasebut.

Analisis statis uga digunakake kanggo meksa pangembang supaya ora nggunakake bagean basa sing bebaya utawa buggy ing basa pamrograman kanthi nyetel aturan sing ora bisa digunakake.


Nalika pangembang nindakake analisis kode, biasane digoleki



  • Garis kode
  • Frekuensi komentar
  • Sarang sing bener
  • Nomer telpon fungsi
  • Kerumitan siklik
  • Uga bisa mriksa tes unit

Atribut kualitas sing bisa dadi fokus analisis statis:

  • Linuwih
  • Keanggotaan
  • Tesabilitas
  • Kagunaan maneh
  • Portabilitas
  • Efisiensi


Apa Keuntungan Analisis Statis?

Kauntungan utama analisis statis yaiku nemokake masalah karo kode sadurunge siyap kanggo integrasi lan tes luwih lanjut.

Keuntungan analisis kode statis:


  • Sampeyan bisa nemokake kekurangan kode ing lokasi sing pas.
  • Bisa ditindakake dening pangembang jaminan perangkat lunak terlatih sing ngerti kode kasebut kanthi lengkap.
  • Kode sumber bisa dingerteni dening pangembang liyane utawa mbesuk
  • Ngidini giliran luwih cepet kanggo ndandani
  • Kekirangan ditemokake luwih dhisik ing siklus pangembangan, nyuda biaya kanggo didandani.
  • Kurang cacat ing tes mengko
  • Cacat unik dideteksi sing ora bisa utawa meh ora bisa dideteksi nggunakake tes dinamis

    • Kode sing ora bisa dihubungi

    • Panggunaan variabel (ora dinyatakake, ora digunakake)

    • Fungsi sing ora diarani

    • Pelanggaran nilai wates

Watesan analisis kode statis:

  • Mbuwang wektu yen ditindakake kanthi manual.
  • Piranti otomatis ngasilake positip lan negatif sing salah.
  • Ora cukup personel sing dilatih kanggo nganalisis analisis kode statis.
  • Piranti otomatis bisa nyedhiyakake rasa aman sing salah yen kabeh wis diatasi.
  • Piranti otomatis mung apik karo aturan sing digunakake kanggo mindhai.
  • Ora nemu kerentanan sing dilebokake ing lingkungan runtime.


Apa Analisis Dinamis?

Beda karo Analisis Statis, yen kode ora dileksanakake, analisis dinamis adhedhasar eksekusi sistem , asring nggunakake alat.

Saka Wikipedia definisi analisis program dinamis :

Analisis program dinamis yaiku analisis piranti lunak komputer sing ditindakake kanthi program eksekusi sing digawe saka piranti lunak kasebut ing prosesor nyata utawa virtual (analisis sing ditindakake tanpa nindakake program dikenal minangka analisis kode statis). Piranti analisis program sing dinamis bisa uga kudu dimuat perpustakaan khusus utawa uga nyusun kode program.


Praktek analisis dinamis sing paling umum yaiku nglakokake Tes Unit marang kode kasebut kanggo nemokake kesalahan kode.

Keuntungan analisis kode dinamis:

  • Ngidentifikasi kerentanan ing lingkungan runtime.
  • Ngidini analisis aplikasi sing sampeyan ora duwe akses menyang kode nyata.
  • Ngenali kerentanan sing bisa uga negatif ing analisis kode statis.
  • Sampeyan ngidini sampeyan ngetrapake temuan analisis kode statis.
  • Bisa ditindakake tumrap aplikasi apa wae.

Watesan analisis kode dinamis:

  • Alat otomatis nyedhiyakake rasa aman sing salah yen kabeh wis diatasi.
  • Ora bisa njamin jangkoan tes lengkap saka kode sumber
  • Piranti otomatis ngasilake positip lan negatif sing salah.
  • Piranti otomatis mung apik karo aturan sing digunakake kanggo mindhai.
  • Luwih angel nglacak kerentanan bali menyang lokasi sing pas ing kode kasebut, luwih suwe kanggo ngatasi masalah kasebut.