locustio / locust

Write scalable load tests in plain Python 🚗💨
https://locust.cloud
MIT License
25.06k stars 3k forks source link

--only-summary does not show the summary results #905

Closed MudasarUKCloud closed 6 years ago

MudasarUKCloud commented 6 years ago

Description of issue / feature request

--only-summary does not show the summary results as you would expect.

Expected behavior

When using the --only-summary option you would expect the test to run and show you the summary of the test after the test has finished.

Actual behavior

However when using the --only-summary option no summary test results are shown.

Environment settings (for bug reports)

Steps to reproduce (for bug reports)

Master running with the following options:- --master --no-web -f locustfile.py -H http://whatever.com -c 1000 -r 25 -t 10m --expect-slaves 4 --only-summary

Slave running with the following options:- --slave --no-web -f locustfile.py --host http://whatever.com --master-host= --master-port=5557 --only-summary

cgoldberg commented 6 years ago

--only summary only suppresses periodic printing of stats. you should still see the final result summary.

can you show exactly what is printed to your console once a test runs to completion? (on slave and master)

MudasarUKCloud commented 6 years ago

Hi Corey,

Following is the standard output from the master container when I run the container with the --only-summary flag:-

screen shot 2018-11-06 at 15 22 16

The slave container also looks the same.

Without the --only-summary flag I get the following:- screen shot 2018-11-06 at 15 26 32

cgoldberg commented 6 years ago

that master output looks like a directory listing.. I meant what is the output when running your locust command.

MudasarUKCloud commented 6 years ago

Hi Corey, thats not directory listing, thats the Standard output which is showing you the output of running the locust command with the --only-summary flag. The second screenshot is showing you the standard output without that flag. But we'd expect it to show just the summary of the results once the test has finished running but even then there is no output.

cgoldberg commented 6 years ago

thats not directory listing

sure looks like it to me.

I'm having a hard time following you... you are saying that you run this command in your terminal: $ locust --master --no-web -f locustfile.py -H http://whatever.com -c 1000 -r 25 -t 10m --expect-slaves 4 --only-summary ... and the next thing printed in your terminal is a listing of files with permissions, sizes, modified dates, etc like you showed in your first screenshot?

MudasarUKCloud commented 6 years ago

I've built the container to run with these options yes. I'm not manually running that command in the container and showing you the output. I'm just showing you the standard output of the container which is running with these options.

aldenpeterson-wf commented 6 years ago

Can you add exactly what you are doing in order to cause this?

Ideally, with a simplified locustfile so that we can just copy the locust file and run exactly what commands you are running.

Right now, it's not clear to me what you are actually doing here.

cgoldberg commented 6 years ago

no response. closing.

MudasarUKCloud commented 5 years ago

Hi, sorry in the delay in responding, was away for a bit. Now back and eager to pick this up again. So here's whats happening. Running 1 master container and 4 slave containers in my OpenShift cluster. All options which are set are specified above. The "directory listing" you say your seeing in the above screenshot is shown because in my container there is a "ls -la" but your seeing that in the standard output of the container. The test is set up to simiulate 1000 users at a hatch rate of 100 p/s for a run time for 1 minute. The test itself is still using a fairly simple test and the tes file is as follows:-

from locust import HttpLocust, TaskSet, task

class UserTasks(TaskSet):

@task
def index(self):
    self.client.get("/")

@task
def stats(self):
    self.client.get("/stats/requests")

class WebsiteUser(HttpLocust): task_set = UserTasks

cgoldberg commented 5 years ago

what's the actual output from locust with --only-summary running in a simplified setup? you still haven't shown.

MudasarUKCloud commented 5 years ago

Its the screenshot i pasted above https://user-images.githubusercontent.com/41992048/48074009-dd311600-e1d7-11e8-9649-98761611394b.png