Diff of the two buildlogs: -- --- b1/build.log 2025-03-12 11:19:22.574296599 +0000 +++ b2/build.log 2025-03-12 11:39:19.596498511 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Tue Apr 14 05:32:51 -12 2026 -I: pbuilder-time-stamp: 1776187971 +I: Current time: Thu Mar 13 01:19:27 +14 2025 +I: pbuilder-time-stamp: 1741778367 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -22,52 +22,84 @@ dpkg-source: info: unpacking locust_2.24.0-1.debian.tar.xz I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/329061/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/D01_modify_environment starting +debug: Running on ionos1-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Mar 12 11:19 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='cdd4d9025382485a8185602a6dde3cc8' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='329061' - PS1='# ' - PS2='> ' + INVOCATION_ID=42953b5eae5945cf9d7547e3318e843d + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=2006000 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.6WMb2zFL/pbuilderrc_dgVN --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.6WMb2zFL/b1 --logfile b1/build.log locust_2.24.0-1.dsc' - SUDO_GID='111' - SUDO_UID='106' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.6WMb2zFL/pbuilderrc_zer3 --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.6WMb2zFL/b2 --logfile b2/build.log locust_2.24.0-1.dsc' + SUDO_GID=110 + SUDO_UID=105 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos15-amd64 6.12.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.12-1~bpo12+1 (2025-02-23) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/329061/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Mar 4 11:20 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -264,7 +296,7 @@ Get: 125 http://deb.debian.org/debian trixie/main amd64 python3-retry all 0.9.2-3 [7088 B] Get: 126 http://deb.debian.org/debian trixie/main amd64 python3-roundrobin all 0.0.4-3 [4364 B] Get: 127 http://deb.debian.org/debian trixie/main amd64 python3-zmq amd64 26.2.1-1+b1 [182 kB] -Fetched 44.0 MB in 1s (40.2 MB/s) +Fetched 44.0 MB in 3s (14.6 MB/s) Preconfiguring packages ... Selecting previously unselected package fonts-lato. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19800 files and directories currently installed.) @@ -682,8 +714,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Tue Apr 14 17:33:24 UTC 2026. -Universal Time is now: Tue Apr 14 17:33:24 UTC 2026. +Local time is now: Wed Mar 12 11:22:36 UTC 2025. +Universal Time is now: Wed Mar 12 11:22:36 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up libpgm-5.3-0t64:amd64 (5.3.128~dfsg-2.1+b1) ... @@ -811,7 +843,11 @@ fakeroot is already the newest version (1.37-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/locust-2.24.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../locust_2.24.0-1_source.changes +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/locust-2.24.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../locust_2.24.0-1_source.changes dpkg-buildpackage: info: source package locust dpkg-buildpackage: info: source version 2.24.0-1 dpkg-buildpackage: info: source distribution unstable @@ -845,230 +881,230 @@ running build running build_py creating build/lib/locust -copying locust/debug.py -> build/lib/locust -copying locust/clients.py -> build/lib/locust +copying locust/stats.py -> build/lib/locust +copying locust/shape.py -> build/lib/locust +copying locust/log.py -> build/lib/locust +copying locust/event.py -> build/lib/locust copying locust/input_events.py -> build/lib/locust +copying locust/clients.py -> build/lib/locust +copying locust/dispatch.py -> build/lib/locust +copying locust/__init__.py -> build/lib/locust copying locust/main.py -> build/lib/locust -copying locust/runners.py -> build/lib/locust -copying locust/__main__.py -> build/lib/locust +copying locust/exception.py -> build/lib/locust copying locust/html.py -> build/lib/locust -copying locust/web.py -> build/lib/locust -copying locust/shape.py -> build/lib/locust +copying locust/debug.py -> build/lib/locust +copying locust/argument_parser.py -> build/lib/locust copying locust/env.py -> build/lib/locust -copying locust/event.py -> build/lib/locust +copying locust/__main__.py -> build/lib/locust +copying locust/web.py -> build/lib/locust +copying locust/runners.py -> build/lib/locust copying locust/_version.py -> build/lib/locust -copying locust/__init__.py -> build/lib/locust -copying locust/dispatch.py -> build/lib/locust -copying locust/argument_parser.py -> build/lib/locust -copying locust/exception.py -> build/lib/locust -copying locust/stats.py -> build/lib/locust -copying locust/log.py -> build/lib/locust -creating build/lib/locust/user -copying locust/user/users.py -> build/lib/locust/user -copying locust/user/wait_time.py -> build/lib/locust/user -copying locust/user/sequential_taskset.py -> build/lib/locust/user -copying locust/user/inspectuser.py -> build/lib/locust/user -copying locust/user/__init__.py -> build/lib/locust/user -copying locust/user/task.py -> build/lib/locust/user creating build/lib/locust/util -copying locust/util/deprecation.py -> build/lib/locust/util +copying locust/util/rounding.py -> build/lib/locust/util copying locust/util/cache.py -> build/lib/locust/util +copying locust/util/load_locustfile.py -> build/lib/locust/util +copying locust/util/__init__.py -> build/lib/locust/util +copying locust/util/deprecation.py -> build/lib/locust/util copying locust/util/exception_handler.py -> build/lib/locust/util copying locust/util/timespan.py -> build/lib/locust/util -copying locust/util/__init__.py -> build/lib/locust/util -copying locust/util/rounding.py -> build/lib/locust/util -copying locust/util/load_locustfile.py -> build/lib/locust/util +creating build/lib/locust/contrib +copying locust/contrib/fasthttp.py -> build/lib/locust/contrib +copying locust/contrib/__init__.py -> build/lib/locust/contrib creating build/lib/locust/test -copying locust/test/test_http.py -> build/lib/locust/test +copying locust/test/test_users.py -> build/lib/locust/test +copying locust/test/test_taskratio.py -> build/lib/locust/test copying locust/test/test_parser.py -> build/lib/locust/test +copying locust/test/test_fasthttp.py -> build/lib/locust/test copying locust/test/test_interruptable_task.py -> build/lib/locust/test -copying locust/test/test_runners.py -> build/lib/locust/test -copying locust/test/test_log.py -> build/lib/locust/test copying locust/test/fake_module1_for_env_test.py -> build/lib/locust/test -copying locust/test/test_main.py -> build/lib/locust/test -copying locust/test/test_zmqrpc.py -> build/lib/locust/test copying locust/test/test_util.py -> build/lib/locust/test -copying locust/test/test_stats.py -> build/lib/locust/test -copying locust/test/test_env.py -> build/lib/locust/test -copying locust/test/test_users.py -> build/lib/locust/test -copying locust/test/mock_locustfile.py -> build/lib/locust/test +copying locust/test/test_zmqrpc.py -> build/lib/locust/test copying locust/test/test_debugging.py -> build/lib/locust/test -copying locust/test/fake_module2_for_env_test.py -> build/lib/locust/test +copying locust/test/test_stats.py -> build/lib/locust/test copying locust/test/__init__.py -> build/lib/locust/test -copying locust/test/test_web.py -> build/lib/locust/test -copying locust/test/testcases.py -> build/lib/locust/test -copying locust/test/test_taskratio.py -> build/lib/locust/test -copying locust/test/test_fasthttp.py -> build/lib/locust/test copying locust/test/mock_logging.py -> build/lib/locust/test -copying locust/test/test_load_locustfile.py -> build/lib/locust/test +copying locust/test/test_web.py -> build/lib/locust/test +copying locust/test/test_http.py -> build/lib/locust/test +copying locust/test/mock_locustfile.py -> build/lib/locust/test +copying locust/test/test_log.py -> build/lib/locust/test +copying locust/test/test_locust_class.py -> build/lib/locust/test copying locust/test/test_tags.py -> build/lib/locust/test -copying locust/test/test_wait_time.py -> build/lib/locust/test +copying locust/test/test_runners.py -> build/lib/locust/test copying locust/test/test_old_wait_api.py -> build/lib/locust/test -copying locust/test/test_dispatch.py -> build/lib/locust/test +copying locust/test/test_wait_time.py -> build/lib/locust/test copying locust/test/util.py -> build/lib/locust/test +copying locust/test/test_main.py -> build/lib/locust/test copying locust/test/test_sequential_taskset.py -> build/lib/locust/test -copying locust/test/test_locust_class.py -> build/lib/locust/test +copying locust/test/fake_module2_for_env_test.py -> build/lib/locust/test +copying locust/test/testcases.py -> build/lib/locust/test +copying locust/test/test_dispatch.py -> build/lib/locust/test +copying locust/test/test_env.py -> build/lib/locust/test +copying locust/test/test_load_locustfile.py -> build/lib/locust/test creating build/lib/locust/rpc copying locust/rpc/zmqrpc.py -> build/lib/locust/rpc -copying locust/rpc/__init__.py -> build/lib/locust/rpc copying locust/rpc/protocol.py -> build/lib/locust/rpc -creating build/lib/locust/contrib -copying locust/contrib/fasthttp.py -> build/lib/locust/contrib -copying locust/contrib/__init__.py -> build/lib/locust/contrib +copying locust/rpc/__init__.py -> build/lib/locust/rpc +creating build/lib/locust/user +copying locust/user/task.py -> build/lib/locust/user +copying locust/user/wait_time.py -> build/lib/locust/user +copying locust/user/users.py -> build/lib/locust/user +copying locust/user/__init__.py -> build/lib/locust/user +copying locust/user/sequential_taskset.py -> build/lib/locust/user +copying locust/user/inspectuser.py -> build/lib/locust/user copying locust/py.typed -> build/lib/locust creating build/lib/locust/static -copying locust/static/jquery.jqote2.min.js -> build/lib/locust/static +copying locust/static/tasks.js -> build/lib/locust/static copying locust/static/echarts.common.min.js -> build/lib/locust/static -copying locust/static/locust.js -> build/lib/locust/static copying locust/static/jquery.tools.min.js -> build/lib/locust/static -copying locust/static/jquery-1.11.3.min.js -> build/lib/locust/static -copying locust/static/chart.js -> build/lib/locust/static -copying locust/static/tasks.js -> build/lib/locust/static copying locust/static/vintage.js -> build/lib/locust/static +copying locust/static/jquery.jqote2.min.js -> build/lib/locust/static +copying locust/static/chart.js -> build/lib/locust/static +copying locust/static/jquery-1.11.3.min.js -> build/lib/locust/static +copying locust/static/locust.js -> build/lib/locust/static creating build/lib/locust/static/sass copying locust/static/sass/tables.sass -> build/lib/locust/static/sass -copying locust/static/sass/_mixins.sass -> build/lib/locust/static/sass -copying locust/static/sass/_base.sass -> build/lib/locust/static/sass copying locust/static/sass/application.sass -> build/lib/locust/static/sass +copying locust/static/sass/_base.sass -> build/lib/locust/static/sass +copying locust/static/sass/_mixins.sass -> build/lib/locust/static/sass creating build/lib/locust/static/css +copying locust/static/css/tables.css -> build/lib/locust/static/css +copying locust/static/css/application.css -> build/lib/locust/static/css copying locust/static/css/tables.css.map -> build/lib/locust/static/css copying locust/static/css/application.css.map -> build/lib/locust/static/css -copying locust/static/css/application.css -> build/lib/locust/static/css -copying locust/static/css/tables.css -> build/lib/locust/static/css creating build/lib/locust/static/img -copying locust/static/img/logo.png -> build/lib/locust/static/img -copying locust/static/img/ui-screenshot-start-test.png -> build/lib/locust/static/img copying locust/static/img/ui-screenshot-workers.png -> build/lib/locust/static/img -copying locust/static/img/ui-screenshot-charts.png -> build/lib/locust/static/img copying locust/static/img/ui-screenshot-stats.png -> build/lib/locust/static/img copying locust/static/img/favicon.ico -> build/lib/locust/static/img +copying locust/static/img/ui-screenshot-charts.png -> build/lib/locust/static/img +copying locust/static/img/ui-screenshot-start-test.png -> build/lib/locust/static/img +copying locust/static/img/logo.png -> build/lib/locust/static/img creating build/lib/locust/templates -copying locust/templates/stats_data.html -> build/lib/locust/templates copying locust/templates/report.html -> build/lib/locust/templates +copying locust/templates/stats_data.html -> build/lib/locust/templates copying locust/templates/index.html -> build/lib/locust/templates creating build/lib/locust/webui/dist copying locust/webui/dist/report.html -> build/lib/locust/webui/dist -copying locust/webui/dist/index.html -> build/lib/locust/webui/dist copying locust/webui/dist/auth.html -> build/lib/locust/webui/dist +copying locust/webui/dist/index.html -> build/lib/locust/webui/dist creating build/lib/locust/webui/dist/assets -copying locust/webui/dist/assets/logo.png -> build/lib/locust/webui/dist/assets copying locust/webui/dist/assets/index-0d6d578a.js -> build/lib/locust/webui/dist/assets copying locust/webui/dist/assets/favicon.ico -> build/lib/locust/webui/dist/assets +copying locust/webui/dist/assets/logo.png -> build/lib/locust/webui/dist/assets installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/locust -creating build/bdist.linux-x86_64/wheel/locust/static -copying build/lib/locust/static/jquery.jqote2.min.js -> build/bdist.linux-x86_64/wheel/./locust/static -creating build/bdist.linux-x86_64/wheel/locust/static/sass -copying build/lib/locust/static/sass/tables.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass -copying build/lib/locust/static/sass/_mixins.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass -copying build/lib/locust/static/sass/_base.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass -copying build/lib/locust/static/sass/application.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass -creating build/bdist.linux-x86_64/wheel/locust/static/css -copying build/lib/locust/static/css/tables.css.map -> build/bdist.linux-x86_64/wheel/./locust/static/css -copying build/lib/locust/static/css/application.css.map -> build/bdist.linux-x86_64/wheel/./locust/static/css -copying build/lib/locust/static/css/application.css -> build/bdist.linux-x86_64/wheel/./locust/static/css -copying build/lib/locust/static/css/tables.css -> build/bdist.linux-x86_64/wheel/./locust/static/css -creating build/bdist.linux-x86_64/wheel/locust/static/img -copying build/lib/locust/static/img/logo.png -> build/bdist.linux-x86_64/wheel/./locust/static/img -copying build/lib/locust/static/img/ui-screenshot-start-test.png -> build/bdist.linux-x86_64/wheel/./locust/static/img -copying build/lib/locust/static/img/ui-screenshot-workers.png -> build/bdist.linux-x86_64/wheel/./locust/static/img -copying build/lib/locust/static/img/ui-screenshot-charts.png -> build/bdist.linux-x86_64/wheel/./locust/static/img -copying build/lib/locust/static/img/ui-screenshot-stats.png -> build/bdist.linux-x86_64/wheel/./locust/static/img -copying build/lib/locust/static/img/favicon.ico -> build/bdist.linux-x86_64/wheel/./locust/static/img -copying build/lib/locust/static/echarts.common.min.js -> build/bdist.linux-x86_64/wheel/./locust/static -copying build/lib/locust/static/locust.js -> build/bdist.linux-x86_64/wheel/./locust/static -copying build/lib/locust/static/jquery.tools.min.js -> build/bdist.linux-x86_64/wheel/./locust/static -copying build/lib/locust/static/jquery-1.11.3.min.js -> build/bdist.linux-x86_64/wheel/./locust/static -copying build/lib/locust/static/chart.js -> build/bdist.linux-x86_64/wheel/./locust/static -copying build/lib/locust/static/tasks.js -> build/bdist.linux-x86_64/wheel/./locust/static -copying build/lib/locust/static/vintage.js -> build/bdist.linux-x86_64/wheel/./locust/static -copying build/lib/locust/debug.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/clients.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/stats.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/shape.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/log.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/event.py -> build/bdist.linux-x86_64/wheel/./locust copying build/lib/locust/input_events.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/main.py -> build/bdist.linux-x86_64/wheel/./locust -creating build/bdist.linux-x86_64/wheel/locust/user -copying build/lib/locust/user/users.py -> build/bdist.linux-x86_64/wheel/./locust/user -copying build/lib/locust/user/wait_time.py -> build/bdist.linux-x86_64/wheel/./locust/user -copying build/lib/locust/user/sequential_taskset.py -> build/bdist.linux-x86_64/wheel/./locust/user -copying build/lib/locust/user/inspectuser.py -> build/bdist.linux-x86_64/wheel/./locust/user -copying build/lib/locust/user/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/user -copying build/lib/locust/user/task.py -> build/bdist.linux-x86_64/wheel/./locust/user -copying build/lib/locust/runners.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/__main__.py -> build/bdist.linux-x86_64/wheel/./locust +creating build/bdist.linux-x86_64/wheel/locust/webui +creating build/bdist.linux-x86_64/wheel/locust/webui/dist +creating build/bdist.linux-x86_64/wheel/locust/webui/dist/assets +copying build/lib/locust/webui/dist/assets/index-0d6d578a.js -> build/bdist.linux-x86_64/wheel/./locust/webui/dist/assets +copying build/lib/locust/webui/dist/assets/favicon.ico -> build/bdist.linux-x86_64/wheel/./locust/webui/dist/assets +copying build/lib/locust/webui/dist/assets/logo.png -> build/bdist.linux-x86_64/wheel/./locust/webui/dist/assets +copying build/lib/locust/webui/dist/report.html -> build/bdist.linux-x86_64/wheel/./locust/webui/dist +copying build/lib/locust/webui/dist/auth.html -> build/bdist.linux-x86_64/wheel/./locust/webui/dist +copying build/lib/locust/webui/dist/index.html -> build/bdist.linux-x86_64/wheel/./locust/webui/dist +copying build/lib/locust/clients.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/dispatch.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/__init__.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/py.typed -> build/bdist.linux-x86_64/wheel/./locust creating build/bdist.linux-x86_64/wheel/locust/util -copying build/lib/locust/util/deprecation.py -> build/bdist.linux-x86_64/wheel/./locust/util +copying build/lib/locust/util/rounding.py -> build/bdist.linux-x86_64/wheel/./locust/util copying build/lib/locust/util/cache.py -> build/bdist.linux-x86_64/wheel/./locust/util +copying build/lib/locust/util/load_locustfile.py -> build/bdist.linux-x86_64/wheel/./locust/util +copying build/lib/locust/util/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/util +copying build/lib/locust/util/deprecation.py -> build/bdist.linux-x86_64/wheel/./locust/util copying build/lib/locust/util/exception_handler.py -> build/bdist.linux-x86_64/wheel/./locust/util copying build/lib/locust/util/timespan.py -> build/bdist.linux-x86_64/wheel/./locust/util -copying build/lib/locust/util/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/util -copying build/lib/locust/util/rounding.py -> build/bdist.linux-x86_64/wheel/./locust/util -copying build/lib/locust/util/load_locustfile.py -> build/bdist.linux-x86_64/wheel/./locust/util +creating build/bdist.linux-x86_64/wheel/locust/contrib +copying build/lib/locust/contrib/fasthttp.py -> build/bdist.linux-x86_64/wheel/./locust/contrib +copying build/lib/locust/contrib/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/contrib creating build/bdist.linux-x86_64/wheel/locust/test -copying build/lib/locust/test/test_http.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_users.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_taskratio.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/test_parser.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_fasthttp.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/test_interruptable_task.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_runners.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_log.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/fake_module1_for_env_test.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_main.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_zmqrpc.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/test_util.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_stats.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_env.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_users.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/mock_locustfile.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_zmqrpc.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/test_debugging.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/fake_module2_for_env_test.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_stats.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_web.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/testcases.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_taskratio.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_fasthttp.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/mock_logging.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_load_locustfile.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_web.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_http.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/mock_locustfile.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_log.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_locust_class.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/test_tags.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_wait_time.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_runners.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/test_old_wait_api.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_dispatch.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_wait_time.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/util.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_main.py -> build/bdist.linux-x86_64/wheel/./locust/test copying build/lib/locust/test/test_sequential_taskset.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/test/test_locust_class.py -> build/bdist.linux-x86_64/wheel/./locust/test -copying build/lib/locust/html.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/web.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/shape.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/env.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/py.typed -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/test/fake_module2_for_env_test.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/testcases.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_dispatch.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_env.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/test/test_load_locustfile.py -> build/bdist.linux-x86_64/wheel/./locust/test +copying build/lib/locust/main.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/exception.py -> build/bdist.linux-x86_64/wheel/./locust creating build/bdist.linux-x86_64/wheel/locust/rpc copying build/lib/locust/rpc/zmqrpc.py -> build/bdist.linux-x86_64/wheel/./locust/rpc -copying build/lib/locust/rpc/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/rpc copying build/lib/locust/rpc/protocol.py -> build/bdist.linux-x86_64/wheel/./locust/rpc -copying build/lib/locust/event.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/rpc/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/rpc +copying build/lib/locust/html.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/debug.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/argument_parser.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/env.py -> build/bdist.linux-x86_64/wheel/./locust +copying build/lib/locust/__main__.py -> build/bdist.linux-x86_64/wheel/./locust +creating build/bdist.linux-x86_64/wheel/locust/user +copying build/lib/locust/user/task.py -> build/bdist.linux-x86_64/wheel/./locust/user +copying build/lib/locust/user/wait_time.py -> build/bdist.linux-x86_64/wheel/./locust/user +copying build/lib/locust/user/users.py -> build/bdist.linux-x86_64/wheel/./locust/user +copying build/lib/locust/user/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/user +copying build/lib/locust/user/sequential_taskset.py -> build/bdist.linux-x86_64/wheel/./locust/user +copying build/lib/locust/user/inspectuser.py -> build/bdist.linux-x86_64/wheel/./locust/user +copying build/lib/locust/web.py -> build/bdist.linux-x86_64/wheel/./locust +creating build/bdist.linux-x86_64/wheel/locust/static +creating build/bdist.linux-x86_64/wheel/locust/static/sass +copying build/lib/locust/static/sass/tables.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass +copying build/lib/locust/static/sass/application.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass +copying build/lib/locust/static/sass/_base.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass +copying build/lib/locust/static/sass/_mixins.sass -> build/bdist.linux-x86_64/wheel/./locust/static/sass +copying build/lib/locust/static/tasks.js -> build/bdist.linux-x86_64/wheel/./locust/static +creating build/bdist.linux-x86_64/wheel/locust/static/css +copying build/lib/locust/static/css/tables.css -> build/bdist.linux-x86_64/wheel/./locust/static/css +copying build/lib/locust/static/css/application.css -> build/bdist.linux-x86_64/wheel/./locust/static/css +copying build/lib/locust/static/css/tables.css.map -> build/bdist.linux-x86_64/wheel/./locust/static/css +copying build/lib/locust/static/css/application.css.map -> build/bdist.linux-x86_64/wheel/./locust/static/css +copying build/lib/locust/static/echarts.common.min.js -> build/bdist.linux-x86_64/wheel/./locust/static +copying build/lib/locust/static/jquery.tools.min.js -> build/bdist.linux-x86_64/wheel/./locust/static +copying build/lib/locust/static/vintage.js -> build/bdist.linux-x86_64/wheel/./locust/static +creating build/bdist.linux-x86_64/wheel/locust/static/img +copying build/lib/locust/static/img/ui-screenshot-workers.png -> build/bdist.linux-x86_64/wheel/./locust/static/img +copying build/lib/locust/static/img/ui-screenshot-stats.png -> build/bdist.linux-x86_64/wheel/./locust/static/img +copying build/lib/locust/static/img/favicon.ico -> build/bdist.linux-x86_64/wheel/./locust/static/img +copying build/lib/locust/static/img/ui-screenshot-charts.png -> build/bdist.linux-x86_64/wheel/./locust/static/img +copying build/lib/locust/static/img/ui-screenshot-start-test.png -> build/bdist.linux-x86_64/wheel/./locust/static/img +copying build/lib/locust/static/img/logo.png -> build/bdist.linux-x86_64/wheel/./locust/static/img +copying build/lib/locust/static/jquery.jqote2.min.js -> build/bdist.linux-x86_64/wheel/./locust/static +copying build/lib/locust/static/chart.js -> build/bdist.linux-x86_64/wheel/./locust/static +copying build/lib/locust/static/jquery-1.11.3.min.js -> build/bdist.linux-x86_64/wheel/./locust/static +copying build/lib/locust/static/locust.js -> build/bdist.linux-x86_64/wheel/./locust/static +copying build/lib/locust/runners.py -> build/bdist.linux-x86_64/wheel/./locust copying build/lib/locust/_version.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/__init__.py -> build/bdist.linux-x86_64/wheel/./locust creating build/bdist.linux-x86_64/wheel/locust/templates -copying build/lib/locust/templates/stats_data.html -> build/bdist.linux-x86_64/wheel/./locust/templates copying build/lib/locust/templates/report.html -> build/bdist.linux-x86_64/wheel/./locust/templates +copying build/lib/locust/templates/stats_data.html -> build/bdist.linux-x86_64/wheel/./locust/templates copying build/lib/locust/templates/index.html -> build/bdist.linux-x86_64/wheel/./locust/templates -copying build/lib/locust/dispatch.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/argument_parser.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/exception.py -> build/bdist.linux-x86_64/wheel/./locust -copying build/lib/locust/stats.py -> build/bdist.linux-x86_64/wheel/./locust -creating build/bdist.linux-x86_64/wheel/locust/contrib -copying build/lib/locust/contrib/fasthttp.py -> build/bdist.linux-x86_64/wheel/./locust/contrib -copying build/lib/locust/contrib/__init__.py -> build/bdist.linux-x86_64/wheel/./locust/contrib -creating build/bdist.linux-x86_64/wheel/locust/webui -creating build/bdist.linux-x86_64/wheel/locust/webui/dist -copying build/lib/locust/webui/dist/report.html -> build/bdist.linux-x86_64/wheel/./locust/webui/dist -copying build/lib/locust/webui/dist/index.html -> build/bdist.linux-x86_64/wheel/./locust/webui/dist -copying build/lib/locust/webui/dist/auth.html -> build/bdist.linux-x86_64/wheel/./locust/webui/dist -creating build/bdist.linux-x86_64/wheel/locust/webui/dist/assets -copying build/lib/locust/webui/dist/assets/logo.png -> build/bdist.linux-x86_64/wheel/./locust/webui/dist/assets -copying build/lib/locust/webui/dist/assets/index-0d6d578a.js -> build/bdist.linux-x86_64/wheel/./locust/webui/dist/assets -copying build/lib/locust/webui/dist/assets/favicon.ico -> build/bdist.linux-x86_64/wheel/./locust/webui/dist/assets -copying build/lib/locust/log.py -> build/bdist.linux-x86_64/wheel/./locust running install_egg_info running egg_info creating locust.egg-info @@ -1085,7 +1121,7 @@ Copying locust.egg-info to build/bdist.linux-x86_64/wheel/./locust-0.0.0.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/locust-0.0.0.dist-info/WHEEL -creating '/build/reproducible-path/locust-2.24.0/.pybuild/cpython3_3.13_locust/.tmp-pj1y87lb/locust-0.0.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it +creating '/build/reproducible-path/locust-2.24.0/.pybuild/cpython3_3.13_locust/.tmp-nt21ag8h/locust-0.0.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'locust/__init__.py' adding 'locust/__main__.py' adding 'locust/_version.py' @@ -1196,7 +1232,7 @@ make[1]: Entering directory '/build/reproducible-path/locust-2.24.0' # examples/test_data_management.py - attempted network access during pytest collection phase # TestMasterWorkerRunners times out after a long time -http_proxy= https_proxy= PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/build/reproducible-path/locust-2.24.0/debian PYBUILD_SYSTEM=custom PYBUILD_TEST_ARGS="PYTHONPATH={build_dir} {interpreter} -m pytest -v --ignore=examples/test_data_management.py -k 'not TestMasterWorkerRunners'" dh_auto_test +http_proxy= https_proxy= PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path:/build/reproducible-path/locust-2.24.0/debian PYBUILD_SYSTEM=custom PYBUILD_TEST_ARGS="PYTHONPATH={build_dir} {interpreter} -m pytest -v --ignore=examples/test_data_management.py -k 'not TestMasterWorkerRunners'" dh_auto_test I: pybuild base:311: PYTHONPATH=/build/reproducible-path/locust-2.24.0/.pybuild/cpython3_3.13_locust/build python3.13 -m pytest -v --ignore=examples/test_data_management.py -k 'not TestMasterWorkerRunners' ============================= test session starts ============================== platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.13 @@ -1228,9 +1264,9 @@ locust/test/test_dispatch.py::TestRampUpThenDownThenUp::test_ramp_up_then_down_then_up SKIPPED [ 3%] locust/test/test_dispatch.py::TestDispatchUsersToWorkersHavingTheSameUsersAsTheTarget::test_dispatch_users_to_3_workers PASSED [ 3%] locust/test/test_dispatch.py::TestDistributionIsRespectedDuringDispatch::test_dispatch_75_users_to_4_workers_with_spawn_rate_of_5 PASSED [ 4%] -locust/test/test_dispatch.py::TestLargeScale::test_distribute_users PASSED [ 4%] +locust/test/test_dispatch.py::TestLargeScale::test_distribute_users FAILED [ 4%] locust/test/test_dispatch.py::TestLargeScale::test_ramp_down_from_100_000_to_0_users_with_50_user_classes_and_1000_workers_and_5000_spawn_rate PASSED [ 4%] -locust/test/test_dispatch.py::TestLargeScale::test_ramp_up_from_0_to_100_000_users_with_50_user_classes_and_1000_workers_and_5000_spawn_rate PASSED [ 4%] +locust/test/test_dispatch.py::TestLargeScale::test_ramp_up_from_0_to_100_000_users_with_50_user_classes_and_1000_workers_and_5000_spawn_rate FAILED [ 4%] locust/test/test_dispatch.py::TestSmallConsecutiveRamping::test_consecutive_ramp_up_and_ramp_down PASSED [ 4%] locust/test/test_dispatch.py::TestRampingMiscellaneous::test_spawn_rate_greater_than_target_user_count PASSED [ 4%] locust/test/test_dispatch.py::TestRemoveWorker::test_remove_last_worker PASSED [ 5%] @@ -1307,7 +1343,7 @@ locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_get PASSED [ 18%] locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_get_absolute_url PASSED [ 18%] locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_head PASSED [ 18%] -locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_pool_concurrency PASSED [ 18%] +locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_pool_concurrency FAILED [ 18%] locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_pool_per_user_instance PASSED [ 18%] locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_post PASSED [ 18%] locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_put PASSED [ 19%] @@ -1351,7 +1387,7 @@ locust/test/test_http.py::TestHttpSession::test_delete PASSED [ 26%] locust/test/test_http.py::TestHttpSession::test_error_message PASSED [ 26%] locust/test/test_http.py::TestHttpSession::test_error_message_with_name_replacement PASSED [ 26%] -locust/test/test_http.py::TestHttpSession::test_event_measure PASSED [ 26%] +locust/test/test_http.py::TestHttpSession::test_event_measure FAILED [ 26%] locust/test/test_http.py::TestHttpSession::test_get PASSED [ 26%] locust/test/test_http.py::TestHttpSession::test_get_with_params PASSED [ 26%] locust/test/test_http.py::TestHttpSession::test_head PASSED [ 27%] @@ -1521,7 +1557,7 @@ locust/test/test_runners.py::TestLocustRunner::test_attributes_populated_when_calling_start PASSED [ 57%] locust/test/test_runners.py::TestLocustRunner::test_can_call_stop_endpoint_if_currently_swarming PASSED [ 57%] locust/test/test_runners.py::TestLocustRunner::test_change_user_count_during_spawning PASSED [ 57%] -locust/test/test_runners.py::TestLocustRunner::test_cpu_warning PASSED [ 57%] +locust/test/test_runners.py::TestLocustRunner::test_cpu_warning FAILED [ 57%] locust/test/test_runners.py::TestLocustRunner::test_custom_dispatcher_class PASSED [ 57%] locust/test/test_runners.py::TestLocustRunner::test_custom_message PASSED [ 57%] locust/test/test_runners.py::TestLocustRunner::test_duplicate_message_handler_registration PASSED [ 58%] @@ -1536,7 +1572,7 @@ locust/test/test_runners.py::TestLocustRunner::test_stop_event_quit PASSED [ 59%] locust/test/test_runners.py::TestLocustRunner::test_stop_event_stop_and_quit PASSED [ 59%] locust/test/test_runners.py::TestLocustRunner::test_stop_users_count PASSED [ 60%] -locust/test/test_runners.py::TestLocustRunner::test_stop_users_with_spawn_rate PASSED [ 60%] +locust/test/test_runners.py::TestLocustRunner::test_stop_users_with_spawn_rate FAILED [ 60%] locust/test/test_runners.py::TestLocustRunner::test_stopping_event PASSED [ 60%] locust/test/test_runners.py::TestLocustRunner::test_swarm_endpoint_is_non_blocking PASSED [ 60%] locust/test/test_runners.py::TestLocustRunner::test_target_user_count_is_set_before_ramp_up PASSED [ 60%] @@ -1597,12 +1633,12 @@ locust/test/test_runners.py::TestWorkerRunner::test_worker_without_stop_timeout PASSED [ 70%] locust/test/test_runners.py::TestMessageSerializing::test_message_serialize PASSED [ 71%] locust/test/test_runners.py::TestStopTimeout::test_gracefully_handle_exceptions_in_listener PASSED [ 71%] -locust/test/test_runners.py::TestStopTimeout::test_kill_locusts_with_stop_timeout PASSED [ 71%] -locust/test/test_runners.py::TestStopTimeout::test_stop_timeout PASSED [ 71%] -locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_during_on_start PASSED [ 71%] -locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_exit_during_wait PASSED [ 71%] +locust/test/test_runners.py::TestStopTimeout::test_kill_locusts_with_stop_timeout FAILED [ 71%] +locust/test/test_runners.py::TestStopTimeout::test_stop_timeout FAILED [ 71%] +locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_during_on_start FAILED [ 71%] +locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_exit_during_wait FAILED [ 71%] locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_with_interrupt PASSED [ 72%] -locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_with_interrupt_no_reschedule PASSED [ 72%] +locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_with_interrupt_no_reschedule FAILED [ 72%] locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_with_ramp_down PASSED [ 72%] locust/test/test_runners.py::TestStopTimeout::test_users_can_call_runner_quit_with_stop_timeout PASSED [ 72%] locust/test/test_sequential_taskset.py::TestTaskSet::test_task_sequence_multiple_iterations PASSED [ 72%] @@ -1639,10 +1675,10 @@ locust/test/test_stats.py::TestStatsPrinting::test_print_stats PASSED [ 78%] locust/test/test_stats.py::TestCsvStats::test_csv_stats_on_master_from_aggregated_stats PASSED [ 78%] locust/test/test_stats.py::TestCsvStats::test_csv_stats_writer PASSED [ 78%] -locust/test/test_stats.py::TestCsvStats::test_csv_stats_writer_full_history PASSED [ 79%] +locust/test/test_stats.py::TestCsvStats::test_csv_stats_writer_full_history FAILED [ 79%] locust/test/test_stats.py::TestCsvStats::test_requests_csv_quote_escaping PASSED [ 79%] locust/test/test_stats.py::TestCsvStats::test_stats_history FAILED [ 79%] -locust/test/test_stats.py::TestCsvStats::test_user_count_in_csv_history_stats PASSED [ 79%] +locust/test/test_stats.py::TestCsvStats::test_user_count_in_csv_history_stats FAILED [ 79%] locust/test/test_stats.py::TestCsvStats::test_write_csv_files PASSED [ 79%] locust/test/test_stats.py::TestCsvStats::test_write_csv_files_full_history PASSED [ 79%] locust/test/test_stats.py::TestStatsEntryResponseTimesCache::test_diff_response_times_dicts PASSED [ 80%] @@ -1693,7 +1729,7 @@ locust/test/test_util.py::TestRounding::test_rounding_up PASSED [ 88%] locust/test/test_wait_time.py::TestWaitTime::test_between PASSED [ 88%] locust/test/test_wait_time.py::TestWaitTime::test_constant PASSED [ 88%] -locust/test/test_wait_time.py::TestWaitTime::test_constant_throughput PASSED [ 88%] +locust/test/test_wait_time.py::TestWaitTime::test_constant_throughput FAILED [ 88%] locust/test/test_wait_time.py::TestWaitTime::test_default_wait_time PASSED [ 89%] locust/test/test_web.py::TestWebUI::test_custom_argument_dropdown PASSED [ 89%] locust/test/test_web.py::TestWebUI::test_custom_shape_deactivate_num_users_and_spawn_rate PASSED [ 89%] @@ -1757,6 +1793,94 @@ locust/test/test_zmqrpc.py::ZMQRPC_tests::test_rpc_error PASSED [100%] =================================== FAILURES =================================== +_____________________ TestLargeScale.test_distribute_users _____________________ + +self = + + def test_distribute_users(self): + for user_classes in [self.weighted_user_classes, self.fixed_user_classes_1M, self.mixed_users]: + workers = [WorkerNode(str(i)) for i in range(10_000)] + + target_user_count = 1_000_000 + + users_dispatcher = UsersDispatcher(worker_nodes=workers, user_classes=user_classes) + + ts = time.perf_counter() + users_on_workers, user_gen, worker_gen, active_users = users_dispatcher._distribute_users( + target_user_count=target_user_count + ) + delta = time.perf_counter() - ts + + # Because tests are run with coverage, the code will be slower. + # We set the pass criterion to 7000ms, but in real life, the + # `_distribute_users` method runs faster than this. +> self.assertLessEqual(1000 * delta, 7000) +E AssertionError: 9663.969601038843 not less than or equal to 7000 + +locust/test/test_dispatch.py:2074: AssertionError +_ TestLargeScale.test_ramp_up_from_0_to_100_000_users_with_50_user_classes_and_1000_workers_and_5000_spawn_rate _ + +self = + + def test_ramp_up_from_0_to_100_000_users_with_50_user_classes_and_1000_workers_and_5000_spawn_rate(self): + for user_classes in [ + self.weighted_user_classes, + self.fixed_user_classes_1M, + self.fixed_user_classes_10k, + self.mixed_users, + ]: + workers = [WorkerNode(str(i)) for i in range(1000)] + + target_user_count = 100_000 + + users_dispatcher = UsersDispatcher(worker_nodes=workers, user_classes=user_classes) + users_dispatcher.new_dispatch(target_user_count=target_user_count, spawn_rate=5_000) + users_dispatcher._wait_between_dispatch = 0 + + all_dispatched_users = list(users_dispatcher) + + tol = 0.2 +> self.assertTrue( + all( + dispatch_iteration_duration <= tol + for dispatch_iteration_duration in users_dispatcher.dispatch_iteration_durations + ), + "One or more dispatch took more than {:.0f}s to compute (max = {}ms)".format( + tol * 1000, 1000 * max(users_dispatcher.dispatch_iteration_durations) + ), + ) +E AssertionError: False is not true : One or more dispatch took more than 200s to compute (max = 723.6560829915106ms) + +locust/test/test_dispatch.py:2096: AssertionError +______________ TestFastHttpUserClass.test_client_pool_concurrency ______________ + +self = + + def test_client_pool_concurrency(self): + class MyUser(FastHttpUser): + host = "http://127.0.0.1:%i" % self.port + + @task + def t(self): + def concurrent_request(url): + response = self.client.get(url) + assert response.status_code == 200 + + pool = gevent.pool.Pool() + urls = ["/slow?delay=0.2"] * 20 # these urls are all the same, but they could be different + for url in urls: + pool.spawn(concurrent_request, url) + pool.join() + + user = MyUser(self.environment) + before_requests = time.time() + user.t() + after_requests = time.time() + expected_delta = 0.4 # 20 requests with concurrency 10 and response time 0.2 +> self.assertAlmostEqual(before_requests + expected_delta, after_requests, delta=0.1) +E AssertionError: 1741778810.403446 != 1741778810.5318675 within 0.1 delta (0.12842154502868652 difference) + +locust/test/test_fasthttp.py:589: AssertionError _______________ TestFastHttpUserClass.test_max_redirect_setting ________________ self = @@ -1846,9 +1970,28 @@ E AssertionError: Request took longer than 0.6 even though FastHttpUser.network_timeout was set to 0.5 src/gevent/_gevent_c_greenlet_primitives.pxd:35: AssertionError +______________________ TestHttpSession.test_event_measure ______________________ + +self = + + def test_event_measure(self): + kwargs = {} + + def on_request(**kw): + kwargs.update(**kw) + + self.environment.events.request.add_listener(on_request) + + with self.environment.events.request.measure("GET", "/test") as request_meta: + time.sleep(0.001) + +> self.assertTrue(1 <= kwargs["response_time"] <= 1.5, kwargs["response_time"]) +E AssertionError: False is not true : 9.116291999816895 + +locust/test/test_http.py:293: AssertionError _________________ TestLoadLocustfile.test_locustfile_from_url __________________ -self = +self = def _new_conn(self) -> socket.socket: """Establish a socket connection and set nodelay settings on it. @@ -2064,7 +2207,7 @@ The above exception was the direct cause of the following exception: -self = +self = method = 'GET', url = '/locustio/locust/master/examples/basic.py', body = None headers = {'User-Agent': 'python-requests/2.32.3', 'Accept-Encoding': 'gzip, deflate, br', 'Accept': '*/*', 'Connection': 'keep-alive'} retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) @@ -2298,7 +2441,7 @@ self.sock = sock = self._new_conn() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = +self = def _new_conn(self) -> socket.socket: """Establish a socket connection and set nodelay settings on it. @@ -2314,13 +2457,13 @@ ) except socket.gaierror as e: > raise NameResolutionError(self.host, self, e) from e -E urllib3.exceptions.NameResolutionError: : Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution) +E urllib3.exceptions.NameResolutionError: : Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution) /usr/lib/python3/dist-packages/urllib3/connection.py:205: NameResolutionError The above exception was the direct cause of the following exception: -self = +self = request = , stream = False timeout = Timeout(connect=None, read=None, total=None), verify = True cert = None, proxies = OrderedDict({'no': 'localhost'}) @@ -2402,9 +2545,9 @@ self = Retry(total=0, connect=None, read=False, redirect=None, status=None) method = 'GET', url = '/locustio/locust/master/examples/basic.py' response = None -error = NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)") -_pool = -_stacktrace = +error = NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)") +_pool = +_stacktrace = def increment( self, @@ -2498,7 +2641,7 @@ if new_retry.is_exhausted(): reason = error or ResponseError(cause) > raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] -E urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /locustio/locust/master/examples/basic.py (Caused by NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)")) +E urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /locustio/locust/master/examples/basic.py (Caused by NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)")) /usr/lib/python3/dist-packages/urllib3/util/retry.py:519: MaxRetryError @@ -2522,7 +2665,7 @@ r = adapter.send(request, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = +self = request = , stream = False timeout = Timeout(connect=None, read=None, total=None), verify = True cert = None, proxies = OrderedDict({'no': 'localhost'}) @@ -2615,7 +2758,7 @@ raise SSLError(e, request=request) > raise ConnectionError(e, request=request) -E requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /locustio/locust/master/examples/basic.py (Caused by NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)")) +E requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /locustio/locust/master/examples/basic.py (Caused by NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)")) /usr/lib/python3/dist-packages/requests/adapters.py:700: ConnectionError @@ -2651,7 +2794,7 @@ locust/argument_parser.py:198: SystemExit ----------------------------- Captured stderr call ----------------------------- -Failed to get locustfile from: https://raw.githubusercontent.com/locustio/locust/master/examples/basic.py. Exception: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /locustio/locust/master/examples/basic.py (Caused by NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)")) +Failed to get locustfile from: https://raw.githubusercontent.com/locustio/locust/master/examples/basic.py. Exception: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /locustio/locust/master/examples/basic.py (Caused by NameResolutionError(": Failed to resolve 'raw.githubusercontent.com' ([Errno -3] Temporary failure in name resolution)")) _____________________ TestLoggingOptions.test_log_to_file ______________________ self = @@ -2702,8 +2845,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpi32g8xwh_locustfile.py', '-u', '1', '-r', ...] +self = +args = ['locust', '-f', '/tmp/tmpkw3nssv2_locustfile.py', '-u', '1', '-r', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -3030,8 +3173,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpuptlic6__locustfile.py', '-u', '1', '-r', ...] +self = +args = ['locust', '-f', '/tmp/tmpxqr0bm_4_locustfile.py', '-u', '1', '-r', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -3354,8 +3497,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmp6oqvalcf_locustfile.py', '-u', '1', '-r', ...] +self = +args = ['locust', '-f', '/tmp/tmpkvguz4de_locustfile.py', '-u', '1', '-r', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -3673,8 +3816,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmp483lrr21_locustfile.py', '-t', '1', '--headless'] +self = +args = ['locust', '-f', '/tmp/tmp_g0s7y7v_locustfile.py', '-t', '1', '--headless'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -4012,8 +4155,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188087_4294145_931.py,/tmp/tmpue3i3vlb_locustfile.py', '--legacy-ui', '--web-port', '40011', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778879_6339805_30663.py,/tmp/tmpb85komp6_locustfile.py', '--legacy-ui', '--web-port', '59895', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -4335,8 +4478,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188087_5038352_17524.py', '--legacy-ui', '--web-port', '39465', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778880_1564124_44931.py', '--legacy-ui', '--web-port', '33195', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -4646,8 +4789,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188087_5759687_6042.py', '--web-port', '35483', '-t', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778880_7799437_44801.py', '--web-port', '38985', '-t', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -4953,8 +5096,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188087_6473825_12511.py', '--web-port', '54639', '--autostart'] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778881_4052885_19122.py', '--web-port', '54121', '--autostart'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -5287,7 +5430,7 @@ output = proc.communicate()[0] self.assertNotIn("User1 is running", output) > self.assertIn("User2 is running", output) -E AssertionError: 'User2 is running' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: 2: from: not found\n/build/reproducible-path/locust-2.24.0/debian/locust: 5: Syntax error: end of file unexpected\n' +E AssertionError: 'User2 is running' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: line 2: from: command not found\n/build/reproducible-path/locust-2.24.0/debian/locust: line 5: syntax error: unexpected end of file\n' locust/test/test_main.py:1080: AssertionError _______________ StandaloneIntegrationTests.test_custom_arguments _______________ @@ -5327,8 +5470,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmp2b_p0mi6_locustfile.py', '--custom-string-arg', 'command_line_value', '--web-port', ...] +self = +args = ['locust', '-f', '/tmp/tmpfxav7elp_locustfile.py', '--custom-string-arg', 'command_line_value', '--web-port', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -5644,8 +5787,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmp6iszidgq_locustfile.py', '--autostart'] +self = +args = ['locust', '-f', '/tmp/tmpac4d5or9_locustfile.py', '--autostart'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -5955,8 +6098,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmp_qamxqnt_locustfile.py'], executable = 'locust' +self = +args = ['locust', '-f', '/tmp/tmpxs6jdcyc_locustfile.py'], executable = 'locust' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None universal_newlines = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 11, c2pwrite = 80, errread = 81 @@ -6268,8 +6411,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188087_9780455_66266.py', '--host', 'https://test.com/', '--run-time', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778884_0313642_2879.py', '--host', 'https://test.com/', '--run-time', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -6587,8 +6730,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188088_0514073_68492.py', '--host', 'https://test.com/', '--headless', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778884_5061622_46204.py', '--host', 'https://test.com/', '--headless', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -6905,8 +7048,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmp7l2llt5d_locustfile.py,/tmp/tmpnamza8r6_locustfile.py'] +self = +args = ['locust', '-f', '/tmp/tmp04x4da67_locustfile.py,/tmp/tmp2ftb16o2_locustfile.py'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -7209,8 +7352,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmplps2qz_j_locustfile.py,/tmp/tmp0sctfuyb_locustfile.py'] +self = +args = ['locust', '-f', '/tmp/tmpyr6i3fwn_locustfile.py,/tmp/tmp6ckokwyn_locustfile.py'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -7502,8 +7645,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpm11u_txy'], executable = 'locust' +self = +args = ['locust', '-f', '/tmp/tmpgbgr56vi'], executable = 'locust' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None universal_newlines = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 11, c2pwrite = 80, errread = 81 @@ -7818,8 +7961,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188088_3457963_2562.py', '--headless', '-t', '1', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778886_3216522_4949.py', '--headless', '-t', '1', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -8133,8 +8276,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188088_417485_84403.py', '--run-time=1s', '--headless', '--exit-code-on-error', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778886_7541757_63589.py', '--run-time=1s', '--headless', '--exit-code-on-error', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -8460,8 +8603,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpow1m1bwy_locustfile.py', '--headless'] +self = +args = ['locust', '-f', '/tmp/tmp7km90ero_locustfile.py', '--headless'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -8768,8 +8911,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188088_5831609_98981.py', '--host', 'https://test.com/', '--headless', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778888_417033_59710.py', '--host', 'https://test.com/', '--headless', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -9067,7 +9210,7 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = +self = args = ['locust', '--help'], executable = 'locust', preexec_fn = None close_fds = True, pass_fds = (), cwd = None, env = None universal_newlines = None, startupinfo = None, creationflags = 0, shell = False @@ -9382,8 +9525,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188088_7491224_37993.py', '--legacy-ui', '--host', 'https://test.com/', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778889_7680829_91354.py', '--legacy-ui', '--host', 'https://test.com/', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -9723,7 +9866,7 @@ output = proc.communicate()[0] stdin.close() > self.assertIn("Ramping to 1 users at a rate of 100.00 per second", output) -E AssertionError: 'Ramping to 1 users at a rate of 100.00 per second' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: 2: from: not found\n/build/reproducible-path/locust-2.24.0/debian/locust: 5: Syntax error: end of file unexpected\n' +E AssertionError: 'Ramping to 1 users at a rate of 100.00 per second' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: line 2: from: command not found\n/build/reproducible-path/locust-2.24.0/debian/locust: line 5: syntax error: unexpected end of file\n' locust/test/test_main.py:922: AssertionError _________ StandaloneIntegrationTests.test_invalid_percentile_parameter _________ @@ -9753,8 +9896,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpuw8rz_bh_locustfile.py', '--autostart'] +self = +args = ['locust', '-f', '/tmp/tmpoght25zp_locustfile.py', '--autostart'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -10059,8 +10202,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188094_9592972_96209.py', '--host', 'https://test.com/', '--stop-timeout', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778897_7085195_61555.py', '--host', 'https://test.com/', '--stop-timeout', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -10361,8 +10504,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmp1pgl4zye_locustfile.py,/tmp/tmp58eg01yy_locustfile.py', '-t', '1', '--headless'] +self = +args = ['locust', '-f', '/tmp/tmpicl1f0wz_locustfile.py,/tmp/tmpilf1wer5_locustfile.py', '-t', '1', '--headless'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -10642,7 +10785,7 @@ /usr/lib/python3/dist-packages/gevent/subprocess.py:1849: OSError ----------------------------- Captured stdout call ----------------------------- -from tmp1pgl4zye_locustfile import TestUser1 +from tmpicl1f0wz_locustfile import TestUser1 _____________ StandaloneIntegrationTests.test_percentile_parameter _____________ @@ -10675,8 +10818,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmppy6q8d3s_locustfile.py', '--web-port', '52235', '--autostart'] +self = +args = ['locust', '-f', '/tmp/tmpotqj51tm_locustfile.py', '--web-port', '53113', '--autostart'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -10987,8 +11130,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpxm4t1mos_locustfile.py', '--web-port', '44065', '--autostart'] +self = +args = ['locust', '-f', '/tmp/tmpbw3tk9s6_locustfile.py', '--web-port', '56715', '--autostart'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -11309,8 +11452,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpri506k9b', '--autostart', '-u', '2', ...] +self = +args = ['locust', '-f', '/tmp/tmp8pe2k323', '--autostart', '-u', '2', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -11631,8 +11774,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpbmqi26wa', '--headless', '-u', '2', ...] +self = +args = ['locust', '-f', '/tmp/tmpih_riib1', '--headless', '-u', '2', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -11968,8 +12111,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188095_3885734_6112.py,/tmp/tmp24q41o6w_locustfile.py', '--host', 'https://test.com/', '--headless', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778901_5224_50957.py,/tmp/tmpeout4nuv_locustfile.py', '--host', 'https://test.com/', '--headless', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -12267,8 +12410,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpi6zqux0h_locustfile.py,/tmp/tmpm09p2rmx_locustfile.py', '--class-picker'] +self = +args = ['locust', '-f', '/tmp/tmpr1_1gp71_locustfile.py,/tmp/tmp268ed7uf_locustfile.py', '--class-picker'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -12583,8 +12726,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '--headless', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188095_5330358_56672.py', '--exit-code-on-error=0', '--users=1', ...] +self = +args = ['locust', '--headless', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778902_9234667_4.py', '--exit-code-on-error=0', '--users=1', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -12902,8 +13045,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188095_618259_26770.py', '--run-time=1s', '--users=1', '--spawn-rate=1', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778904_0052505_20284.py', '--run-time=1s', '--users=1', '--spawn-rate=1', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -13213,7 +13356,7 @@ output = proc.communicate()[0] > self.assertIn("Ramping to 10 users at a rate of 10.00 per second", output) -E AssertionError: 'Ramping to 10 users at a rate of 10.00 per second' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: 2: from: not found\n/build/reproducible-path/locust-2.24.0/debian/locust: 5: Syntax error: end of file unexpected\n' +E AssertionError: 'Ramping to 10 users at a rate of 10.00 per second' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: line 2: from: command not found\n/build/reproducible-path/locust-2.24.0/debian/locust: line 5: syntax error: unexpected end of file\n' locust/test/test_main.py:1022: AssertionError _____________ StandaloneIntegrationTests.test_spawning_with_fixed ______________ @@ -13272,7 +13415,7 @@ output = proc.communicate()[0] > self.assertIn("Ramping to 10 users at a rate of 10.00 per second", output) -E AssertionError: 'Ramping to 10 users at a rate of 10.00 per second' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: 2: from: not found\n/build/reproducible-path/locust-2.24.0/debian/locust: 5: Syntax error: end of file unexpected\n' +E AssertionError: 'Ramping to 10 users at a rate of 10.00 per second' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: line 2: from: command not found\n/build/reproducible-path/locust-2.24.0/debian/locust: line 5: syntax error: unexpected end of file\n' locust/test/test_main.py:987: AssertionError _________________ StandaloneIntegrationTests.test_web_options __________________ @@ -13298,8 +13441,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188095_7902555_59207.py', '--web-host', '127.0.0.2', '--web-port', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778905_5598922_87364.py', '--web-host', '127.0.0.2', '--web-port', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -13603,8 +13746,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmpburoaprv_locustfile.py'], executable = 'locust' +self = +args = ['locust', '-f', '/tmp/tmpxtajaamd_locustfile.py'], executable = 'locust' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None universal_newlines = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 11, c2pwrite = 81, errread = 82 @@ -13899,8 +14042,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188095_933731_36070.py,/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188095_9338877_48367.py'] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778906_781863_37963.py,/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778906_7822165_40267.py'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -14195,8 +14338,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/tmp/tmphdbgyt4r'], executable = 'locust' +self = +args = ['locust', '-f', '/tmp/tmp2thi7qcf'], executable = 'locust' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None universal_newlines = None, startupinfo = None, creationflags = 0, shell = False p2cread = -1, p2cwrite = -1, c2pread = 11, c2pwrite = 81, errread = 82 @@ -14520,8 +14663,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_0766375_34262.py,/tmp/tmpy_uind95_locustfile.py'] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778908_1113527_57550.py,/tmp/tmpt44xlpui_locustfile.py'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -14842,8 +14985,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_1510258_62455.py', '--headless', '--master', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778908_7758708_48349.py', '--headless', '--master', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -15174,8 +15317,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_2245815_83210.py', '--headless', '--master', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778909_4443285_91403.py', '--headless', '--master', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -15498,8 +15641,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_2944486_19409.py', '--headless', '--master', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778910_528416_57008.py', '--headless', '--master', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -15829,8 +15972,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_367852_57669.py', '--headless', '--master', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778911_3276453_15116.py', '--headless', '--master', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -16145,8 +16288,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_4369648_36321', '--headless', '--master'] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778912_0073376_70762', '--headless', '--master'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -16453,8 +16596,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_5076637_67697.py', '--headless', '--master', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778912_4196768_5085.py', '--headless', '--master', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -16776,8 +16919,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_5785487_30223.py', '--host', 'http://google.com', '--headless', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778912_9397573_69444.py', '--host', 'http://google.com', '--headless', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -17096,8 +17239,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_6531582_14406.py', '--headless', '--master', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778913_579751_1919.py', '--headless', '--master', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -17411,7 +17554,7 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = +self = args = ['locust', '-f', '-', '--worker'], executable = 'locust' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None universal_newlines = None, startupinfo = None, creationflags = 0, shell = False @@ -17711,7 +17854,7 @@ assert False, f"locust process never finished: {command}" self.assertNotIn("Traceback", stderr) > self.assertIn("(index 3) reported as ready", stderr) -E AssertionError: '(index 3) reported as ready' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: 2: from: not found\n/build/reproducible-path/locust-2.24.0/debian/locust: 5: Syntax error: end of file unexpected\n' +E AssertionError: '(index 3) reported as ready' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: line 2: from: command not found\n/build/reproducible-path/locust-2.24.0/debian/locust: line 5: syntax error: unexpected end of file\n' locust/test/test_main.py:1993: AssertionError ____________ DistributedIntegrationTests.test_processes_autodetect _____________ @@ -17736,7 +17879,7 @@ assert False, f"locust process never finished: {command}" self.assertNotIn("Traceback", stderr) > self.assertIn("(index 0) reported as ready", stderr) -E AssertionError: '(index 0) reported as ready' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: 2: from: not found\n/build/reproducible-path/locust-2.24.0/debian/locust: 5: Syntax error: end of file unexpected\n' +E AssertionError: '(index 0) reported as ready' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: line 2: from: command not found\n/build/reproducible-path/locust-2.24.0/debian/locust: line 5: syntax error: unexpected end of file\n' locust/test/test_main.py:2013: AssertionError ______________ DistributedIntegrationTests.test_processes_ctrl_c _______________ @@ -17770,8 +17913,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188096_8923316_72278.py', '--processes', '4', '--headless', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778915_6046164_61484.py', '--processes', '4', '--headless', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -18078,8 +18221,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188097_0086865_40109.py', '--processes', '4', '-L', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778916_320343_88959.py', '--processes', '4', '-L', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -18404,7 +18547,7 @@ self.assertNotIn("Traceback", master_stderr) self.assertNotIn("Gave up waiting for workers to connect", master_stderr) > self.assertIn("(index 3) reported as ready", master_stderr) -E AssertionError: '(index 3) reported as ready' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: 2: from: not found\n/build/reproducible-path/locust-2.24.0/debian/locust: 5: Syntax error: end of file unexpected\n' +E AssertionError: '(index 3) reported as ready' not found in '/build/reproducible-path/locust-2.24.0/debian/locust: line 2: from: command not found\n/build/reproducible-path/locust-2.24.0/debian/locust: line 5: syntax error: unexpected end of file\n' locust/test/test_main.py:2058: AssertionError ______ DistributedIntegrationTests.test_processes_workers_quit_unexpected ______ @@ -18443,8 +18586,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188097_1545029_77237.py', '--processes', '2', '--worker'] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778917_0364327_66465.py', '--processes', '2', '--worker'] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -18765,8 +18908,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188097_2388651_47763.py', '--headless', '--master', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778917_523935_9795.py', '--headless', '--master', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -19083,8 +19226,8 @@ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = -args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1776188097_3199918_59682.py', '--master', '--headless', '--expect-workers', ...] +self = +args = ['locust', '-f', '/build/reproducible-path/locust-2.24.0/locust/test/mock_locustfile_1741778918_0289474_78121.py', '--master', '--headless', '--expect-workers', ...] executable = 'locust', preexec_fn = None, close_fds = True, pass_fds = () cwd = None, env = None, universal_newlines = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 @@ -19362,6 +19505,85 @@ E OSError: [Errno 8] Exec format error: 'locust' /usr/lib/python3/dist-packages/gevent/subprocess.py:1849: OSError +______________________ TestLocustRunner.test_cpu_warning _______________________ + +self = + + def test_cpu_warning(self): + _monitor_interval = runners.CPU_MONITOR_INTERVAL + runners.CPU_MONITOR_INTERVAL = 2.0 + try: + + class CpuUser(User): + wait_time = constant(0.001) + + @task + def cpu_task(self): + for i in range(1000000): + _ = 3 / 2 + + environment = Environment(user_classes=[CpuUser]) + environment._cpu_warning_event_triggered = False + + def cpu_warning(environment, cpu_usage, **kwargs): + environment._cpu_warning_event_triggered = True + environment._cpu_usage = cpu_usage + + environment.events.cpu_warning.add_listener(cpu_warning) + runner = LocalRunner(environment) + self.assertFalse(runner.cpu_warning_emitted) + runner.spawn_users({CpuUser.__name__: 1}, wait=False) + sleep(2.5) +> self.assertTrue(environment._cpu_warning_event_triggered) +E AssertionError: False is not true + +locust/test/test_runners.py:172: AssertionError +_______________ TestLocustRunner.test_stop_users_with_spawn_rate _______________ + +self = + + def test_stop_users_with_spawn_rate(self): + """ + The spawn rate does not have an effect on the rate at which the users are stopped. + It is expected that the excess users will be stopped as soon as possible in parallel + (while respecting the stop_timeout). + """ + + class MyUser(User): + wait_time = constant(1) + + @task + def my_task(self): + pass + + environment = Environment(user_classes=[MyUser]) + runner = LocalRunner(environment) + + # Start load test, wait for users to start, then trigger ramp down + ts = time.time() + runner.start(10, 10, wait=False) + runner.spawning_greenlet.join() + delta = time.time() - ts + self.assertTrue( + 0 <= delta <= 0.05, f"Expected user count to increase to 10 instantaneously, instead it took {delta:f}" + ) + self.assertTrue( + runner.user_count == 10, "User count has not decreased correctly to 2, it is : %i" % runner.user_count + ) + + ts = time.time() + runner.start(2, 4, wait=False) + runner.spawning_greenlet.join() + delta = time.time() - ts +> self.assertTrue(0 <= delta <= 1.05, f"Expected user count to decrease to 2 in 1s, instead it took {delta:f}") +E AssertionError: False is not true : Expected user count to decrease to 2 in 1s, instead it took 1.108939 + +locust/test/test_runners.py:492: AssertionError +------------------------------ Captured log call ------------------------------- +INFO locust.runners:runners.py:499 Ramping to 10 users at a rate of 10.00 per second +INFO locust.runners:runners.py:537 All users spawned: {"MyUser": 10} (10 total users) +INFO locust.runners:runners.py:499 Ramping to 2 users at a rate of 4.00 per second +INFO locust.runners:runners.py:537 All users spawned: {"MyUser": 2} (2 total users) ________ TestMasterRunner.test_attributes_populated_when_calling_start _________ self = @@ -19438,17 +19660,12 @@ ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (fake_client0). That's not going to work. ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (fake_client1). That's not going to work. ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (fake_client2). That's not going to work. -WARNING root:runners.py:305 CPU usage above 90%! This may constrain your throughput and may even give inconsistent response time measurements! See https://docs.locust.io/en/stable/running-distributed.html for how to distribute the load over multiple CPU cores or machines -WARNING root:runners.py:305 CPU usage above 90%! This may constrain your throughput and may even give inconsistent response time measurements! See https://docs.locust.io/en/stable/running-distributed.html for how to distribute the load over multiple CPU cores or machines -WARNING root:runners.py:305 CPU usage above 90%! This may constrain your throughput and may even give inconsistent response time measurements! See https://docs.locust.io/en/stable/running-distributed.html for how to distribute the load over multiple CPU cores or machines -WARNING root:runners.py:305 CPU usage above 90%! This may constrain your throughput and may even give inconsistent response time measurements! See https://docs.locust.io/en/stable/running-distributed.html for how to distribute the load over multiple CPU cores or machines ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (fake_client3). That's not going to work. ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (fake_client4). That's not going to work. INFO locust.runners:runners.py:329 Shape test starting. INFO locust.runners:runners.py:337 Shape worker starting INFO locust.runners:runners.py:356 Shape test updating to 5 users at 5.00 spawn rate WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected -WARNING root:runners.py:305 CPU usage above 90%! This may constrain your throughput and may even give inconsistent response time measurements! See https://docs.locust.io/en/stable/running-distributed.html for how to distribute the load over multiple CPU cores or machines ______________ TestMasterRunner.test_custom_shape_scale_interval _______________ self = @@ -19556,6 +19773,8 @@ INFO locust.runners:runners.py:337 Shape worker starting INFO locust.runners:runners.py:356 Shape test updating to 1 users at 1.00 spawn rate WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected +INFO locust.runners:runners.py:356 Shape test updating to 1 users at 5.00 spawn rate +WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected _____________ TestMasterRunner.test_last_worker_missing_stops_test _____________ self = @@ -19617,14 +19836,6 @@ WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client1. Asking worker to quit. WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client2. Asking worker to quit. WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client3. Asking worker to quit. -INFO locust.runners:runners.py:356 Shape test updating to 1 users at 5.00 spawn rate -WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected -INFO locust.runners:runners.py:933 Worker 0 failed to send heartbeat, setting state to missing. -INFO locust.runners:runners.py:933 Worker 1 failed to send heartbeat, setting state to missing. -INFO locust.runners:runners.py:933 Worker 2 failed to send heartbeat, setting state to missing. -INFO locust.runners:runners.py:933 Worker 3 failed to send heartbeat, setting state to missing. -INFO locust.runners:runners.py:933 Worker 4 failed to send heartbeat, setting state to missing. -INFO locust.runners:runners.py:941 The last worker went missing, stopping test. ____________ TestMasterRunner.test_last_worker_quitting_stops_test _____________ self = @@ -19658,6 +19869,11 @@ WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client1. Asking worker to quit. WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client2. Asking worker to quit. +INFO locust.runners:runners.py:356 Shape test updating to 2 users at 2.00 spawn rate +WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected +INFO locust.runners:runners.py:356 Shape test updating to 2 users at 2.00 spawn rate +WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected +INFO locust.runners:runners.py:342 Shape test stopping ___________ TestMasterRunner.test_master_discard_first_client_ready ____________ self = @@ -19691,7 +19907,7 @@ locust/test/test_runners.py:2162: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = , k = 'fake_client' +self = , k = 'fake_client' def __getitem__(self, k: str) -> WorkerNode: > return self._worker_nodes[k] @@ -19700,14 +19916,18 @@ locust/runners.py:636: KeyError ------------------------------ Captured log call ------------------------------- ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (fake_client). That's not going to work. -INFO locust.runners:runners.py:356 Shape test updating to 2 users at 2.00 spawn rate -WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected -INFO locust.runners:runners.py:356 Shape test updating to 2 users at 2.00 spawn rate -WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected -INFO locust.runners:runners.py:342 Shape test stopping INFO locust.runners:runners.py:342 Shape test stopping +INFO locust.runners:runners.py:933 Worker 0 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:933 Worker 1 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:933 Worker 2 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:933 Worker 3 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:933 Worker 4 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:941 The last worker went missing, stopping test. INFO locust.runners:runners.py:356 Shape test updating to 3 users at 3.00 spawn rate WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected +INFO locust.runners:runners.py:356 Shape test updating to 4 users at 4.00 spawn rate +WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected +INFO locust.runners:runners.py:342 Shape test stopping ________________ TestMasterRunner.test_master_reset_connection _________________ self = @@ -19728,8 +19948,6 @@ locust/test/test_runners.py:2998: AssertionError ------------------------------ Captured log call ------------------------------- -INFO locust.runners:runners.py:356 Shape test updating to 4 users at 4.00 spawn rate -WARNING locust.runners:runners.py:743 You can't start a distributed test before at least one worker processes has connected ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (fake_client). That's not going to work. INFO locust.runners:runners.py:959 Resetting RPC server and all worker connections. ________ TestMasterRunner.test_rebalance_locust_users_on_worker_connect ________ @@ -20112,6 +20330,10 @@ WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client1. Asking worker to quit. WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client2. Asking worker to quit. WARNING locust.runners:runners.py:1115 Got spawning message from unknown worker fake_client3. Asking worker to quit. +INFO locust.runners:runners.py:933 Worker 1 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:933 Worker 2 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:933 Worker 3 failed to send heartbeat, setting state to missing. +INFO locust.runners:runners.py:941 The last worker went missing, stopping test. ___________ TestMasterRunner.test_worker_sends_bad_message_to_master ___________ self = @@ -20158,6 +20380,346 @@ locust/test/test_runners.py:3194: AssertionError ------------------------------ Captured log call ------------------------------- ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (zeh_fake_client1). That's not going to work. +_____________ TestStopTimeout.test_kill_locusts_with_stop_timeout ______________ + +self = + + def test_kill_locusts_with_stop_timeout(self): + short_time = 0.05 + + class MyTaskSet(TaskSet): + @task + def my_task(self): + MyTaskSet.state = "first" + gevent.sleep(short_time) + MyTaskSet.state = "second" # should only run when run time + stop_timeout is > short_time + gevent.sleep(short_time) + MyTaskSet.state = "third" # should only run when run time + stop_timeout is > short_time * 2 + + class MyTestUser(User): + tasks = [MyTaskSet] + + environment = create_environment([MyTestUser], mocked_options()) + runner = environment.create_local_runner() + runner.start(1, 1) + gevent.sleep(short_time / 2) + runner.stop_users({MyTestUser.__name__: 1}) +> self.assertEqual("first", MyTaskSet.state) +E AssertionError: 'first' != 'third' +E - first +E + third + +locust/test/test_runners.py:4105: AssertionError +------------------------------ Captured log call ------------------------------- +INFO locust.runners:runners.py:499 Ramping to 1 users at a rate of 1.00 per second +INFO locust.runners:runners.py:537 All users spawned: {"MyTestUser": 1} (1 total users) +INFO locust.runners:runners.py:141 Resetting stats +______________________ TestStopTimeout.test_stop_timeout _______________________ + +self = + + def test_stop_timeout(self): + short_time = 0.05 + + class MyTaskSet(TaskSet): + @task + def my_task(self): + MyTaskSet.state = "first" + gevent.sleep(short_time) + MyTaskSet.state = "second" # should only run when run time + stop_timeout is > short_time + gevent.sleep(short_time) + MyTaskSet.state = "third" # should only run when run time + stop_timeout is > short_time * 2 + + class MyTestUser(User): + tasks = [MyTaskSet] + + environment = Environment(user_classes=[MyTestUser]) + runner = environment.create_local_runner() + runner.start(1, 1, wait=False) + gevent.sleep(short_time / 2) + runner.quit() +> self.assertEqual("first", MyTaskSet.state) +E AssertionError: 'first' != 'third' +E - first +E + third + +locust/test/test_runners.py:3944: AssertionError +------------------------------ Captured log call ------------------------------- +INFO locust.runners:runners.py:499 Ramping to 1 users at a rate of 1.00 per second +INFO locust.runners:runners.py:537 All users spawned: {"MyTestUser": 1} (1 total users) +______________ TestStopTimeout.test_stop_timeout_during_on_start _______________ + +self = + + def test_stop_timeout_during_on_start(self): + short_time = 0.05 + + class MyTaskSet(TaskSet): + finished_on_start = False + my_task_run = False + + def on_start(self): + gevent.sleep(short_time) + MyTaskSet.finished_on_start = True + + @task + def my_task(self): + MyTaskSet.my_task_run = True + + class MyTestUser(User): + tasks = [MyTaskSet] + + environment = create_environment([MyTestUser], mocked_options()) + environment.stop_timeout = short_time + runner = environment.create_local_runner() + runner.start(1, 1) + gevent.sleep(short_time / 2) + runner.quit() + + self.assertTrue(MyTaskSet.finished_on_start) +> self.assertFalse(MyTaskSet.my_task_run) +E AssertionError: True is not false + +locust/test/test_runners.py:3996: AssertionError +------------------------------ Captured log call ------------------------------- +INFO locust.runners:runners.py:499 Ramping to 1 users at a rate of 1.00 per second +INFO locust.runners:runners.py:537 All users spawned: {"MyTestUser": 1} (1 total users) +INFO locust.runners:runners.py:141 Resetting stats +______________ TestStopTimeout.test_stop_timeout_exit_during_wait ______________ + +self = + + def test_stop_timeout_exit_during_wait(self): + short_time = 0.05 + + class MyTaskSet(TaskSet): + @task + def my_task(self): + pass + + class MyTestUser(User): + tasks = [MyTaskSet] + wait_time = constant(1) + + environment = Environment(user_classes=[MyTestUser], stop_timeout=short_time) + runner = environment.create_local_runner() + runner.start(1, 1) + gevent.sleep(short_time) # sleep to make sure locust has had time to start waiting + timeout = gevent.Timeout(short_time) + timeout.start() + try: +> runner.quit() + +locust/test/test_runners.py:4017: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +locust/runners.py:415: in quit + self.stop() +locust/runners.py:562: in stop + super().stop() +locust/runners.py:402: in stop + self.stop_users(self.user_classes_count) +locust/runners.py:284: in stop_users + async_calls_to_stop.join() +/usr/lib/python3/dist-packages/gevent/pool.py:430: in join + result = self._empty_event.wait(timeout=timeout) +src/gevent/event.py:164: in gevent._gevent_cevent.Event.wait + ??? +src/gevent/_abstract_linkable.py:521: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait + ??? +src/gevent/_abstract_linkable.py:487: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core + ??? +src/gevent/_abstract_linkable.py:496: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core + ??? +src/gevent/_abstract_linkable.py:490: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core + ??? +src/gevent/_abstract_linkable.py:442: in gevent._gevent_c_abstract_linkable.AbstractLinkable._AbstractLinkable__wait_to_be_notified + ??? +src/gevent/_abstract_linkable.py:451: in gevent._gevent_c_abstract_linkable.AbstractLinkable._switch_to_hub + ??? +src/gevent/_greenlet_primitives.py:61: in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch + ??? +src/gevent/_greenlet_primitives.py:65: in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch + ??? +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +> ??? +E gevent.timeout.Timeout: 0.05 seconds + +src/gevent/_gevent_c_greenlet_primitives.pxd:35: Timeout + +During handling of the above exception, another exception occurred: + +self = + + def test_stop_timeout_exit_during_wait(self): + short_time = 0.05 + + class MyTaskSet(TaskSet): + @task + def my_task(self): + pass + + class MyTestUser(User): + tasks = [MyTaskSet] + wait_time = constant(1) + + environment = Environment(user_classes=[MyTestUser], stop_timeout=short_time) + runner = environment.create_local_runner() + runner.start(1, 1) + gevent.sleep(short_time) # sleep to make sure locust has had time to start waiting + timeout = gevent.Timeout(short_time) + timeout.start() + try: + runner.quit() + runner.greenlet.join() + except gevent.Timeout: +> self.fail("Got Timeout exception. Waiting locusts should stop immediately, even when using stop_timeout.") +E AssertionError: Got Timeout exception. Waiting locusts should stop immediately, even when using stop_timeout. + +locust/test/test_runners.py:4020: AssertionError +------------------------------ Captured log call ------------------------------- +INFO locust.runners:runners.py:499 Ramping to 1 users at a rate of 1.00 per second +INFO locust.runners:runners.py:537 All users spawned: {"MyTestUser": 1} (1 total users) +________ TestStopTimeout.test_stop_timeout_with_interrupt_no_reschedule ________ + +self = + + def test_stop_timeout_with_interrupt_no_reschedule(self): + state = [0] + + class MySubTaskSet(TaskSet): + @task + def a_task(self): + gevent.sleep(0.1) + state[0] = 1 + self.interrupt(reschedule=False) + + class MyTestUser(User): + tasks = [MySubTaskSet] + wait_time = constant(3) + + options = mocked_options() + options.stop_timeout = 0.3 + environment = create_environment([MyTestUser], options) + runner = environment.create_local_runner() + runner.start(1, 1, wait=True) + gevent.sleep(0) + timeout = gevent.Timeout(0.11) + timeout.start() + try: +> runner.quit() + +locust/test/test_runners.py:4077: +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ +locust/runners.py:415: in quit + self.stop() +locust/runners.py:562: in stop + super().stop() +locust/runners.py:402: in stop + self.stop_users(self.user_classes_count) +locust/runners.py:286: in stop_users + if not stop_group.join(timeout=self.environment.stop_timeout): +/usr/lib/python3/dist-packages/gevent/pool.py:430: in join + result = self._empty_event.wait(timeout=timeout) +src/gevent/event.py:164: in gevent._gevent_cevent.Event.wait + ??? +src/gevent/_abstract_linkable.py:521: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait + ??? +src/gevent/_abstract_linkable.py:487: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core + ??? +src/gevent/_abstract_linkable.py:496: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core + ??? +src/gevent/_abstract_linkable.py:490: in gevent._gevent_c_abstract_linkable.AbstractLinkable._wait_core + ??? +src/gevent/_abstract_linkable.py:442: in gevent._gevent_c_abstract_linkable.AbstractLinkable._AbstractLinkable__wait_to_be_notified + ??? +src/gevent/_abstract_linkable.py:451: in gevent._gevent_c_abstract_linkable.AbstractLinkable._switch_to_hub + ??? +src/gevent/_greenlet_primitives.py:61: in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch + ??? +src/gevent/_greenlet_primitives.py:65: in gevent._gevent_c_greenlet_primitives.SwitchOutGreenletWithLoop.switch + ??? +_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + +> ??? +E gevent.timeout.Timeout: 0.11 seconds + +src/gevent/_gevent_c_greenlet_primitives.pxd:35: Timeout + +During handling of the above exception, another exception occurred: + +self = + + def test_stop_timeout_with_interrupt_no_reschedule(self): + state = [0] + + class MySubTaskSet(TaskSet): + @task + def a_task(self): + gevent.sleep(0.1) + state[0] = 1 + self.interrupt(reschedule=False) + + class MyTestUser(User): + tasks = [MySubTaskSet] + wait_time = constant(3) + + options = mocked_options() + options.stop_timeout = 0.3 + environment = create_environment([MyTestUser], options) + runner = environment.create_local_runner() + runner.start(1, 1, wait=True) + gevent.sleep(0) + timeout = gevent.Timeout(0.11) + timeout.start() + try: + runner.quit() + runner.greenlet.join() + except gevent.Timeout: +> self.fail("Got Timeout exception. Interrupted locusts should exit immediately during stop_timeout.") +E AssertionError: Got Timeout exception. Interrupted locusts should exit immediately during stop_timeout. + +locust/test/test_runners.py:4080: AssertionError +------------------------------ Captured log call ------------------------------- +INFO locust.runners:runners.py:499 Ramping to 1 users at a rate of 1.00 per second +_______________ TestCsvStats.test_csv_stats_writer_full_history ________________ + +self = + + @mock.patch("locust.stats.CSV_STATS_INTERVAL_SEC", new=_TEST_CSV_STATS_INTERVAL_SEC) + def test_csv_stats_writer_full_history(self): + stats_writer = StatsCSVFileWriter( + self.environment, PERCENTILES_TO_REPORT, self.STATS_BASE_NAME, full_history=True + ) + + for i in range(10): + self.runner.stats.log_request("GET", "/", 100, content_length=666) + + greenlet = gevent.spawn(stats_writer) + gevent.sleep(10) + + for i in range(10): + self.runner.stats.log_request("GET", "/", 10, content_length=666) + + gevent.sleep(5) + + gevent.sleep(_TEST_CSV_STATS_INTERVAL_WAIT_SEC) + gevent.kill(greenlet) + stats_writer.close_files() + + self.assertTrue(os.path.exists(self.STATS_FILENAME)) + self.assertTrue(os.path.exists(self.STATS_HISTORY_FILENAME)) + self.assertTrue(os.path.exists(self.STATS_FAILURES_FILENAME)) + self.assertTrue(os.path.exists(self.STATS_EXCEPTIONS_FILENAME)) + + with open(self.STATS_HISTORY_FILENAME) as f: + reader = csv.DictReader(f) + rows = [r for r in reader] + +> self.assertGreaterEqual(len(rows), 130) +E AssertionError: 118 not greater than or equal to 130 + +locust/test/test_stats.py:459: AssertionError _______________________ TestCsvStats.test_stats_history ________________________ self = @@ -20298,7 +20860,7 @@ self.connect_to_master() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = +self = def connect_to_master(self): self.retry += 1 @@ -20323,126 +20885,192 @@ locust/runners.py:1444: ConnectionError ------------------------------ Captured log call ------------------------------- -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 3/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 4/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 5/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 6/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 7/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 8/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 9/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 10/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 11/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 12/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 13/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 14/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 15/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 16/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 17/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 18/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 19/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 20/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 21/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 22/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 23/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 24/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 25/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 26/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 27/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 28/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 29/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 30/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 31/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 32/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 33/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 34/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 35/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 36/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 37/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 38/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 39/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 40/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 41/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 42/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 43/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 44/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 45/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 46/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 47/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 48/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 49/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 50/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 51/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 52/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 53/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 54/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 55/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 56/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 57/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 58/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 59/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 60/60. -ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (ionos15-amd64_0611beff983b412396afe8c31a4247e9). That's not going to work. +ERROR locust.runners:runners.py:1009 An old (pre 2.0) worker tried to connect (i-capture-the-hostname_1f73413f6f954f77a474213a279d2ec7). That's not going to work. WARNING locust.runners:runners.py:1440 Failed to connect to master 127.0.0.1:5558, retry 61/60. +______________ TestCsvStats.test_user_count_in_csv_history_stats _______________ + +self = + + @mock.patch("locust.stats.CSV_STATS_INTERVAL_SEC", new=_TEST_CSV_STATS_INTERVAL_SEC) + def test_user_count_in_csv_history_stats(self): + start_time = int(time.time()) + + class TestUser(User): + wait_time = constant(10) + + @task + def t(self): + self.environment.runner.stats.log_request("GET", "/", 10, 10) + + environment = Environment(user_classes=[TestUser]) + stats_writer = StatsCSVFileWriter(environment, PERCENTILES_TO_REPORT, self.STATS_BASE_NAME, full_history=True) + runner = environment.create_local_runner() + # spawn a user every _TEST_CSV_STATS_INTERVAL_SEC second + user_count = 15 + spawn_rate = 5 + assert 1 / 5 == _TEST_CSV_STATS_INTERVAL_SEC + runner_greenlet = gevent.spawn(runner.start, user_count, spawn_rate) + gevent.sleep(0.1) + + greenlet = gevent.spawn(stats_writer) + gevent.sleep(user_count / spawn_rate) + gevent.kill(greenlet) + stats_writer.close_files() + runner.stop() + gevent.kill(runner_greenlet) + + with open(self.STATS_HISTORY_FILENAME) as f: + reader = csv.DictReader(f) + rows = [r for r in reader] + +> self.assertEqual(2 * user_count, len(rows)) +E AssertionError: 30 != 28 + +locust/test/test_stats.py:545: AssertionError +------------------------------ Captured log call ------------------------------- +INFO locust.runners:runners.py:499 Ramping to 15 users at a rate of 5.00 per second +INFO locust.runners:runners.py:537 All users spawned: {"TestUser": 15} (15 total users) +____________________ TestWaitTime.test_constant_throughput _____________________ + +self = + + def test_constant_throughput(self): + class MyUser(User): + wait_time = constant_throughput(10) + + class TS(TaskSet): + pass + + ts = TS(MyUser(self.environment)) + + ts2 = TS(MyUser(self.environment)) + + previous_time = time.perf_counter() + for i in range(7): + ts.wait() + since_last_run = time.perf_counter() - previous_time +> self.assertLess(abs(0.1 - since_last_run), 0.02) +E AssertionError: 0.02289427407085895 not less than 0.02 + +locust/test/test_wait_time.py:75: AssertionError =============================== warnings summary =============================== locust/test/test_fasthttp.py::TestFastHttpSsl::test_ssl_request_insecure locust/test/test_web.py::TestWebUIWithTLS::test_index_with_https @@ -20450,8 +21078,8 @@ self._context = SSLContext(ssl_version) locust/test/test_log.py: 4 warnings -locust/test/test_main.py: 38 warnings - /usr/lib/python3/dist-packages/gevent/os.py:431: DeprecationWarning: This process (pid=353295) is multi-threaded, use of fork() may lead to deadlocks in the child. +locust/test/test_main.py: 20 warnings + /usr/lib/python3/dist-packages/gevent/os.py:431: DeprecationWarning: This process (pid=2047276) is multi-threaded, use of fork() may lead to deadlocks in the child. pid = fork() locust/test/test_web.py::TestWebUI::test_html_stats_report @@ -20475,8 +21103,12 @@ -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ +FAILED locust/test/test_dispatch.py::TestLargeScale::test_distribute_users - ... +FAILED locust/test/test_dispatch.py::TestLargeScale::test_ramp_up_from_0_to_100_000_users_with_50_user_classes_and_1000_workers_and_5000_spawn_rate +FAILED locust/test/test_fasthttp.py::TestFastHttpUserClass::test_client_pool_concurrency FAILED locust/test/test_fasthttp.py::TestFastHttpUserClass::test_max_redirect_setting FAILED locust/test/test_fasthttp.py::TestFastHttpUserClass::test_network_timeout_setting +FAILED locust/test/test_http.py::TestHttpSession::test_event_measure - Assert... FAILED locust/test/test_load_locustfile.py::TestLoadLocustfile::test_locustfile_from_url FAILED locust/test/test_log.py::TestLoggingOptions::test_log_to_file - OSErro... FAILED locust/test/test_log.py::TestLoggingOptions::test_logging_output - OSE... @@ -20537,6 +21169,8 @@ FAILED locust/test/test_main.py::DistributedIntegrationTests::test_processes_workers_quit_unexpected FAILED locust/test/test_main.py::DistributedIntegrationTests::test_worker_indexes FAILED locust/test/test_main.py::DistributedIntegrationTests::test_workers_shut_down_if_master_is_gone +FAILED locust/test/test_runners.py::TestLocustRunner::test_cpu_warning - Asse... +FAILED locust/test/test_runners.py::TestLocustRunner::test_stop_users_with_spawn_rate FAILED locust/test/test_runners.py::TestMasterRunner::test_attributes_populated_when_calling_start FAILED locust/test/test_runners.py::TestMasterRunner::test_custom_shape_scale_down FAILED locust/test/test_runners.py::TestMasterRunner::test_custom_shape_scale_interval @@ -20560,8 +21194,16 @@ FAILED locust/test/test_runners.py::TestMasterRunner::test_worker_missing_after_heartbeat_dead_interval FAILED locust/test/test_runners.py::TestMasterRunner::test_worker_sends_bad_message_to_master FAILED locust/test/test_runners.py::TestMasterRunner::test_worker_sends_unrecognized_message_to_master +FAILED locust/test/test_runners.py::TestStopTimeout::test_kill_locusts_with_stop_timeout +FAILED locust/test/test_runners.py::TestStopTimeout::test_stop_timeout - Asse... +FAILED locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_during_on_start +FAILED locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_exit_during_wait +FAILED locust/test/test_runners.py::TestStopTimeout::test_stop_timeout_with_interrupt_no_reschedule +FAILED locust/test/test_stats.py::TestCsvStats::test_csv_stats_writer_full_history FAILED locust/test/test_stats.py::TestCsvStats::test_stats_history - Connecti... -= 86 failed, 462 passed, 1 skipped, 15 deselected, 57 warnings in 491.07s (0:08:11) = +FAILED locust/test/test_stats.py::TestCsvStats::test_user_count_in_csv_history_stats +FAILED locust/test/test_wait_time.py::TestWaitTime::test_constant_throughput += 100 failed, 448 passed, 1 skipped, 15 deselected, 39 warnings in 816.56s (0:13:36) = E: pybuild pybuild:389: test: plugin custom failed with: exit code=1: PYTHONPATH=/build/reproducible-path/locust-2.24.0/.pybuild/cpython3_3.13_locust/build python3.13 -m pytest -v --ignore=examples/test_data_management.py -k 'not TestMasterWorkerRunners' dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13 make[1]: [debian/rules:15: override_dh_auto_test] Error 25 (ignored) @@ -20600,12 +21242,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2006000/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/329061 and its subdirectories -I: Current time: Tue Apr 14 05:42:18 -12 2026 -I: pbuilder-time-stamp: 1776188538 +I: removing directory /srv/workspace/pbuilder/2006000 and its subdirectories +I: Current time: Thu Mar 13 01:39:18 +14 2025 +I: pbuilder-time-stamp: 1741779558