Lompat ke konten utama
Capgo logo
Pratinjau PR

Uji coba setiap permintaan pull di ponsel nyata

Your CI uploads each pull request's web build to its own Capgo channel. Reviewers scan a QR code or switch channels in the app to try it on their device, and the channel is deleted when the PR closes. Changes to native code still need a new build.

Dapatkan dukungan manusia dari Martin

  • Satu saluran per permintaan pull
  • Pengujian QR code
  • Membersihkan ketika PR ditutup

Masalah

Perubahan web tidak harus memerlukan biner baru untuk disetujui

Mengulas PR dengan build testing

  1. Pengembang membuka PR

    Perubahan sudah siap untuk disetujui, tapi tidak ada yang bisa mencobanya di ponsel.

  2. Buat, tandatangani, dan unggah

    Seseorang membuat biner native untuk cabang, menandatangani, mengunggah ke TestFlight atau jalur testing Play, dan menunggu prosesnya.

  3. Undang dan instal

    Pengulas perlu ditambahkan sebagai tester dan menginstal build yang tepat.

  4. Ulangi untuk setiap perbaikan

    Setiap komentar ulasan yang mengubah code berarti build lain, unggah lain, dan instal lain.

Setiap putaran ulasan menunggu build native, bahkan ketika hanya JavaScript yang berubah.

Biaya apa yang dikeluarkan tim

Setiap build

Menunggu proses penyimpanan

Setiap build yang Anda unggah ke TestFlight atau jalur pengujian Play diproses sebelum tester dapat menginstalnya. Hal itu terjadi untuk setiap build.

Setiap PR

Membutuhkan build asli untuk tes

Tanpa pembaruan langsung, reviewer hanya dapat mencoba cabang setelah seseorang membangun, menandatangani, dan mengunggah biner baru, bahkan untuk perubahan web saja.

Keterlambatan feedback

Pengujian terjadi setelah penulis melanjutkan

Ketika ulasan menunggu build, feedback datang lebih lambat, penulis sedang melakukan task lain, dan cabang beralih dari utama.

Bagaimana cara kerjanya

How teams preview pull requests with Capgo

Empat langkah CI: atur kunci yang terbatas sekali, unggah per push, bagikan pratinjau, bersihkan pada tutup. Setiap perintah di bawah ini dari dokumen Capgo.

  1. Buat kunci Pratinjau Aplikasi dan aktifkan pratinjau

    Seorang administrator membuat kunci Pratinjau Aplikasi API untuk CI. Kunci ini dapat membuat saluran pratinjau dan mengunggah bundle, tetapi tidak dapat mengubah saluran default atau produksi. Pratinjau diaktifkan sekali per aplikasi.

    # once, run by an admin (not the preview key)
    npx @capgo/cli@latest app set com.example.app --preview
    Kunci Pratinjau Aplikasi API
  2. Unggah bangun PR ke salurannya sendiri

    On each push, CI builds the web app and uploads it with a unique bundle version. bundle upload --channel creates the pr-<number> channel if it does not exist and links the bundle to it.

    npx @capgo/cli@latest bundle upload com.example.app \
      --apikey "$CAPGO_PREVIEW_KEY" \
      --path ./dist \
      --channel "pr-$PR_NUMBER" \
      --bundle "1.2.3-pr.$PR_NUMBER.$GITHUB_RUN_NUMBER"
    Pra-Penawaran PR di dokumen kanal
  3. Tampilkan Pratinjau di PR

    get-qr prints a QR code for the channel, or the preview URLs with --url, so CI can add them to a PR comment.

    npx @capgo/cli@latest get-qr com.example.app \
      --channel "pr-$PR_NUMBER" \
      --apikey "$CAPGO_PREVIEW_KEY" \
      --url
    Hapus saluran ketika PR ditutup
  4. Hapus saluran ketika PR ditutup

    Jalankan ini pada event PR ditutup. Dengan kunci Pratinjau Aplikasi, hanya menghapus saluran dan bundle yang terkait yang dibuat oleh kunci tersebut.

    npx @capgo/cli@latest channel delete \
      "pr-$PR_NUMBER" com.example.app \
      --apikey "$CAPGO_PREVIEW_KEY" \
      --delete-bundle \
      --success-if-not-found
    saluran CLI referensi

Cara reviewer beralih ke saluran PR

Kedua memerlukan saluran yang memungkinkan penugasan sendiri. Kunci Penglihatan Aplikasi tidak menetapkan itu, jadi dengan kunci itu, bagikan penglihatan QR atau atur penggantian perangkat di konsol.

Tampilkan Menu

Turn on the shake menu in internal builds. Testers shake the device to open Capgo's test menu, and the shake channel selector lets them pick a channel.

// capacitor.config.ts (internal builds)
CapacitorUpdater: {
  shakeMenu: true,
}

Pengganti Aplikasi

Tambahkan bidang kanal ke layar pengaturan pengembang dan panggil setChannel() dengan nama kanal PR.

import { CapacitorUpdater } from '@capgo/capacitor-updater'

await CapacitorUpdater.setChannel({
  channel: 'pr-123',
  triggerAutoUpdate: true,
})
Tetapkan Saluran

Pengganti aplikasi

Add a channel field to a developer settings screen and call setChannel() with the PR channel name.

Insinyur QA

  • Cobalah memeriksa bangun web PR di perangkat pribadi Anda
  • Berpindah antara saluran PR tanpa harus menginstal ulang aplikasi.
  • Nama saluran sesuai dengan nomor PR, jadi Anda tahu mana code yang sedang dijalankan

