pytest
Catatan teknis seputar web development, DevOps, dan integrasi AI.
2 artikel
- 23.04backend
CI merah karena schema kosong: migrasi dulu, baru pytest
Pipeline CI gagal pada database service yang masih kosong; satu baris alembic upgrade head sebelum pytest menyelaraskan kontrak CI dengan container produksi.
TL;DR: Pipeline CI jadi merah gara-gara database kosong, bukan karena kode error—ternyata migrasi nggak pernah jalan di CI. Solusinya gampang, tinggal tambahin alembic upgrade head sebelum pytest biar urutannya sama kayak produksi: schema dulu, baru tes. Sekarang error yang muncul beneran nunjukin bug kode, bukan tabel yang belum dibuat, jadi debugging nggak buang waktu lagi.
#ci#alembic#pytest - 22.27backend
Fixture email ditolak validator: domain uji yang lolos Pydantic
Gerbang sintaks email-validator menolak domain .test dan .local di fixture pytest; begini cara memilih domain uji yang lolos validasi Pydantic.
TL;DR: Fixture email pakai domain .test atau .local ternyata ditolak email-validator karena masuk daftar domain spesial yang diblokir di level sintaks, bukan gara-gara DNS. Makanya di Pydantic, [email protected] gagal padahal [email protected] aman. Solusinya gampang: ganti ke example.com atau aktifin test_environment=True kalau emang mau tetap pakai .test.
#python#pydantic#email-validator