Tests / confs/tests.py
TestApproveConference::test_anonymous_sees_pending_banner_without_button
First seen 3 weeks ago in 0c23747
CI
github-actions:test
11 runs
Average
1.05 s
median 850 ms
max 2.18 s
max 2.18 s
Phases
Setup 1 ms
Call 1.02 s
Teardown 29 ms
Categories
Password hashing 938 ms
Database 25 ms
Factories 0.82 ms
App code 0.37 ms
Other (Libraries, DB schema, pytest, Templates, ...) 91 ms
14 database queries per run
Needs 299 KB of memory (max 804 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 7 hours ago ·
open run
call639 ms91.8%
TestApproveConference.setUpconfs/tests.py:1371 self.staff = User.objects.create_user("staff", password="pw", is_staff=True)300 ms43.1%
UserManager.create_userdjango/contrib/auth/models.py:180300 ms43.1%
UserManager._create_userdjango/contrib/auth/models.py:167299 ms42.9%
UserManager._create_user_objectdjango/contrib/auth/models.py:160299 ms42.9%
make_passworddjango/contrib/auth/hashers.py:118299 ms42.9%
PBKDF2PasswordHasher.encodedjango/contrib/auth/hashers.py:333299 ms42.9%
pbkdf2django/utils/crypto.py:93299 ms42.9%
1 smaller frames hidden
TestApproveConference.setUpconfs/tests.py:1372 self.normal = User.objects.create_user("bob", password="pw")297 ms42.6%
UserManager.create_userdjango/contrib/auth/models.py:180297 ms42.6%
UserManager._create_userdjango/contrib/auth/models.py:167296 ms42.5%
UserManager._create_user_objectdjango/contrib/auth/models.py:160296 ms42.5%
make_passworddjango/contrib/auth/hashers.py:118296 ms42.5%
PBKDF2PasswordHasher.encodedjango/contrib/auth/hashers.py:333296 ms42.5%
pbkdf2django/utils/crypto.py:93296 ms42.5%
1 smaller frames hidden
TestApproveConference.test_anonymous_sees_pending_banner_without_buttonconfs/tests.py:1412 response = self.client.get(url)40 ms5.7%
Client.getdjango/test/client.py:113340 ms5.7%
RequestFactory.getdjango/test/client.py:47540 ms5.7%
RequestFactory.genericdjango/test/client.py:67140 ms5.7%
Client.requestdjango/test/client.py:109139 ms5.6%
ClientHandler.__call__django/test/client.py:18629 ms4.2%
BaseHandler.get_responsedjango/core/handlers/base.py:14229 ms4.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5629 ms4.2%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12328 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:14528 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
MiddlewareMixin.__call__django/utils/deprecation.py:38028 ms4.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5628 ms4.1%
BaseHandler._get_responsedjango/core/handlers/base.py:19928 ms4.1%
conferenceconfs/views.py:169 return _conference_detail_cached(request, conference_slug)28 ms4.1%
make_middleware_decorator.<locals>._make_decorator.<locals>._decorator.<locals>._view_wrapperdjango/utils/decorators.py:18928 ms4.1%
_conference_detailconfs/views.py:226 counts_dict = {c["created_at_date"].date(): c["count"] for c in counts}17 ms2.4%
QuerySet.__iter__django/db/models/query.py:43917 ms2.4%
QuerySet._fetch_alldjango/db/models/query.py:226217 ms2.4%
ValuesIterable.__iter__django/db/models/query.py:24717 ms2.4%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:157417 ms2.4%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:162517 ms2.4%
CursorWrapper.executedjango/db/backends/utils.py:7917 ms2.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9217 ms2.4%
CursorWrapper._executedjango/db/backends/utils.py:10517 ms2.4%
Cursor.executepsycopg/cursor.py:11317 ms2.4%
Connection.waitpsycopg/connection.py:49517 ms2.4%
_conference_detailconfs/views.py:268 page_obj = paginator.get_page(page_number)6 ms0.9%
Paginator.get_pagedjango/core/paginator.py:1616 ms0.9%
Paginator.validate_numberdjango/core/paginator.py:1536 ms0.9%
cached_property.__get__django/utils/functional.py:476 ms0.9%
Paginator.num_pagesdjango/core/paginator.py:1886 ms0.9%
cached_property.__get__django/utils/functional.py:476 ms0.9%
Paginator.countdjango/core/paginator.py:1826 ms0.9%
QuerySet.countdjango/db/models/query.py:6776 ms0.9%
Query.get_countdjango/db/models/sql/query.py:6576 ms0.9%
Query.get_aggregationdjango/db/models/sql/query.py:6396 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16256 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:796 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:926 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1056 ms0.9%
Cursor.executepsycopg/cursor.py:1136 ms0.9%
Connection.waitpsycopg/connection.py:4956 ms0.9%
3 smaller frames hidden
1 smaller frames hidden
ClientHandler.__call__django/test/client.py:1739 ms1.4%
BaseHandler.load_middlewaredjango/core/handlers/base.py:639 ms1.4%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:1049 ms1.4%
WhiteNoise.add_fileswhitenoise/base.py:1089 ms1.4%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1206 ms0.9%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:1316 ms0.9%
1 smaller frames hidden
1 smaller frames hidden
2 smaller frames hidden
teardown57 ms8.1%
django_db_setuppytest_django/fixtures.py:199 teardown_databases(db_cfg, verbosity=request.config.option.verbose)56 ms8.0%
teardown_databasesdjango/test/utils.py:39456 ms8.0%
BaseDatabaseCreation.destroy_test_dbdjango/db/backends/base/creation.py:33656 ms8.0%
DatabaseCreation._destroy_test_dbdjango/db/backends/postgresql/creation.py:9156 ms8.0%
BaseDatabaseCreation._destroy_test_dbdjango/db/backends/base/creation.py:35247 ms6.8%
CursorWrapper.executedjango/db/backends/utils.py:7947 ms6.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9247 ms6.8%
CursorWrapper._executedjango/db/backends/utils.py:10347 ms6.8%
Cursor.executepsycopg/cursor.py:11347 ms6.8%
Connection.waitpsycopg/connection.py:49547 ms6.8%
BaseDatabaseCreation._destroy_test_dbdjango/db/backends/base/creation.py:3518 ms1.2%
DatabaseWrapper._nodb_cursordjango/db/backends/postgresql/base.py:5208 ms1.2%
BaseDatabaseWrapper._nodb_cursordjango/db/backends/base/base.py:7128 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms1.2%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3208 ms1.2%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2968 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms1.2%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:2798 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms1.2%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2568 ms1.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms1.2%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3458 ms1.2%
Connection.connectpsycopg/connection.py:1097 ms1.0%
wait_connpsycopg/waiting.py:1414 ms0.6%
EpollSelector.select<stdlib>/selectors.py:4524 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
Estimated from 665 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
confs/tests.py:1371
self.staff = User.objects.create_user("staff", password="pw", is_staff=True)
TestApproveConference.setUp
· Password hashing
|
300 ms |
|
confs/tests.py:1372
self.normal = User.objects.create_user("bob", password="pw")
TestApproveConference.setUp
· Password hashing
|
297 ms |
|
confs/views.py:226
counts_dict = {c["created_at_date"].date(): c["count"] for c in counts}
_conference_detail
· Database
|
17 ms |
|
confs/tests.py:1412
response = self.client.get(url)
TestApproveConference.test_anonymous_sees_pending_banner_without_button
· Libraries
|
10 ms |
|
confs/views.py:268
page_obj = paginator.get_page(page_number)
_conference_detail
· Database
|
6 ms |
|
confs/views.py:276
current_account = next((account for account in account_counts if account.account.id == account_id), None)
_conference_detail.<locals>.<genexpr>
· Database
|
2 ms |
|
confs/tests.py:1370
self.conference = baker.make(Conference, approved_at=None, tags="tag1")
TestApproveConference.setUp
· Factories
|
1 ms |
|
confs/views.py:254
.filter(search_query & Q(post__account__instance_model__deleted_at__isnull=True))
_conference_detail
· Database
|
1 ms |
|
confs/views.py:296
return render(
_conference_detail
· Templates
|
1 ms |
|
accounts/templatetags/account_extras.py:36
for instance in instances:
instances_datalist
· Database
|
1 ms |
Fixtures
Exact setup time| _dj_autoclear_mailbox function | 0.04 ms |
| _template_string_if_invalid_marker function | 0.04 ms |
| _django_db_marker function | 0.03 ms |
| _django_isolate_apps function | 0.03 ms |
| _django_set_urlconf function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| _django_clear_site_cache function | 0.02 ms |
| monkeypatch function | 0.02 ms |
Database
15 queries · 65 msNo repeated queries.
Biggest pieces of work
|
call setUp
confs/tests.py:1371
|
598 ms |
|
teardown fixture django_db_setup (session scope)
pytest_django/fixtures.py:199
|
56 ms |
|
call test body
confs/tests.py:1412
|
40 ms |
|
call _post_teardown
django/test/testcases.py:1243
|
1 ms |
| teardown pytest internals | 1 ms |
Reliability
12 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 12 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 7 hours ago | CI github-actions:test | passed | 697 ms | Profile |
| 16 hours ago | CI github-actions:test | passed | 505 ms | Profile |
| 22 hours ago | CI github-actions:test | passed | 701 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 691 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 629 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 1.04 s | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 961 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 850 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 2.06 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 2.18 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 1.28 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 879 ms | Run |