Manajemen dan Kualitas Perangkat Lunak
              IKP321

             Unit Testing
Unit

   Perangkat Lunak
        Code
        Documentation
        Procedure
        Data
   Satuan terkecil Code
        Unit
        Method atau Function atau Procedure
Unit Testing

   Test-case untuk Unit
   Spesifikasi
        Pemanggilan Unit
        Ekspektasi luaran yang dihasilkan oleh Unit
   Menguji apakah Unit sudah berfungsi sebagaimana yang
    diharapkan (as expected)
   Menguji Unit secara independen, tanpa bergantung pada
    hasil komputasi Unit lain
Rehat Sejenak: Python

   Bahasa pemrograman Scripting
   Interpreter
   Multi platform
   Pengguna
        Google
        NASA
        etc.
        This class
   'Secret Weapon'
Python

   Dapat diunduh dari
        http://www.python.org/getit
   Sesuaikan dengan platform komputer masing-masing
    (Windows, Linux, Mac OS)
   Per April 2012, ada dua versi Python
        2.7.2
        3.2.2
   Gunakan versi 2.7.2
IDLE

   Editor sederhana untuk Python
   Bagian dari paket instalasi standar
   Start → Python 2.7.2 → IDLE (Python GUI)
        Mulai menjalankan Python Shell
   File → New Window
        Membuka jendela IDLE
   File → Save As
        "hello.py"
        Letakkan di folder yang mudah diingat dan diakses
         (C:Usersuser)
IDLE

   Ketik di jendela IDLE
        print ("Ini program Python pertamaku.")
   Jalankan program
        Alt + R → Run Module
        Tekan tombol F5
IDLE
IDLE
Fungsi dan Docstring

   Dokumentasi internal dalam program Python
   Jendela IDLE
        File → New Window
        File → Save As
                "maxthree.py"
   Definisikan sebuah fungsi
Fungsi dan Docstring
Fungsi dan Docstring

   Docstring mendokumentasikan deskripsi dan spesifikasi
    sebuah fungsi
   Bagian dari dokumentasi online (online help) dalam
    Python Shell
        Jendela Python Shell
        import maxthree
        help(maxthree)
Fungsi dan Docstring
Rehat Selesai: Doctest

   Bagian dari Docstring
   'Memanggil' fungsi Python sebagai bagian dari test-case
   Test case untuk maxthree
       >>> maxthree(3, 2, 1)
       3
       >>> maxthree(3, 2, 3)
       3
       >>> maxthree(-1,-2, -3)
       -1
Doctest
Menjalankan Doctest

             Jalankan dari Command
              Prompt
                 python -m doctest
                  maxthree.py
Mengimplementasikan Code Fungsi

   Doctest dapat dituliskan sebelum body dari fungsi ditulis
   Doctest memberikan test-case yang fail
   Sebelum code fungsi belum diimplementasikan, semua
    test-case pasti fail
   Doctest memberikan spesifikasi tentang apa yang di-
    expect dari sebuah fungsi
Mengimplementasikan Code Fungsi
Memeriksa Test-case

             Tidak ada test-case yang
              fail
                  python -m doctest
                   maxthree.py
             Gunakan option -v untuk
              menampilkan rincian Unit
              Test
                  python -m doctest -v
                   maxthree.py
Online Help

         Docstring terupdate
          dengan informasi Doctest
         Python Shell
              reload(maxthree)
              help(maxthree)
Pustaka

   www.python.org/getit/
   http://www.annedawson.net/Python_Editor_IDLE.htm
   starship.python.net/~tbryan/UnitTestTalk/index.html
   tjerdastangkas.blogspot.com/search/label/ikp321

ikp321-03

  • 1.
    Manajemen dan KualitasPerangkat Lunak IKP321 Unit Testing
  • 2.
    Unit  Perangkat Lunak  Code  Documentation  Procedure  Data  Satuan terkecil Code  Unit  Method atau Function atau Procedure
  • 3.
    Unit Testing  Test-case untuk Unit  Spesifikasi  Pemanggilan Unit  Ekspektasi luaran yang dihasilkan oleh Unit  Menguji apakah Unit sudah berfungsi sebagaimana yang diharapkan (as expected)  Menguji Unit secara independen, tanpa bergantung pada hasil komputasi Unit lain
  • 4.
    Rehat Sejenak: Python  Bahasa pemrograman Scripting  Interpreter  Multi platform  Pengguna  Google  NASA  etc.  This class  'Secret Weapon'
  • 5.
    Python  Dapat diunduh dari  http://www.python.org/getit  Sesuaikan dengan platform komputer masing-masing (Windows, Linux, Mac OS)  Per April 2012, ada dua versi Python  2.7.2  3.2.2  Gunakan versi 2.7.2
  • 6.
    IDLE  Editor sederhana untuk Python  Bagian dari paket instalasi standar  Start → Python 2.7.2 → IDLE (Python GUI)  Mulai menjalankan Python Shell  File → New Window  Membuka jendela IDLE  File → Save As  "hello.py"  Letakkan di folder yang mudah diingat dan diakses (C:Usersuser)
  • 7.
    IDLE  Ketik di jendela IDLE  print ("Ini program Python pertamaku.")  Jalankan program  Alt + R → Run Module  Tekan tombol F5
  • 8.
  • 9.
  • 10.
    Fungsi dan Docstring  Dokumentasi internal dalam program Python  Jendela IDLE  File → New Window  File → Save As  "maxthree.py"  Definisikan sebuah fungsi
  • 11.
  • 12.
    Fungsi dan Docstring  Docstring mendokumentasikan deskripsi dan spesifikasi sebuah fungsi  Bagian dari dokumentasi online (online help) dalam Python Shell  Jendela Python Shell  import maxthree  help(maxthree)
  • 13.
  • 14.
    Rehat Selesai: Doctest  Bagian dari Docstring  'Memanggil' fungsi Python sebagai bagian dari test-case  Test case untuk maxthree >>> maxthree(3, 2, 1) 3 >>> maxthree(3, 2, 3) 3 >>> maxthree(-1,-2, -3) -1
  • 15.
  • 16.
    Menjalankan Doctest  Jalankan dari Command Prompt  python -m doctest maxthree.py
  • 17.
    Mengimplementasikan Code Fungsi  Doctest dapat dituliskan sebelum body dari fungsi ditulis  Doctest memberikan test-case yang fail  Sebelum code fungsi belum diimplementasikan, semua test-case pasti fail  Doctest memberikan spesifikasi tentang apa yang di- expect dari sebuah fungsi
  • 18.
  • 19.
    Memeriksa Test-case  Tidak ada test-case yang fail  python -m doctest maxthree.py  Gunakan option -v untuk menampilkan rincian Unit Test  python -m doctest -v maxthree.py
  • 20.
    Online Help  Docstring terupdate dengan informasi Doctest  Python Shell  reload(maxthree)  help(maxthree)
  • 21.
    Pustaka  www.python.org/getit/  http://www.annedawson.net/Python_Editor_IDLE.htm  starship.python.net/~tbryan/UnitTestTalk/index.html  tjerdastangkas.blogspot.com/search/label/ikp321