HTTEST(1)
β¨ HTTEST β¨
okay bestie, so this is the manual page for httest β a User Commands situation, and honestly? it's giving "I test web stuff for a living and I'm not sorry about it." π
π NAME π
httest β test HTTP driven application. that's it, that's the whole job. she tests HTTP-driven applications and she does it well. π
πΈ SYNOPSIS πΈ
httest [OPTIONS] scripts
that's the shape of it: some OPTIONS, then your scripts. simple. elegant. slay. β¨
π¦ DESCRIPTION π¦
so httest is a script based tool for testing and benchmarking web applications, web servers, proxy servers and web browsers. like, all of them. no cap. π―
and here's the part that's highkey iconic: httest can emulate clients and servers in the same test script. same. script. which is very useful for testing proxys. yes proxys, that's what it says, don't look at me, I don't make the spelling rules around here. π«Ά
π OPTIONS π
one bullet per flag, no skips, no shortcuts, we eat the whole menu:
-V,--versionβ Print version number and exit. short, sweet, gone. π-h,--helpβ Display usage information (this message). it's literally this. hi. π-n,--suppressβ do no print start and OK|FAILED. that's the original wording bestie, I'm not touching it, but yeah: it suppresses the start and the OK|FAILED lines. π€«-s,--silentβ silent mode. the quietest of girls. π-e,--errorβ log level error. only the errors get to speak. π-i,--infoβ log level info. β¨-d,--debugβ log level debug for script debugging. π-p,--debug-systemβ log level debug-system to log more details. more details. MORE. π§-L,--list-commandsβ List all available script commands. π-C,--help-commandβ Print help for specific command. just the one you're beefing with. π-t,--durationβ Print test duration. clock it. β±οΈ-T,--timestampβ Time stamp on every run. π°οΈ-S,--shellβ Shell mode. π-S,--shellβ Shell mode. π (yes. she's here twice. the manpage said it twice and I am nothing if not faithful to the source. periodt.)-D,--defineβ Define variables. π-l,--log-thread-numberβ Show the thread number for every printed line. so you always know which thread is yapping. π§΅-b,--colorβ Colored output. rainbow mode activated ππ₯
π SCRIPTS π
httest is script based. meaning: no script, no vibes, no test. π
the following script examples can be but into a scripte i.e. sample.htt and can be called like
httest sample.htt
(again: "but into a scripte" is the original's exact energy and I refuse to correct her. she's perfect. π)
π§ SIMPLE SCRIPT π§
Get a page and do expect return code 200 OK. the classic. the blueprint. the main character move. π
CLIENT
_REQ www.google.ch 80
__GET /search?q=apache HTTP/1.1
__Host: www.google.ch
__
_EXPECT headers "HTTP/1.1 200 OK"
_WAIT
END
βοΈ CUT AND PAST SCRIPT βοΈ
Cut and past from a HTTP stream, i.e we cut the apache host to access it in the second request. it's giving "steal her host, use her host." π
CLIENT
_REQ www.google.ch 80
__GET /search?q=apache HTTP/1.1
__Host: www.google.ch
__
_MATCH body '\<a href="http://([^\/]*)/" class=l\>Welcome! - The \<em\>Apache\</em\> HTTP Server Project' APACHE_HOST
_WAIT
_REQ $APACHE_HOST 80
__GET / HTTP/1.1
__Host: $APACHE_HOST
__
_WAIT
END
π CLIENT SERVER SCRIPT π
We can hold client and server in the same host. Actually multiple client and multiple server. Very useful to test forward or reverse proxies. Or a webapplication which communicat itself with third party servers i.e. mail server. (yes "communicat." she said what she said. π )
This is a very basic selfcontained test you can run on any maschine. π₯οΈβ¨
CLIENT
_REQ localhost 8080
__GET /foo HTTP/1.1
__Host: localhost
__
_WAIT
END
SERVER 8080
_RES
_EXPECT headers "/foo"
_WAIT
__HTTP/1.1 200 OK
__Content-Length: AUTO
__
__Hello World
END
π SSL SCRIPT π
Of course SSL do also work with httest, just put "SSL:" before port. that's the whole trick. go off, queen. π
CLIENT
_REQ localhost SSL:8080
__GET /foo HTTP/1.1
__Host: localhost
__
_WAIT
END
SERVER SSL:8080
_RES
_EXPECT headers "/foo"
_WAIT
__HTTP/1.1 200 OK
__Content-Length: AUTO
__
__Hello World
END
β EXAMPLES β
look at her go:
httest script.htt
httest -Ts script.htt
two whole moods. -T and -s living their best combined life. π«Ά
π AUTHOR π
Written by Christian Liesch. thank you for your service, king. π«‘
π REPORTING BUGS π
Report bugs to http://sourceforge.net/projects/htt
bestie if something breaks, tell the sourceforge, not me, I'm just the messenger with the good hair. πββοΈ
π COPYRIGHT π
Copyright Β© 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
like NO warranty. none. zero. nada. if it eats your config, that's between you and the universe. ππ
and that's the whole page, bestie β every flag, every script, every warning, all of it. nothing skipped, nothing invented, just vibes + facts. iykyk. π
httest 2.4.23 β February 2025 β mwah, kisses, go run your tests πβ¨π¦
π¦ where this page comes from
- ubuntu questing: httest 2.4.23-5fakesync1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms