On ubuntu, it is a simple "apt-get install siege".
Then, you create a siegerc file:
verbose = true
logging = true
protocol = HTTP/1.1
connection = keep-alive
concurrent = 50 #Number of concurrent requests
file = ./urls.txt
delay = 0 #If you are using for benchmarking value should be 0
benchmark = true
The settings are fairly obvious. Note that the file parameter points to an additional file you'll need, which lists out all of the urls you want included in your test. Below is an example:
https://foo.com/ws/Blah POST < soapMessage.xml
Notice after the url we specify "POST", which makes it a POST method instead of GET. Additionally, we pipe in the XML file which contains the SOAP message.
Then we can simply invoke siege with:
siege --rc=./siegerc --header="Authorization:Basic BASGHAJSG78236ds"
Notice, we are supplying an extra header for Basic Auth.