Pengantar pengujian di Python

Pengantar Pengujian di Python

Alexander Levin

Data Scientist

Mengapa pengujian sangat penting?

Masalah umum:

  • Bug dan error
  • Kegagalan perangkat keras
  • Perilaku tak terduga

Semua ini dapat menyebabkan peningkatan biaya untuk perbaikan.

Pengujian membantu untuk:

  • Mengidentifikasi cacat, bug, dan error
  • Mengurangi risiko kegagalan perangkat lunak
  • Meningkatkan keandalan, fungsi, dan performa perangkat lunak
Pengantar Pengujian di Python

Apa itu pengujian?

  • Pengujian - proses mengevaluasi suatu sistem atau perangkat lunak
  • Kita perlu pengujian untuk memastikan memenuhi persyaratan yang ditetapkan

  • Tes - prosedur untuk memverifikasi kebenaran aplikasi atau sistem

Pengantar Pengujian di Python

Prasyarat kursus

  • Pemrograman Python tingkat lanjut
  • Pernyataan assert
  • Dekorator
  • Konsep OOP (class, method, inheritance)
Pengantar Pengujian di Python

Pengujian dalam kehidupan nyata

Pikirkan tentang pesawat:

  • Inspeksi visual
  • Pemeriksaan elektronik dan mekanik
  • Pemeriksaan bahan bakar
  • Pemeriksaan penumpang
  • Pemeriksaan cuaca
  • Izin lepas landas dari pengatur lalu lintas udara

Semua hal di atas adalah tes! Kita membutuhkannya demi keselamatan.

pesawat sebelum lepas landas

Pengantar Pengujian di Python

Assert di Python

  • assert condition - untuk menguji apakah condition bernilai True.
  • Jika condition bernilai False, Python akan memunculkan AssertionError.
Pengantar Pengujian di Python

Pengujian dengan pytest - contoh sederhana

pytest - framework pengujian populer di Python yang memudahkan penulisan tes.

Contoh tes "assert" dengan pytest di Python:

import pytest

# Fungsi yang diuji
def squared(number):
    return number * number

# Nama fungsi tes selalu diawali "test"
def test_squared():
    assert squared(-2) == squared(2)
Pengantar Pengujian di Python

Ulasan context manager

  • Context manager - objek Python yang digunakan dengan pernyataan with
  • Kita memakai context manager untuk menyiapkan dan membersihkan konteks sementara
# Contoh menulis ke file
with open("hello_world.txt", 'w') as hello_file:
    hello_file.write("Hello world \n")
Pengantar Pengujian di Python

Mengenal pytest: raises

pytest.raises - digunakan saat Anda mengharapkan tes memunculkan Exception

import pytest

# Fungsi yang diuji
def division(a, b):
    return a / b

# Fungsi tes
def test_raises():
    with pytest.raises(ZeroDivisionError):
        division(a=25, b=0)
Pengantar Pengujian di Python

Ringkasan

Pengujian adalah:

  • Proses menilai apakah perangkat lunak bekerja sesuai harapan
  • Ada dalam kehidupan sehari-hari
  • Penting untuk menghadapi tantangan pengembangan perangkat lunak
  • Membantu memastikan masalah ditangani dengan benar

Implementasi tes:

  • pytest - framework Python yang kuat untuk menyederhanakan pengujian
  • assert - kata kunci Python, digunakan di pytest untuk membuat tes dasar dengan memvalidasi kondisi
  • pytest.raises - context manager untuk membuat tes yang diharapkan menghasilkan Exception
Pengantar Pengujian di Python

Ayo berlatih!

Pengantar Pengujian di Python

Preparing Video For Download...