Testnizer

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

+ YenigRPC 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çenekAçıklama
PlaintextŞifrelenmemiş gRPC (grpc://)
Server TLSSistem güven deposunu (veya eklediğiniz özel CA’yı) kullanarak sunucu sertifikasını doğrular
Mutual TLSAyrı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şil
  • CANCELLED (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.