Hoppscotch CLI adalah cara gratis dan sumber terbuka untuk menjalankan koleksi API dari terminal. Jika Anda sudah menggunakan Hoppscotch di web atau desktop, hopp test memungkinkan Anda mendorong permintaan yang sama ke dalam pipeline CI tanpa membayar apa pun. Itu adalah kekuatan nyata, dan artikel ini tidak akan menyangkalnya.
Namun, Hoppscotch CLI juga memiliki fokus yang sempit secara sengaja. Ia menjalankan koleksi dan melaporkan hasilnya. Ia tidak merancang API, membuat mock-nya, mendokumentasikannya, atau mengelolanya sebagai kode. Jadi, banyak tim mencapai titik di mana mereka menginginkan satu alat yang melakukan lebih dari sekadar mengeksekusi file JSON, atau mereka menemukan kendala seperti persyaratan Node v22 dan mulai mencari alternatif.
Apa yang sebenarnya dilakukan Hoppscotch CLI
Hoppscotch CLI dikirimkan sebagai paket npm @hoppscotch/cli. Anda menginstalnya secara global:
npm i -g @hoppscotch/cli
Satu hal yang perlu diketahui di awal: ia membutuhkan Node.js v22 atau yang lebih baru. Jika Anda masih menggunakan Node 20, Anda tetap menggunakan CLI v0.26.0, yang dapat mempersulit citra CI bersama di mana pekerjaan lain menggunakan versi Node yang lebih lama.
Perintah intinya adalah hopp test. Anda mengarahkannya ke file koleksi (atau ID koleksi cloud) dan ia akan menjalankan setiap permintaan secara berurutan:
hopp test ./collection.json -e ./environment.json -d 500
Untuk instance cloud atau yang di-host sendiri, Anda meneruskan ID ditambah kredensial:
hopp test <collection-id> -e <environment-id> --token <access_token> --server <server-url>
Ini mengeksekusi skrip pra-permintaan dan skrip pengujian (suite pw.test(), kasus pw.expect()), memvalidasi respons, dan keluar dengan kode non-nol jika ada asersi yang gagal. Ini juga mendukung --reporter-junit <path> untuk JUnit XML, ditambah --iteration-count dan --iteration-data <csv> untuk eksekusi berbasis data. Itu adalah runner gratis yang benar-benar mumpuni.
Mengapa tim mencari alternatif hopp test
Alasan orang mencari pengganti Hoppscotch CLI biasanya bersifat praktis, bukan ideologis:
- Ini hanya runner koleksi, tidak lebih. Desain, mocking, dan dokumentasi berada di tempat lain. Anda akhirnya menyatukan beberapa alat.
- Anda harus mengekspor JSON terlebih dahulu. Spesifikasi dan lingkungan masuk sebagai file koleksi/lingkungan yang diekspor (atau ID cloud). Tidak ada linting spesifikasi atau lapisan desain di CLI itu sendiri.
- Batas bawah Node v22. Lebih baru dari apa yang menjadi standar banyak citra build, yang berarti penyesuaian versi ekstra.
- Tidak ada alur kerja spesifikasi sebagai kode. Anda tidak dapat mengelola endpoint, skema, atau cabang dari CLI. CLI berada di hilir dari tempat Anda mendefinisikan API.
Tidak satu pun dari hal tersebut yang membuat Hoppscotch buruk. Itu membuatnya menjadi alat yang fokus. Jika Anda menginginkan cakupan yang lebih luas, berikut adalah alternatif yang patut Anda pertimbangkan.
1. Apidog CLI (alternatif all-in-one terbaik)
Apidog adalah platform API all-in-one yang mencakup desain, debugging, mocking, dokumentasi, dan pengujian. Apidog CLI membawa sisi pengujian dan manajemen sumber daya ke terminal dan CI/CD, yang menjadikannya alternatif yang kuat untuk runner koleksi mandiri.
Dengan apidog run Anda mengeksekusi skenario pengujian dan koleksi dari baris perintah. Ini mendukung pengujian berbasis data melalui -d (dataset CSV atau JSON), lingkungan melalui -e, reporter dalam format CLI, HTML, dan JSON, serta laporan pengujian cloud dengan --upload-report. Selain menjalankan pengujian, CLI dapat mengimpor OpenAPI dan mengelola sumber daya API, endpoint, skema, lingkungan, cabang, dan permintaan penggabungan, sebagai kode. Jadi, definisi API dan pengujian Anda berada dalam sistem yang sama alih-alih diekspor bolak-balik.
Agar akurat tentang cakupan: Apidog memvalidasi spesifikasi saat impor, tetapi tidak menyediakan linter OpenAPI mandiri atau perintah split/join/bundle. Jika linting spesifikasi murni di CI adalah tujuan Anda, inso (di bawah) lebih cocok. Penawaran Apidog adalah integrasi, Anda merancang, membuat mock, mendokumentasikan, dan menguji di satu tempat, lalu mengelola lapisan pengujian dan sumber daya dari CLI.
Kelebihan:
- Satu platform untuk desain, mock, dokumen, dan pengujian alih-alih rantai alat
- Eksekusi berbasis data dengan dataset CSV/JSON
- Reporter CLI, HTML, dan JSON, ditambah laporan cloud yang dapat diunggah
- Sumber daya sebagai kode: mengelola endpoint, skema, cabang, dan permintaan penggabungan dari CLI
- Mengimpor OpenAPI secara langsung
Kekurangan:
- Tidak ada perintah linter spesifikasi mandiri (gunakan inso atau Redocly untuk linting gaya Spectral)
- Platform lengkap ini lebih dari yang Anda butuhkan jika Anda hanya menjalankan satu koleksi
Jika Anda membandingkan keduanya secara langsung, lihat Apidog CLI vs Hoppscotch CLI dan panduan praktis migrasi Hoppscotch CLI ke Apidog CLI. Panduan lengkap Apidog CLI yang lebih luas mencakup instalasi, otentikasi, dan set perintah lengkap. Untuk mencobanya, unduh Apidog.
2. Newman (runner Postman)
Newman adalah runner koleksi baris perintah resmi Postman. Jika tim Anda sudah menggunakan Postman, Newman adalah jalur yang paling mudah: ekspor koleksi dan lingkungan, lalu jalankan di CI.
newman run collection.json -e env.json -r cli,json
Ini mendukung beberapa reporter (CLI, JSON, JUnit, HTML melalui plugin), file data untuk iterasi, dan kontrak kode keluar yang stabil untuk pipeline.
Kelebihan:
- Matur, terdokumentasi luas, ekosistem besar
- Kompatibilitas Postman kelas satu
- Reporter yang fleksibel dan iterasi berbasis data
Kekurangan:
- Seperti Hoppscotch CLI, ini hanya runner, tidak ada lapisan desain atau dokumen
- Terikat pada format koleksi Postman dan model scripting-nya
- Anda masih mengekspor JSON untuk menggunakannya
Untuk perbandingan langsung dengan pendekatan Apidog, lihat Apidog CLI vs Newman.
3. inso (Insomnia CLI oleh Kong)
inso adalah pendamping baris perintah untuk klien Insomnia open-source Kong. Ia melakukan sesuatu yang tidak dilakukan Hoppscotch CLI: ia melinting spesifikasi OpenAPI. Linting berjalan di Spectral, linter OpenAPI Stoplight, jadi jika gerbang kualitas spesifikasi di CI penting bagi Anda, inso adalah pesaing yang nyata.
inso run test "My Test Suite" --env "Staging"
inso lint spec "My API Design"
inso export spec "My API Design" --output output.yaml
inso membaca dari direktori .insomnia (dibuat oleh Git Sync Insomnia) atau direktori data aplikasi, dan merujuk suite dan spesifikasi berdasarkan nama. Anda dapat menginstalnya dengan brew install inso atau docker pull kong/inso:latest.
Kelebihan:
- Linting OpenAPI nyata melalui Spectral
- Jalankan pengujian dan koleksi, ekspor spesifikasi, semuanya dari terminal
- Jalur instalasi Brew dan Docker
Kekurangan:
- Mereferensikan sumber daya berdasarkan nama, yang bisa rapuh dalam skrip
- Insomnia 8 memperkenalkan akun cloud/login yang wajib pada tahun 2023 yang menimbulkan reaksi keras, dan ada insiden migrasi serta kehilangan data seputar perubahan tersebut. Penting untuk diketahui jika Anda baru mengadopsi ekosistem ini.
Jika Anda mengevaluasi Insomnia secara lebih luas, Apidog vs Insomnia dan alternatif aplikasi Insomnia terbaik adalah bacaan selanjutnya yang baik. Ada juga perbandingan terfokus Apidog CLI vs inso (Insomnia CLI).
4. Step CI (pengujian API open-source dalam YAML)
Step CI adalah alat kualitas API open-source yang mendefinisikan pengujian dalam YAML deklaratif daripada JS yang discrip. Anda menjelaskan permintaan dan respons yang diharapkan, lalu ia memeriksanya. Ini mendukung REST, GraphQL, dan gRPC, yang merupakan cakupan protokol yang lebih luas daripada sebagian besar runner koleksi.
npx stepci run workflow.yml
Kelebihan:
- YAML deklaratif, mudah dibaca dalam kontrol versi
- Multi-protokol (REST, GraphQL, gRPC)
- Tidak ada dependensi GUI, konfigurasi sepenuhnya berada di repo Anda
Kekurangan:
- Komunitas dan ekosistem yang lebih kecil
- Tidak ada lapisan desain, mock, atau dokumentasi
- Anda menulis pengujian secara manual dalam YAML daripada merekamnya
Step CI sangat cocok jika Anda menginginkan pengujian yang human-readable, terintegrasi dengan git, dan tidak memerlukan UI sama sekali.
5. Hurl (pengujian HTTP teks biasa)
Hurl menjalankan permintaan HTTP yang ditulis dalam format teks biasa yang sederhana dan mengasertasi respons. Ini dibangun di atas libcurl, berjalan cepat, dan menghasilkan keluaran yang bersih. Tidak ada skrip dan tidak ada koleksi JSON, hanya file .hurl yang dapat Anda bedakan dalam permintaan pull.
GET https://api.example.com/health
HTTP 200
[Asserts]
jsonpath "$.status" == "up"
Jalankan dengan:
hurl --test health.hurl
Kelebihan:
- Sangat ringan, satu biner, cepat
- File teks biasa yang terbaca seperti dokumentasi
- Hebat untuk smoke test dan health check di CI
Kekurangan:
- Tingkat lebih rendah daripada kerangka kerja pengujian lengkap
- Tidak ada fitur desain, mock, atau dokumen
- Kurang nyaman untuk skenario kompleks, berantai, dan berbasis data
Hurl unggul untuk pemeriksaan kontrak dan smoke test yang cepat dan mudah dibaca. Ini tidak berusaha menjadi sebuah platform.
Tabel perbandingan
| Alat | Lisensi | Fokus utama | Berbasis data | Linting spesifikasi | Desain/mock/dokumen | Format laporan |
|---|---|---|---|---|---|---|
| Apidog CLI | Komersial (tingkat gratis) | Platform lengkap + pengujian CLI | Ya (CSV/JSON) | Tidak (memvalidasi saat impor) | Ya | CLI, HTML, JSON, cloud |
| Hoppscotch CLI | Sumber terbuka | Runner koleksi | Ya (iterasi CSV) | Tidak | Tidak | CLI, JUnit |
| Newman | Sumber terbuka | Runner Postman | Ya (file data) | Tidak | Tidak | CLI, JSON, JUnit, HTML |
| inso | Sumber terbuka | Runner Insomnia + linter | Terbatas | Ya (Spectral) | Sebagian (dokumen desain) | CLI, JUnit |
| Step CI | Sumber terbuka | Pengujian API YAML | Ya | Tidak | Tidak | CLI, JUnit |
| Hurl | Sumber terbuka | Pengujian HTTP teks biasa | Melalui templating | Tidak | Tidak | CLI, JUnit, HTML |
Cara memilih
- Anda menginginkan satu alat untuk desain hingga pengujian: Apidog CLI. Ini menghilangkan proses ekspor-JSON-lalu-jalankan dan menjaga sumber daya API serta pengujian Anda dalam sistem yang sama.
- Tim Anda sudah menggunakan Postman: Newman. Biaya perpindahan terendah.
- Anda memerlukan linting OpenAPI di CI: inso, karena Spectral.
- Anda menginginkan pengujian deklaratif yang terintegrasi dengan git: Step CI (YAML) atau Hurl (teks biasa).
- Anda puas dengan runner OSS gratis dan hanya ingin tidak terikat Node 22: salah satu dari yang di atas, karena Newman, Step CI, dan Hurl tidak memiliki persyaratan tersebut.
Jika alasan utama Anda beralih adalah batasan runner koleksi daripada gangguan tunggal apa pun, jalur terintegrasi adalah yang harus dilihat pertama kali. Lihat Apidog CLI vs Postman CLI dan pipeline CI/CD Apidog CLI untuk melihat bagaimana sisi pengujian cocok dalam pipeline nyata, dan laporan pengujian Apidog CLI untuk opsi reporter.
FAQ
Apakah Hoppscotch CLI gratis? Ya. @hoppscotch/cli adalah sumber terbuka dan gratis untuk digunakan. Ia menjalankan koleksi, mengeksekusi skrip pengujian, dan mengeluarkan laporan JUnit. Alternatif di sini bukan tentang Hoppscotch yang mahal, melainkan tentang menginginkan lebih dari sekadar runner.
Apa alternatif paling sederhana untuk Hoppscotch CLI jika saya tidak ingin Node v22? Hurl adalah biner tunggal tanpa dependensi Node sama sekali. inso diinstal melalui Homebrew atau Docker. Step CI berjalan melalui npx tetapi tidak terpaku pada Node 22 seperti Hoppscotch CLI saat ini.
Dapatkah saya memindahkan koleksi Hoppscotch saya yang sudah ada ke alat lain? Ya. Sebagian besar alat menerima koleksi yang diekspor atau OpenAPI. Untuk jalur terintegrasi, panduan migrasi Hoppscotch CLI ke Apidog CLI memandu Anda mengimpor dan menjalankan kembali suite Anda.
Apakah Apidog CLI melinting spesifikasi OpenAPI seperti inso? Tidak. Apidog memvalidasi spesifikasi saat impor tetapi tidak memiliki perintah linter mandiri. Jika penegakan panduan gaya ala Spectral di CI adalah persyaratan mutlak, pasangkan Apidog dengan inso atau gunakan Apidog CLI vs Redocly CLI untuk membandingkan opsi yang berfokus pada linting.
Alternatif mana yang terbaik untuk pipeline CI? Semuanya mengembalikan kode keluar non-nol saat gagal, jadi semuanya berfungsi di CI. Faktor penentu adalah apa lagi yang Anda butuhkan: eksekusi murni mendukung Newman atau Hurl; satu sumber kebenaran untuk desain plus pengujian mendukung Apidog CLI; gerbang spesifikasi mendukung inso.
Hoppscotch CLI melakukan pekerjaannya dengan baik. Jika pekerjaan itu saja yang Anda butuhkan, tetaplah menggunakannya. Jika Anda lebih suka menyatukan desain, mocking, dokumentasi, dan pengujian ke dalam satu alur kerja alih-alih menyatukan runner, platform terintegrasi adalah langkah yang tepat. Mulai dengan panduan lengkap Apidog CLI, lalu unduh Apidog dan jalankan skenario pertama Anda.
