Jika Anda menjalankan tes API dari inso, CLI Insomnia milik Kong, dan Anda telah memikirkan perubahan, panduan ini akan memandu Anda secara menyeluruh. Anda akan melihat cara mengekspor spesifikasi dan rangkaian tes Anda dari Insomnia, membawanya ke Apidog, dan menulis ulang perintah inso run Anda sebagai perintah apidog run. Ada tabel perintah sebelum/sesudah sehingga Anda dapat memetakan skrip CI Anda yang sudah ada baris demi baris.
Mengapa tim bermigrasi dari inso ke Apidog CLI
inso adalah alat yang solid. Ia membawa eksekusi permintaan, linting Spectral, dan uji unit ke dalam terminal, dan membaca dari direktori .insomnia yang dibuat oleh Git Sync Insomnia. Jika alur kerja itu cocok untuk Anda, tidak ada aturan yang mengatakan Anda harus pergi.
Gesekan biasanya dimulai dengan aplikasi Insomnia, bukan CLI-nya. Dua hal yang mendorong sebagian besar pencarian migrasi adalah:
- Akun cloud yang diwajibkan. Insomnia 8, yang dirilis pada tahun 2023, memperkenalkan login/akun cloud wajib yang mengejutkan banyak tim. Banyak pengembang menginginkan klien yang mengutamakan lokal tetapi malah mendapatkan dinding pendaftaran.
- Kehilangan data dan kesulitan migrasi. Beberapa pengguna mengalami insiden kehilangan data dan migrasi selama transisi tersebut. Jika Anda pernah mengalaminya, Anda sudah tahu biayanya. Jika Anda sedang dalam pemulihan sekarang, panduan ini akan membantu: memulihkan dan mengekspor data Insomnia dan panduan pemulihan dan migrasi kehilangan data Insomnia 8 yang lebih mendalam.
Alasan lainnya adalah konsolidasi. Dengan inso, CLI adalah salah satu bagian dari tumpukan: Insomnia untuk permintaan, Spectral untuk linting, alat terpisah untuk mocking dan dokumentasi. Apidog menggabungkan desain, debug, pengujian, mocking, dan dokumentasi ke dalam satu platform, dan CLI menjalankan sisi pengujian dari platform tersebut. Lebih sedikit bagian yang bergerak, satu sumber kebenaran.
Jika Anda ingin konteks yang lebih luas sebelum berkomitmen, Apidog vs Insomnia dan memilih antara Insomnia dan Apidog menjelaskan pertukaran untuk aplikasi lengkap, bukan CLI.
Sebelum Anda memulai: apa yang berpindah dan apa yang tidak
Tetapkan ekspektasi di awal agar tidak ada yang mengejutkan Anda di tengah migrasi.
| Aset di Insomnia | Berpindah ke Apidog? | Bagaimana |
|---|---|---|
| Dokumen desain / OpenAPI | Ya | Ekspor ke YAML/JSON, impor ke Apidog |
| Koleksi permintaan | Ya | Ekspor, lalu impor |
| Lingkungan dan variabel | Ya | Dibuat ulang sebagai lingkungan Apidog |
Rangkaian uji unit (inso run test) |
Sebagian | Bangun ulang sebagai skenario uji Apidog |
Konfigurasi lint Spectral (inso lint spec) |
Tidak 1:1 | Lihat catatan jujur di bawah |
Catatan jujur: inso lint spec menjalankan Spectral, linter OpenAPI milik Stoplight, dan itu adalah kekuatan yang nyata. Apidog CLI tidak menyediakan perintah linter spesifikasi mandiri, panduan gaya, pemisah, penggabungan, atau bundling. Apidog memvalidasi spesifikasi Anda saat Anda mengimpornya, sehingga masalah struktural akan muncul pada saat impor, tetapi jika pipeline Anda bergantung pada aturan Spectral kustom sebagai gerbang, pertahankan Spectral di CI Anda bersama Apidog. Jangan berharap apidog lint. Itu tidak ada, dan berpura-pura sebaliknya hanya akan merugikan Anda nanti.
Langkah 1: ekspor spesifikasi dan tes Anda dari Insomnia
inso dapat menulis dokumen desain Anda langsung ke sebuah file. Spesifikasi tersebut direferensikan berdasarkan nama, nama yang sama yang Anda lihat di aplikasi Insomnia:
# Export an OpenAPI design document to a YAML file
inso export spec "My API Design" --output my-api.yaml
Jika inso tidak dapat menemukan data Anda, arahkan ke sumber yang benar. Secara default, ia membaca dari direktori .insomnia di direktori kerja atau direktori data aplikasi Insomnia. Ganti dengan --workingDir atau --src:
inso export spec "My API Design" --workingDir ./design --output my-api.yaml
Untuk koleksi permintaan dan apa pun yang tidak dapat diekspor inso dengan bersih, gunakan aplikasi Insomnia itu sendiri: buka aplikasi, pilih ruang kerja Anda, dan gunakan Ekspor untuk menghasilkan file OpenAPI atau Insomnia v4. Simpan dokumen desain dan ekspor koleksi. Anda akan mengimpornya secara terpisah.
Jika Anda sedang dalam pemulihan dan aplikasi tidak mau bekerja sama, panduan ekspor dan pemulihan mencakup cara mengeluarkan data saat Git Sync atau akun cloud bermasalah.
Langkah 2: impor ke Apidog
Buka Apidog, buat proyek, dan impor YAML atau JSON yang baru saja Anda ekspor. Apidog membaca OpenAPI secara native, sehingga endpoint, skema, dan data contoh Anda masuk sebagai sumber daya terstruktur yang dapat Anda edit, mock, dan uji.
Anda juga dapat mengimpor dari CLI sebagai bagian dari penyiapan otomatis, yang berguna saat Anda membuat skrip migrasi seluruh tim daripada mengklik melalui UI. Apidog mengimpor OpenAPI dan mengelola endpoint, skema, lingkungan, cabang, dan permintaan penggabungan sebagai kode dari terminal, mengautentikasi melalui login atau token akses. Jika Anda pertama kali menyiapkan CLI, panduan instalasi Apidog CLI dan panduan CLI lengkap mencakup penyiapan dan alur autentikasi.
Saat mengimpor, Apidog memvalidasi spesifikasi. Jika OpenAPI Anda memiliki masalah struktural, Anda akan mengetahuinya sekarang daripada saat runtime. Ini adalah analog terdekat dengan inso lint spec, dengan satu perbedaan yang perlu diulang: ini adalah validasi, bukan kumpulan aturan Spectral yang dapat dikonfigurasi.
Langkah 3: petakan perintah Anda (bagian yang Anda cari)
Ini adalah inti dari migrasi. Berikut cara perintah inso diterjemahkan ke apidog run.
| Apa yang ingin Anda lakukan | Perintah inso | Padanan Apidog CLI |
|---|---|---|
| Jalankan rangkaian uji unit | inso run test "Smoke Suite" --env "Staging" |
apidog run --test-scenario "Smoke Suite" -e staging |
| Jalankan koleksi | inso run collection "Checkout Flow" --env "Staging" |
apidog run "Checkout Flow" -e staging |
| Jalankan skrip bernama | inso script ci-smoke --env <env-id> |
apidog run -e <env-id> (dihubungkan ke skrip CI Anda) |
| Lint spesifikasi OpenAPI | inso lint spec "My API Design" |
Tidak 1:1; Apidog memvalidasi saat impor |
| Ekspor spesifikasi ke file | inso export spec "My API Design" --output api.yaml |
Ditangani oleh impor/ekspor Apidog, bukan langkah run-time |
Beberapa catatan tentang pemetaan:
- Lingkungan.
insomenggunakan--env "name". Apidog menggunakan-e(--env). Keduanya memilih URL dasar dan variabel lingkungan mana yang akan diterapkan. Buat ulang lingkungan Insomnia Anda sebagai lingkungan Apidog terlebih dahulu, lalu referensikan berdasarkan nama atau ID. - Rangkaian uji menjadi skenario uji. Di mana
inso run testmenjalankan rangkaian uji unit Insomnia, Apidog menjalankan skenario uji. Konsepnya dipetakan dengan rapi: permintaan berurutan dengan pernyataan. Anda akan membangun ulang rangkaian tersebut sekali di Apidog, kemudian ia akan berjalan di setiapapidog run. inso scriptadalah pengarahan tidak langsung. Jika Anda membungkus perintah di balik skrip bernama, cukup panggilapidog runsecara langsung di langkah CI Anda, atau bungkus dalam skrip npm/make Anda sendiri.
Untuk perbandingan perintah demi perintah yang lebih mendalam, Apidog CLI vs inso (Insomnia CLI) membahas bendera demi bendera. Jika Anda berasal dari Newman atau Postman CLI di masa lalu, Apidog CLI vs Newman dan Apidog CLI vs Postman CLI juga membahasnya.
Langkah 4: pindahkan reporter Anda
inso mengandalkan output tes dan pelaporan bergaya JUnit untuk CI. Apidog memberi Anda reporter dalam format CLI, HTML, dan JSON, sehingga build Anda dapat mencetak hasil yang dapat dibaca manusia ke konsol dan mengeluarkan artefak yang dapat dibaca mesin pada saat yang bersamaan:
# Run a scenario and emit both a CLI summary and an HTML report
apidog run --test-scenario "Smoke Suite" -e staging -r cli,html
Pilih json ketika alat hilir perlu mengurai hasilnya, html ketika manusia meninjau build, dan cli untuk umpan konsol langsung. Anda juga dapat mengirim hasil ke laporan uji cloud Apidog dengan --upload-report sehingga seluruh tim dapat melihat jalannya tanpa menggali log CI. Panduan laporan uji mencakup format secara rinci.
Langkah 5: bawa pengujian berbasis data
Jika rangkaian Insomnia Anda berulang melalui data, Apidog mendukung pengujian berbasis data secara native. Berikan dataset CSV atau JSON dengan -d dan skenario akan berjalan sekali per baris:
apidog run --test-scenario "Login Matrix" -e staging -d ./users.csv -r cli,json
Ini adalah salah satu tempat di mana Apidog cenderung terasa lebih terintegrasi daripada merangkai data eksternal melalui inso. Panduan pengujian berbasis data menjelaskan format dataset dan pengikatan variabel.
Langkah 6: hubungkan ke CI
Langkah terakhir adalah menukar perintah di pipeline Anda. Langkah GitHub Actions atau GitLab lama Anda mungkin terlihat seperti ini:
# Before: inso in CI
inso run test "Smoke Suite" --env "CI" --reporter junit
Padanan Apidog:
# After: Apidog CLI in CI
apidog run --test-scenario "Smoke Suite" -e ci -r cli,json --upload-report
Autentikasi runner dengan token akses yang disimpan sebagai rahasia CI, sama seperti Anda menangani langkah ber-kredensial. Panduan pipeline CI/CD dan panduan GitHub Actions memiliki file alur kerja yang dapat disalin-tempel. Untuk detail token dan login, lihat autentikasi Apidog CLI.
Jika Anda mempertahankan Spectral untuk linting (disarankan jika Anda memiliki aturan kustom), pipeline Anda sekarang memiliki dua gerbang: Spectral melinting spesifikasi, Apidog menjalankan tes. Itu adalah kondisi akhir yang sangat wajar, dan jujur tentang apa yang paling baik dilakukan oleh setiap alat.
Menjaga Spectral tetap dalam lingkaran
Untuk memperjelas satu hal yang tidak dapat dipindahkan: jika linting adalah bagian dari kontrak Anda, jangan hilangkan itu. Spectral adalah sumber terbuka dan berjalan dengan baik di luar Insomnia. CI hibrida yang umum terlihat seperti ini:
# Lint dengan Spectral (dipertahankan dari penyiapan inso Anda)
npx @stoplight/spectral-cli lint my-api.yaml
# Tes dengan Apidog CLI
apidog run --test-scenario "Smoke Suite" -e ci -r cli,json
Anda tidak kehilangan apa pun di sisi linting dan mendapatkan platform desain-mock-tes-dokumen terintegrasi Apidog untuk segalanya. Itu adalah pertukaran yang akurat, dan itu bagus untuk sebagian besar tim.
inso vs Apidog CLI sekilas
| Kemampuan | inso (Insomnia CLI) | Apidog CLI |
|---|---|---|
| Jalankan koleksi / rangkaian | Ya | Ya |
| Lingkungan | --env |
-e / --env |
| Linting OpenAPI | Ya (Spectral) | Tidak ada perintah mandiri (memvalidasi saat impor) |
| Pengujian berbasis data | Terbatas | Ya (-d, CSV/JSON) |
| Format laporan | CLI, JUnit | CLI, HTML, JSON, unggah ke cloud |
| Sumber daya sebagai kode | Membaca direktori .insomnia |
Endpoint, skema, cabang, permintaan penggabungan |
| Bagian dari platform terpadu | Insomnia + alat eksternal | Satu platform (desain, mock, dokumen, tes) |
| Akun cloud diperlukan untuk aplikasi | Ya (Insomnia 8+) | Akun Apidog, ramah lokal |
FAQ
Apakah spesifikasi OpenAPI Insomnia saya akan diimpor ke Apidog tanpa editan? Biasanya ya. Apidog membaca OpenAPI secara native dan memvalidasi saat impor. Jika validasi menandai sesuatu, itu biasanya masalah struktural nyata dalam spesifikasi, dan memperbaikinya sekali akan menguntungkan setiap alat di hilir.
Apakah Apidog CLI memiliki perintah lint seperti inso lint spec? Tidak. Apidog memvalidasi spesifikasi saat impor, tetapi tidak ada linter CLI mandiri atau perintah panduan gaya. Jika Anda mengandalkan aturan Spectral kustom, pertahankan Spectral di pipeline Anda di samping apidog run. Untuk perbandingan berdampingan, lihat Apidog CLI vs Redocly CLI, karena Redocly CLI memang menyertakan linter.
Bisakah saya menjalankan Apidog CLI di CI dengan cara yang sama seperti saya menjalankan inso? Ya. Tukar perintahnya, autentikasi dengan token akses dari rahasia CI, dan pilih reporter Anda. Panduan CI/CD memiliki contoh alur kerja lengkap.
Apa yang terjadi pada rangkaian uji unit Insomnia saya? Anda membangun ulang mereka sebagai skenario uji Apidog. Strukturnya langsung diteruskan: permintaan berurutan ditambah pernyataan. Ini adalah pembangunan ulang satu kali, setelah itu mereka berjalan di setiap apidog run.
Saya bermigrasi dari Insomnia karena insiden kehilangan data. Dari mana saya harus memulai? Pulihkan data Anda terlebih dahulu menggunakan panduan pemulihan dan ekspor, lalu ikuti Langkah 2 di atas untuk mengimpor ekspor yang sudah dibersihkan ke Apidog.
Kesimpulan
Bermigrasi dari inso ke Apidog CLI sebagian besar adalah pekerjaan penerjemahan: ekspor spesifikasi dan rangkaian Anda, impor ke Apidog, tulis ulang inso run test dan inso run collection sebagai apidog run, ubah --env menjadi -e, dan arahkan reporter Anda ke output CLI/HTML/JSON Apidog. Pertahankan Spectral jika Anda melakukan linting, karena Apidog memvalidasi saat impor tetapi tidak menggantikan aturan kustom.
Imbalannya adalah satu platform alih-alih tumpukan yang harus Anda terus gabungkan. Siap mencobanya? Unduh Apidog dan jalankan apidog run pertama Anda terhadap spesifikasi yang baru saja Anda ekspor.
