Postman Nedir? Postman Kullanımı — 3

Mehmet Demirel
7 min readDec 10, 2021

--

Herkese merhaba,

Önceki yazımızda tarayıcımız ve Postman üzerinden birer Request göndererek olayı az çok kapmış bulunmaktayız. Şimdi gelin Postman üzerinde kendimize bir Workspace açarak Collection ve Environment’larla çalışalım.

Postman kurduğunuzu ve hesap açtığınızı düşünerek ilerliyorum. Üst menümüzden “Workspaces” sekmesine tıklıyoruz ve açılan pencereden “New Workspace” sekmesine tıklıyoruz.

Yukarıdaki görseldeki gibi kendinize göre doldurmuşsanız artık hazırız demektir.

Kırmızı sayılar ile işaretlediğim alanlardan yeni bir Collection oluşturabilirsiniz.

Eklemiş olduğumuz kolleksiyona ters (sağ mouse click) tıklayarak ismini “User” olarak değiştirelim. Ardından tekrar ters tıklayarak “Add Folder” diyin 5 adet ekleyin. Ve sırayla metotlarımızın isimleri olsun.

Kolleksiyonları ayırmakta fayda var. Yandaki görseli bir örnek olarak bırakmak isterim.

Artık klasörlerimize Request’lerimizi eklemeye hazırız. Görseldeki gibi yukarıdan aşağı öncelikle Request ekleyelim.

https://reqres.in/ adresine gidin ve uygun şekilde Request’leri ekleyin.

Request’lerinizi ve metotlarınızı oluşturduğunuzu düşünüyorum. Yandaki görsel ile karşılaştırabilirsiniz.

Collection oluşturmayı da öğrendiğimize göre bir sonraki adıma geçelim.

Her metotun içine girdiğimizde bizden sürekli url istiyor. Her seferinde bir şeyler istiyor ve biz bunları yeniden yeniden yazmak durumunda mıyız? İşte bu noktada yardımımıza Environment’lar devreye giriyor.

Environment oluşturma ve kullanımını gerçekleştirelim.

Görselde göstermiş olduğum sekmeye gelerek istediğiniz isimde bir Environment oluşturun ben “Reqres” ismini tercih ettim.

Şimdiyse bizim Workspace’imiz için bu oluşturmuş olduğumuz Environment’ı aktif etmemiz gerekiyor. İster yandaki görseldeki gibi isterseniz de aşağıdaki görseldeki gibi bu işlemi gerçekleştirebilirsiniz.

Environmet’ları kullanırken daha iyi anlayacaksınız.

Şimdi gelin Environment’ımızın içini doldurmaya başlayalım.

Hmm… Peki ne işe yarayacak? Tekrar Collection’a dönelim ve o büyüyü görelim.

