Pengujian fitur dengan pytest

Pengantar Pengujian di Python

Alexander Levin

Data Scientist

Apa itu uji fitur

Fitur

  • fungsionalitas sistem perangkat lunak.
  • memenuhi kebutuhan khusus pengguna.

Fitur

  • lebih luas daripada unit.
  • Dapat digunakan oleh end-user.

Pengujian fitur

  • metode pengujian perangkat lunak.
  • memverifikasi perilaku fitur tertentu.
  • Contoh:
    • Cek distribusi data
    • Menyusun laporan
Pengantar Pengujian di Python

Unit vs. fitur: komputer pribadi

Unit:

  • Tiap tombol
  • Piksel di layar
  • Dioda LED
  • Blok pada disk

Fitur:

  • Keyboard
  • Layar
  • Pencahayaan
  • Sistem berkas
Pengantar Pengujian di Python

Mengapa memakai uji fitur

Pengujian fitur membantu:

  • Menguji pada cakupan interaksi pengguna dengan sistem.

Cakupannya lebih luas daripada unit:

  • Satu unit gagal tidak selalu berarti fiturnya TIDAK OK.

Sebaliknya:

  • Semua unit bekerja sesuai harapan tidak selalu berarti fiturnya OK.
Pengantar Pengujian di Python

Contoh uji fitur: setup

Setup dan definisi kode fitur:

# Setup
import pandas as pd
import pytest

df = pd.read_csv('laptops.csv')

# Fitur filter
def filter_data_by_manuf(df, manufacturer_name):
    filtered_df = df\
        [df["Manufacturer"] == manufacturer_name]
    return filtered_df
Pengantar Pengujian di Python

Contoh uji fitur: pengujian

Kode pengujian:

# Fungsi uji fitur
def test_unique():
    manuf_name = 'Apple'
    filtered = filter_data_by_manuf(df, manuf_name)
    assert filtered\
        ['Manufacturer'].nunique() == 1
    assert filtered\
        ['Manufacturer'].unique() == [manuf_name]
Pengantar Pengujian di Python

Ringkasan

Pengujian fitur - metode pengujian perangkat lunak untuk memverifikasi perilaku fitur tertentu.

Fitur cakupannya lebih luas daripada unit:

  • Jika tombol adalah unit, maka keyboard adalah fitur.

Pengujian fitur membantu memastikan pengguna mendapat apa yang mereka harapkan.

Untuk membuat uji fitur perlu membuat test case.

Kunci merancang uji fitur adalah memahami fitur dalam sistem tertentu.

Pengantar Pengujian di Python

Ayo berlatih!

Pengantar Pengujian di Python

Preparing Video For Download...