Hurl; HTTP isteklerini düz metin dosyalarında tanımlamayı, çalıştırmayı ve sonuçlarını doğrulamayı sağlayan açık kaynaklı bir komut satırı aracıdır. Özellikle REST API geliştirme, entegrasyon testleri ve web servislerinin otomatik kontrolü için tasarlanmıştır.
GET, POST, PUT, PATCH ve DELETE gibi HTTP yöntemleri kullanılabilir. İstek başlıkları, çerezler, kimlik doğrulama bilgileri, form alanları ve JSON gövdeleri doğrudan metin dosyaları içerisinde tanımlanabilir.
Birden fazla HTTP isteği aynı dosyada arka arkaya çalıştırılabilir. Önceki isteğin yanıtından elde edilen değerler sonraki isteklerde kullanılabilir. Bu özellik oturum açma, erişim belirteci alma ve yetkilendirilmiş API çağrıları gibi senaryoların test edilmesini kolaylaştırır.
Yanıt durum kodları, başlıklar, içerikler ve yanıt süreleri için doğrulama koşulları oluşturulabilir. JSONPath ve XPath gibi sorgulama yöntemleriyle yanıtların belirli bölümleri kontrol edilebilir.
Test sonuçları JUnit XML ve HTML gibi rapor biçimlerinde alınabilir. CI/CD sistemlerine entegre edilerek API testlerinin otomatik yürütülmesi sağlanabilir.
Windows, Linux ve macOS sistemlerinde çalışır.
GET, POST, PUT, PATCH ve DELETE gibi HTTP yöntemleri kullanılabilir. İstek başlıkları, çerezler, kimlik doğrulama bilgileri, form alanları ve JSON gövdeleri doğrudan metin dosyaları içerisinde tanımlanabilir.
Birden fazla HTTP isteği aynı dosyada arka arkaya çalıştırılabilir. Önceki isteğin yanıtından elde edilen değerler sonraki isteklerde kullanılabilir. Bu özellik oturum açma, erişim belirteci alma ve yetkilendirilmiş API çağrıları gibi senaryoların test edilmesini kolaylaştırır.
Yanıt durum kodları, başlıklar, içerikler ve yanıt süreleri için doğrulama koşulları oluşturulabilir. JSONPath ve XPath gibi sorgulama yöntemleriyle yanıtların belirli bölümleri kontrol edilebilir.
Test sonuçları JUnit XML ve HTML gibi rapor biçimlerinde alınabilir. CI/CD sistemlerine entegre edilerek API testlerinin otomatik yürütülmesi sağlanabilir.
Windows, Linux ve macOS sistemlerinde çalışır.