Bi dakika bu? Bu az önceki oluşturduğumuz bir Environment’ın bir değişkeni değil mi? Evet bizzat kendisi, iki “{” bırakıp oluşturduğunuz Environment’ın içerisindeki değişkeni çağırabiliyorsunuz. Bunu bir de Users için yapabiliriz aslında. Ne dersiniz? ister el ile “/users” isterseniz Environment’tan çağırabilirsiniz. “CTRL+S” ile Request’lerinizi her işlemden sonra mutlaka kaydedin. Burada https://reqres.in/ adresine bakarak yavaş yavaş Request’lerimizi dolduralım.

Evet bir farklı yapıya daha geldik parametreyle belki yapmayı denemişsinizdir. Yinede çalışacaktır ama ben size aslında doğru olanı göstermek isterim. Buradaki Requestin amacı id’si 2 olan user’ı getirmek. Aslında şuana kadar gördüğümüz Requestlere “Request Params/Query Params” diyoruz. Bu da görevi yine aynı olan ancak kullanım şekli farklı olan bir yapı ve “Path Variable” olarak isimlendiriliyor. Yapmamız gereken sadece “:” ifadesini kullnarak urlimize istenilen değişkeni eklemek.

Göreceğiniz üzere “:” ifadesini ekledikten sonra alt kısımda bir “Params Variables” kısmı açıldı ve bizim url’e yazmış olduğumuz “id” kendi kendine eklenmiş oldu. Herhangi bir id girerek bir user çağıralım.

Evet herhangi bir sorunla karşılaşmadık. Url yapısından bu tarz olaylara artık reaksiyon verebileceksiniz. Hangisinin Request Param/Query Params veya Path Variable istediğini kolaylıkla anlayabilirsiniz. GET metotlarını hallettiğinizi düşünerek POST metotlarımıza geçelim.

Şimdi gelelim başka bir olaya burada bizden JSON olarak veri istiyor peki biz bunu nasıl gerçekleştireceğiz. Hatırlayanlar olmuştur “Body” içerisinden verilerimizi karşıya gönderebiliyorduk. O zaman gelin Body içerisinden verilerimizi göndermeyi öğrenelim.

Farklı API’lerde Request Param/Query Params veya Path Variable olarak bu veriler istenebilir. Burada amacım POST metoduna JSON veri göndermeyi öğretmek.

İlk olarak “Body” sekmesine gidiyoruz ve “Raw” seçeneğini seçip ardından sağdaki açılan menüden JSON formatımızı seçiyoruz. Güzel parantezler ”{}” arasına API’mizin bizden istediği key ‘ler ve value ‘ları yazıyoruz.

Tada! User’ımızı oluşturmuş olduk. Ben default olarak web adresindeki örnekleri yazıyorum ancak değiştirerekte işlem gerçekleştirebilirsiniz.

Aklınıza belki gelmiştir diye düşünüyorum. Peki biz bu Request’leri tek tek elimizle mi deneyeceğiz? Tabi ki hayır size bunun için eklenti kurduracağım ve inanın çok fazla işinize yarayacak.

Öncelikle bizim ihtiyacımız NodeJs ’in cihazımızda kurulu olması gerekiyor. İndirin ve kurun. Ardından bizim bir terminale (Cmd,Bash vb..) ihtiyacımız var. Her işletim sisteminde vardır. Ben bash tercih edeceğim ancak Windows kullanıcısıysanız dert etmeyin Cmd’de de yazacağımız komut satırı aynı olacak.

Eğer Windows kullanıcısıysanız ve herhangi bir sanal makineniz yoksa sizde benim gibi Git-Bash kullanabilirsiniz.

Kendinize yeni bir Terminal ekranı açın. NodeJs’imiz çalışıyor mu ya da kurulmuş mu diye kontrol etmekte fayda var.

komut satırına node yazarak kontrol edelim(node -v yazarak versiyonumuzu da görüntüleyebiliriz).

Evet node yüklenmiş durumda. İki kez CTRL+C tuşlarına aynı anda basarak çıkın (ya da CTRL+D tuşlarına aynı anda bir kere basmanızda yetecektir.). Ardından npm -v komutunu kullanarak paket yöneticimiz yüklü mü ya da bir sorun var mı diye kontrol edelim.

Node Package Manager (npm)’in yani Node Paket Yöneticisinin kurulu olduğunu gördük. Şimdi bize gereken paketi gelin kuralım isterseniz.

Bize gerekli olan paket Newman. Newman bizim koleksiyonlarımızı komut satırımızda hızlı bir şekilde çalıştıran ve bize sonuçlar döndüren bir Postman CLI yardımcısıdır. Yani biz oluşturduğumuz koleksiyonları tek tek denemek yerine bu araç ile kolayca test edebiliriz. Öyleyse gelin hadi paketimizi kuralım.

npm install -g newman

Komutumuzu elle yazamanızı tavsiye ederim sizin için daha avantajlı olacaktır. npm ifadesinin ne olduğun biliyoruz install ifadesi de bildiğimiz üzere “Yükle” anlamına geliyor -g ifademiz ise global ifadesinin kısaltmasıdır. Yani biz burda bizim cihazımızın her hangi bir alanından çağırabileceğimiz bir şekilde bize bunu kur şeklinde ifade edebiliriz. newman ifadesi ise bizim kuracağımız paketimizin adı.

Paketimizi de kurduğumuza göre artık oluşturduğumuz kolleksiyonları çok kısa bir sürede ve zahmetsiz bir şekilde test edebiliriz.

Şimdi Postman’e gelerek Collection ve Environment’ı dışarıya aktaralım (export).

User koleksiyonumuza sağ tıklayıp ardından Export’a basıyoruz.

Açılan pencerede Collection v2.1 seçeneğini işaretleyip ardından Export butonuna basıyoruz.

Açılan pencerede dosya ismi ve konumunu seçerek Save (kaydet) diyoruz. Ben burada konum olarak Masaüstünü (Desktop) tercih ettim. Dosya ismi olarak “reqres_collection”. Dosya isminizin uzantısı .json olmasına dikkat edin. Kaydettiğmiz dosyamızın içeriğine bir göz atalım isterseniz. Bunun için not defteri bile kullanabilirsiniz bir IDE’niz yoksa.

Örneğin Userların listelendiği bir GET metoduna bakalım. Altı kırmızı olarak çizdiğim yerler bizim problem yaşayabileceğimiz bir nokta. Host eden “{{apiUrl}}” olarak gözüküyor. Burası bize sıkıntı yaratacak çünkü bu bir url değil ve karşılığı koleksiyonumuzda yok. Peki öyleyse ne yapacağız? Hatırlarsanız biz Environment oluşturduk tıpkı Collection Export ettiğimiz gibi Environment’ımızı da Export edelim. Environment farklı bir yerden Export ediliyor size orayı göstermem yeterli olacaktır diğer adımlar koleksiyonlar ile aynı.

Ben bu dosyamın adını da “reqres_environment” olarak ayarladım. Şimdi newman’i çalıştırmaya hazırız.

Öncelikle yapmanız gereken cd (Change Directory) komutunu kullanarak terminalimizin default olarak açılan Directory’sinden dosyalarımızın bulunduğu Directory’e geçiş yapmaktır. Ben masaüstüne kaydettim. Yazmış olduğum komutu kendinize örnek alarak Directory’leriniz arası gezebilirsiniz.

cd Desktop

Kaydetmiş olduğunuz Collection ve Environment konumuna geldiğinizi düşünüyor ve bir sonraki adıma geçiyorum. Bakalım newman yüklenmiş ve biz newman’i çağırabiliyor muyuz bakalım. newman -v yazarak kontrol edelim.

Evet herhangi bir problemimiz bulunmamakta öncelikle komutumuzun yapısından bahsetmek istiyorum.

newman run <collection> --environment <environment>

Komutumuzun yapısı bu şekilde newman run yazdıktan sonra Collection ismimizi (dosya-adi.json) ardınan — -environment ifadesini yazarak Environment ismini (dosya-adi.json) şeklinde yerleştirdikten sonra Enter tuşuna basıp komutu göndermemiz yetrerli.

newman run reqres_collection.json --environment reqres_environment

Tada! Gördüğünüz gibi oluşturduğumuz Collection’ları kolayca newman ile seri bir şekilde test edebiliriz. Görüntüden de anlayacağınız üzere bize status kodlarından tutun gecikme, dosya boyutu gibi öğeleri de göstermekte. Ve en son oluşan pencerede hangi metotlarımız başarılı/başarısız bize bildirmekte. Umarım yardımı dokunur diyerek burda bazı konulara değinmek istedim. Bir sonraki yazımda görüşmek üzere.

Yazının devamı için tıklayın.

--

--