Siapa yang menggunakan pratinjau PR

  • Uji coba fitur di ponsel sebelumnya terintegrasi
  • Scan kode QR code yang diposting di PR
  • Berikan umpan balik langsung di PR itu sendiri

Pengembang

  • Dapatkan feedback perangkat saat PR masih terbuka
  • Setiap push memperbarui saluran PR
  • Tidak perlu build asli untuk perubahan JavaScript saja

Simpan build pengujian vs saluran PR Capgo

  • Mengirimkan PR ke ponsel

    Pengujian TestFlight / Play
    Build asli, tanda tangan, dan proses toko
    Capgo saluran PR
    Konstruksi web dan unggah bundle dari CI
  • Pindah antara PR

    Uji coba / Pengujian Play
    Instal build lain
    Saluran PR Capgo
    Scan QR lain code atau pindah saluran
  • Pengaturan reviewer

    Uji coba / Pengujian Play
    Undangan tester, kemudian instal setiap build
    Saluran PR Capgo
    Instal aplikasi sekali
  • Perubahan native code dan plugin

    Pengujian TestFlight / Play
    Ya
    Capgo Saluran PR
    Tidak, memerlukan pembangunan asli

Aplikasi yang dibangun dengan Capacitor

Product apps need reviewable mobile changes

Learning, event, and community apps can have onboarding, practice, live-session, and subscription changes under review at the same time. PR previews let product, QA, and support inspect a mobile-ready build before merge.

Logo ikon aplikasi StudySmarter - Sekolah & univ Pendidikan

StudySmarter - Sekolah & uni

Aplikasi pendidikan di mana perubahan les, kursus, dan langganan memerlukan tinjauan dari stakeholders.

Google Play menginstal
6.5Juta
Nilai toko
4.8
Aplikasi ikon Poll Everywhere PERUSAHAAN

Aplikasi Poll Everywhere

Aplikasi partisipasi hidup di mana arus acara harus diuji sebelum merge.

Google Play menginstal
1,1 juta
Penghargaan Toko
3.2
lichess • Aplikasi Catur Online Gratis Papan Permainan

Aplikasi Catur Online Gratis lichess

Aplikasi komunitas ini, layar turnamen dan analisis mendapat manfaat dari pratinjau perangkat.

Instalasi Google Play
11,3 juta
Penghargaan Toko
4.3

Bukti pelanggan

Apa yang tim yang menggunakan Capgo katakan

5.0/5 diulas oleh tim pengembang 9,400+ tim Baca Ulasan

Nate van Jole

CTO, Swasta

"Mengatur semuanya membutuhkan kurang dari sehari. Rollout melalui saluran memungkinkan saya untuk menguji di perangkat saya sendiri sebelum sesuatu mengenai pengguna produksi."

Potret Michael Haberler

Michael Haberler

nethead emeritors

“Penghargaan besar atas plugin pembaruan. Ini berfungsi dengan lancar bagi saya, dan pembaruan live adalah akselerator cepat untuk mengembalikan putaran tes.”

No tone @ Webincode

Pengembang, Webincode

“Dengan kemampuan menambahkan ID perangkat ke beberapa kelompok dan menerapkan perubahan ke hanya beberapa kelompok, ini adalah penyelamat nyawa.”

Pertanyaan

Pertanyaan yang Tim Tanya tentang Pratinjau PR

Jawaban jelas untuk mereka yang mengatur CI dan mereka yang melakukan review.

Apakah reviewer memerlukan build baru untuk setiap PR?

Not when the PR only changes the web layer. Reviewers install the app once, and each PR's JavaScript, HTML, CSS, and assets go to its own channel. If the PR adds a plugin or changes native code, it needs a native build. Run build needed in CI to detect that.

Bisa CI key menyentuh saluran produksi kita?

Bisa CI key menyentuh saluran produksi kita?

Tidak dengan kunci App Preview API. Ini dapat membuat saluran pratinjau, mengunggah bundle, dan menghapus hanya saluran dan bundle yang dibuat. Ini tidak dapat mengubah saluran default atau utama. Di GitHub Aksi, jalankan pekerjaan pada pull_request, bukan pull_request_target, dan batasi pada PR dari repositori yang sama.

Kunci App Preview API

Bagaimana reviewer membuka pratinjau?

Seorang admin mengaktifkan pratinjau sekali dengan app set --preview. Setelah itu, get-qr mencetak QR code untuk saluran PR, dan --url mencetak URL pratinjau web dan tautan dalam. Pasang mereka di komentar PR.

Referensi get-qr

Apa yang terjadi pada saluran PR lama dan bundle?

Tambahkan pekerjaan pada event pull request ditutup yang menjalankan channel delete dengan --delete-bundle dan --success-if-not-found. Dengan kunci App Preview, itu menghapus saluran dan bundle yang terkait dengan itu. Bundle dari push sebelumnya dapat dihapus dengan cleanup bundle, menggunakan kunci yang memiliki hak hapus.

Referensi saluran CLI

Apakah ini berfungsi dengan GitLab, Bitbucket, atau Azure DevOps?

Ya. Langkah-langkahnya adalah Capgo CLI perintah, sehingga mereka berjalan di CI mana pun. Dokumen memiliki panduan integrasi untuk GitHub Aksi, GitLab CI, Bitbucket Pipelines, dan Azure DevOps.

Integrasi CI/CD

Tunjukkan pull request berikutnya di ponsel

Tambahkan langkah unggah, QR, dan pembersihan ke CI Anda dan coba mereka pada aplikasi Anda selama masa percobaan gratis.

dukungan manusia dari Martin

Coba gratis 14 hari, tidak perlu kartu kredit. Perubahan native masih memerlukan build baru.