gRPC
Proto dosyaları yükleyin, dört streaming modunun tamamını çağırın ve Testnizer'ın yerel gRPC motoruyla metadata'yı inceleyin.
Testnizer, ana süreçte @grpc/grpc-js ve @grpc/proto-loader kullanır —
reflection sunucusu gerekmez, aracı proxy gerekmez, port yönlendirmesi gerekmez.
gRPC sekmesi açma
+ Yeni → gRPC tıklayın. Editör, bir proto dosyası seçici ve boş bir servis tarayıcısıyla açılır.
Proto dosyası yükleme
Proto dosyası seç’e tıklayın ve dosyayı diskten seçin. Testnizer dosyayı (aynı dizin ağacındaki yerel import’lar dahil) ayrıştırır ve Servis ve Metod açılır menülerini doldurur.
Proto’nuz diğer proto dosyalarını göreli yolla içe aktarıyorsa Testnizer onları aynı kök dizinden çözer — dosyayı düzleştirmeniz gerekmez.
Sunucu adresi
Hedefi host:port biçiminde girin:
api.internal:443
localhost:50051
TLS / mTLS, Bağlantı panelinde yapılandırılır:
| Seçenek | Açıklama |
|---|---|
| Plaintext | Şifrelenmemiş gRPC (grpc://) |
| Server TLS | Sistem güven deposunu (veya eklediğiniz özel CA’yı) kullanarak sunucu sertifikasını doğrular |
| Mutual TLS | Ayrıca bir istemci sertifikası gönderir — projenin sertifika deposundan seçin |
Geçerli CA’sı olmayan sunucu TLS için Ayarlar → Sertifikalar bölümüne öz imzalı bir CA sertifikası ekleyebilirsiniz; Testnizer bu hostname için ona güvenir.
Servis ve metod
Proto yüklendikten sonra açılır menülerden bir servis ve metod seçin. Testnizer, istek mesajı türü için tüm alanları içeren (sıfır değerleriyle dolu) bir JSON iskeleti oluşturur. Önem verdiğiniz alanları doldurun ve ihtiyaç duymadıklarınızı temizleyin — seri hale getirici null değerli isteğe bağlı alanları yok sayar.
Streaming modları
Unary
Tek istek, tek yanıt. Testnizer istek mesajını gönderir ve yanıtı sağ panelde gösterir.
Server-streaming
Tek istek, yanıt akışı. Testnizer çağrıyı açık tutar ve her yanıt mesajını geldikçe zaman çizelgesine ekler. Akışı yarı kapatmak için İptal’e tıklayın.
Client-streaming
Bir akış açın, birden fazla istek mesajı tek tek gönderin (her biri için Gönder düğmesini kullanarak), ardından yarı kapatmak ve tek yanıtı beklemek için Gönderimi bitir’e tıklayın.
Bidirectional streaming
İstemci ve sunucu aynı anda akış yapar. İstek mesajları göndermek için Gönder düğmesini kullanın; sunucu mesajları paylaşılan zaman çizelgesinde görünür. Akışın istemci yarısını bitirmek için Kapat’a tıklayın.
Metadata
Metadata sekmesi, anahtar-değer çiftleri olarak gRPC çağrı metadata’sı eklemenizi sağlar (HTTP header’larına eşdeğer). Hem istek hem de yanıt metadata’sı gösterilir.
Yaygın kullanımlar:
authorization: Bearer {{token}}x-request-id: {{$randomUUID}}grpc-timeout: 30S
İstek ve yanıt görünümü
İstek ve yanıt mesajları güzel biçimlendirilmiş JSON (protobufjs JSON temsili)
olarak gösterilir. Enum değerleri sayı yerine adla gösterilir. bytes alanları
Base64 olarak gösterilir.
Streaming çağrılar için zaman çizelgesindeki her mesaj ayrı ayrı genişletilebilir.
Son tarihler
İstek ayarlarında (dişli simgesi) bir çağrı son tarihi ayarlayın. Testnizer
grpc-timeout metadata header’ını gönderir ve son tarihe ulaşılırsa çağrıyı
iptal eder; DEADLINE_EXCEEDED durumu gösterilir.
Durum kodları
gRPC durum kodları (OK, CANCELLED, NOT_FOUND, UNAUTHENTICATED vb.)
yanıt panosunun üzerindeki durum göstergesinde önem düzeyine göre renklendirilmiş
olarak görünür:
OK (0)→ yeşilCANCELLED (1),NOT_FOUND (5)→ sarıINTERNAL (13),UNAVAILABLE (14),UNAUTHENTICATED (16)vb. → kırmızı
Sunucu yansıması (deneysel)
Sunucuda gRPC yansıma servisi etkinse Testnizer, proto dosyası olmadan servisleri listeleyebilir. Bağlantı panelinde Sunucu yansıması kullan seçeneğini açın ve Servisleri getir’e tıklayın. Yansımayla yüklenen servis tanımları yerel olarak önbelleğe alınır.
Ortam değişkenleri
{{değişken}} ikamesi, gönderim anında sunucu adresinde, metadata değerlerinde
ve JSON istek gövdesinde çalışır.