Tests / confs/tests.py
TestConferencesPage::test_conferences_page
First seen 2 years, 1 month ago in 6af392e
CI
github-actions:test
11 runs
Average
190 ms
median 157 ms
max 314 ms
max 314 ms
Phases
Setup 17 ms
Call 170 ms
Teardown 3 ms
Categories
Database 53 ms
App code 0.43 ms
Test code 0.10 ms
Other (Libraries, Templates, Unsampled, pytest, ...) 137 ms
12 database queries per run
Needs 2 MB of memory (max 2 MB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 7 hours ago ·
open run
setup18 ms8.8%
TestCase.setUpClassdjango/test/testcases.py:1426 cls.cls_atomics = cls._enter_atomics()16 ms7.8%
TestCase._enter_atomicsdjango/test/testcases.py:139916 ms7.8%
Atomic.__enter__django/db/transaction.py:21016 ms7.8%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:45416 ms7.8%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30416 ms7.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2616 ms7.8%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27916 ms7.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2616 ms7.8%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:25616 ms7.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2616 ms7.8%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:34516 ms7.8%
Connection.connectpsycopg/connection.py:10916 ms7.8%
wait_connpsycopg/waiting.py:1418 ms3.9%
EpollSelector.select<stdlib>/selectors.py:4528 ms3.9%
wait_connpsycopg/waiting.py:1456 ms2.9%
BaseConnection._connect_genpsycopg/_connection_base.py:4396 ms2.9%
wait_connpsycopg/waiting.py:1362 ms1.0%
BaseConnection._connect_genpsycopg/_connection_base.py:4392 ms1.0%
call184 ms90.5%
TestConferencesPage.test_conferences_pageconfs/tests.py:119 response = self.client.get("/conferences/")179 ms88.2%
Client.getdjango/test/client.py:1133179 ms88.2%
RequestFactory.getdjango/test/client.py:475179 ms88.2%
RequestFactory.genericdjango/test/client.py:671179 ms88.2%
Client.requestdjango/test/client.py:1091179 ms88.2%
ClientHandler.__call__django/test/client.py:186126 ms62.2%
BaseHandler.get_responsedjango/core/handlers/base.py:142126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:123126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:145126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
MiddlewareMixin.__call__django/utils/deprecation.py:380126 ms62.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:56126 ms62.2%
BaseHandler._get_responsedjango/core/handlers/base.py:199126 ms62.2%
conferencesconfs/views.py:128 return render(126 ms62.2%
renderdjango/shortcuts.py:27126 ms62.2%
render_to_stringdjango/template/loader.py:62126 ms62.2%
Template.renderdjango/template/backends/django.py:107126 ms62.2%
Template.renderdjango/template/base.py:175126 ms62.2%
instrumented_test_renderdjango/test/utils.py:113126 ms62.2%
NodeList.renderdjango/template/base.py:1108126 ms62.2%
Node.render_annotateddjango/template/base.py:1069126 ms62.2%
ExtendsNode.renderdjango/template/loader_tags.py:160126 ms62.2%
instrumented_test_renderdjango/test/utils.py:113126 ms62.2%
NodeList.renderdjango/template/base.py:1108126 ms62.2%
Node.render_annotateddjango/template/base.py:1069126 ms62.2%
BlockNode.renderdjango/template/loader_tags.py:6670 ms34.6%
NodeList.renderdjango/template/base.py:110870 ms34.6%
Node.render_annotateddjango/template/base.py:106970 ms34.6%
IfNode.renderdjango/template/defaulttags.py:33243 ms21.3%
QuerySet.__bool__django/db/models/query.py:45343 ms21.3%
QuerySet._fetch_alldjango/db/models/query.py:226224 ms11.8%
ModelIterable.__iter__django/db/models/query.py:10324 ms11.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:162521 ms10.2%
CursorWrapper.executedjango/db/backends/utils.py:7921 ms10.2%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9221 ms10.2%
CursorWrapper._executedjango/db/backends/utils.py:10519 ms9.4%
Cursor.executepsycopg/cursor.py:11319 ms9.4%
Connection.waitpsycopg/connection.py:49519 ms9.4%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16123 ms1.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7682 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:892 ms0.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:782 ms0.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3192 ms0.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5792 ms0.8%
Col.as_sqldjango/db/models/expressions.py:13692 ms0.8%
SQLCompiler.quote_namedjango/db/models/sql/compiler.py:5582 ms0.8%
DatabaseOperations.quote_namedjango/db/backends/postgresql/operations.py:1922 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7962 ms0.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5792 ms0.8%
WhereNode.as_sqldjango/db/models/sql/where.py:1512 ms0.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5792 ms0.8%
IsNull.as_sqldjango/db/models/lookups.py:6812 ms0.8%
BuiltinLookup.process_lhsdjango/db/models/lookups.py:2352 ms0.8%
Lookup.process_lhsdjango/db/models/lookups.py:1102 ms0.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5792 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:226419 ms9.4%
QuerySet._prefetch_related_objectsdjango/db/models/query.py:149019 ms9.4%
prefetch_related_objectsdjango/db/models/query.py:272419 ms9.4%
prefetch_one_leveldjango/db/models/query.py:289916 ms7.9%
QuerySet.__iter__django/db/models/query.py:43916 ms7.9%
QuerySet._fetch_alldjango/db/models/query.py:226216 ms7.9%
ModelIterable.__iter__django/db/models/query.py:10316 ms7.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16238 ms3.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms3.9%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3208 ms3.9%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2988 ms3.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms3.9%
DatabaseWrapper.create_cursordjango/db/backends/postgresql/base.py:4428 ms3.9%
Connection.cursorpsycopg/connection.py:2598 ms3.9%
Cursor.__init__psycopg/cursor.py:478 ms3.9%
BaseCursor.__init__psycopg/_cursor_base.py:738 ms3.9%
<GC>~8 ms3.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16258 ms3.9%
CursorWrapper.executedjango/db/backends/utils.py:798 ms3.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:928 ms3.9%
CursorWrapper._executedjango/db/backends/utils.py:1058 ms3.9%
Cursor.executepsycopg/cursor.py:1138 ms3.9%
Connection.waitpsycopg/connection.py:4958 ms3.9%
prefetch_one_leveldjango/db/models/query.py:28802 ms0.8%
create_reverse_many_to_one_manager.<locals>.RelatedManager.get_prefetch_querysetsdjango/db/models/fields/related_descriptors.py:8382 ms0.8%
QuerySet.__iter__django/db/models/query.py:4392 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:22622 ms0.8%
ModelIterable.__iter__django/db/models/query.py:1032 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
prefetch_one_leveldjango/db/models/query.py:29502 ms0.8%
create_reverse_many_to_one_manager.<locals>.RelatedManager.get_querysetdjango/db/models/fields/related_descriptors.py:8102 ms0.8%
create_reverse_many_to_one_manager.<locals>.RelatedManager._apply_rel_filtersdjango/db/models/fields/related_descriptors.py:7822 ms0.8%
IfNode.renderdjango/template/defaulttags.py:33321 ms10.2%
NodeList.renderdjango/template/base.py:110821 ms10.2%
Node.render_annotateddjango/template/base.py:106921 ms10.2%
WithNode.renderdjango/template/defaulttags.py:58121 ms10.2%
NodeList.renderdjango/template/base.py:110821 ms10.2%
Node.render_annotateddjango/template/base.py:106921 ms10.2%
IncludeNode.renderdjango/template/loader_tags.py:21121 ms10.2%
Template.renderdjango/template/base.py:17721 ms10.2%
instrumented_test_renderdjango/test/utils.py:11321 ms10.2%
NodeList.renderdjango/template/base.py:110821 ms10.2%
Node.render_annotateddjango/template/base.py:106921 ms10.2%
ForNode.renderdjango/template/defaulttags.py:24921 ms10.2%
Node.render_annotateddjango/template/base.py:106921 ms10.2%
SimpleNode.renderdjango/template/library.py:34319 ms9.4%
heroicon_outlineheroicons/templatetags/heroicons.py:2319 ms9.4%
_render_iconheroicons/templatetags/heroicons.py:4119 ms9.4%
_render_iconheroicons/__init__.py:4719 ms9.4%
_load_iconheroicons/__init__.py:1819 ms9.4%
ZipFile.__init__<stdlib>/zipfile/__init__.py:150519 ms9.4%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16146 ms3.1%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16236 ms3.1%
ZipInfo._decodeExtra<stdlib>/zipfile/__init__.py:5835 ms2.4%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16063 ms1.6%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16082 ms0.8%
__init____init__:-12 ms0.8%
ZipFile._RealGetContents<stdlib>/zipfile/__init__.py:16262 ms0.8%
VariableNode.renderdjango/template/base.py:11672 ms0.8%
FilterExpression.resolvedjango/template/base.py:8332 ms0.8%
datedjango/template/defaultfilters.py:7902 ms0.8%
date_formatdjango/utils/formats.py:1552 ms0.8%
formatdjango/utils/dateformat.py:3262 ms0.8%
SysMonitor.sysmon_py_startcoverage/sysmon.py:345 disp = self.should_trace(filename, frame) # type: ignore[arg-type]2 ms0.8%
Coverage._should_tracecoverage/control.py:4522 ms0.8%
InOrOut.should_tracecoverage/inorout.py:4012 ms0.8%
canonical_filenamecoverage/files.py:852 ms0.8%
abs_filecoverage/files.py:1582 ms0.8%
realpath<frozen posixpath>:4602 ms0.8%
SimpleNode.renderdjango/template/library.py:3435 ms2.4%
heroicon_outlineheroicons/templatetags/heroicons.py:235 ms2.4%
_render_iconheroicons/templatetags/heroicons.py:415 ms2.4%
_render_iconheroicons/__init__.py:655 ms2.4%
tostring<stdlib>/xml/etree/ElementTree.py:11065 ms2.4%
ElementTree.write<stdlib>/xml/etree/ElementTree.py:7455 ms2.4%
_serialize_xml<stdlib>/xml/etree/ElementTree.py:9025 ms2.4%
ForNode.renderdjango/template/defaulttags.py:2492 ms0.8%
Node.render_annotateddjango/template/base.py:10692 ms0.8%
URLNode.renderdjango/template/defaulttags.py:5112 ms0.8%
reversedjango/urls/base.py:982 ms0.8%
URLNode.renderdjango/template/defaulttags.py:51154 ms26.8%
reversedjango/urls/base.py:9854 ms26.8%
URLResolver._reverse_with_prefixdjango/urls/resolvers.py:76254 ms26.8%
URLResolver.reverse_dictdjango/urls/resolvers.py:63154 ms26.8%
get_languagedjango/utils/translation/__init__.py:21154 ms26.8%
get_languagedjango/utils/translation/trans_real.py:33254 ms26.8%
IfNode.renderdjango/template/defaulttags.py:3332 ms0.8%
NodeList.renderdjango/template/base.py:11082 ms0.8%
Node.render_annotateddjango/template/base.py:10692 ms0.8%
TranslateNode.renderdjango/templatetags/i18n.py:912 ms0.8%
ClientHandler.__call__django/test/client.py:17353 ms26.0%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6353 ms26.0%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10453 ms26.0%
WhiteNoise.add_fileswhitenoise/base.py:10853 ms26.0%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12043 ms21.3%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13143 ms21.3%
WhiteNoise.get_static_filewhitenoise/base.py:21724 ms11.8%
StaticFile.__init__whitenoise/responders.py:7310 ms4.7%
StaticFile.get_headerswhitenoise/responders.py:1786 ms3.1%
parsedate<stdlib>/email/_parseaddr.py:1853 ms1.6%
parsedate_tz<stdlib>/email/_parseaddr.py:503 ms1.6%
_parsedate_tz<stdlib>/email/_parseaddr.py:573 ms1.6%
<GC>~2 ms0.8%
parsedate<stdlib>/email/_parseaddr.py:1852 ms0.8%
parsedate_tz<stdlib>/email/_parseaddr.py:502 ms0.8%
_parsedate_tz<stdlib>/email/_parseaddr.py:1612 ms0.8%
StaticFile.get_headerswhitenoise/responders.py:1672 ms0.8%
StaticFile.__init__whitenoise/responders.py:776 ms3.1%
StaticFile.get_alternativeswhitenoise/responders.py:2016 ms3.1%
Headers.__setitem__<stdlib>/wsgiref/headers.py:625 ms2.4%
Headers.__delitem__<stdlib>/wsgiref/headers.py:713 ms1.6%
Headers._convert_string_type<stdlib>/wsgiref/headers.py:503 ms1.6%
Headers.__delitem__<stdlib>/wsgiref/headers.py:722 ms0.8%
StaticFile.__init__whitenoise/responders.py:723 ms1.6%
StaticFile.get_file_statswhitenoise/responders.py:1632 ms0.8%
StaticFile.__init__whitenoise/responders.py:742 ms0.8%
parsedate<stdlib>/email/_parseaddr.py:1852 ms0.8%
WhiteNoise.get_static_filewhitenoise/base.py:21214 ms7.1%
WhiteNoise.add_cache_headerswhitenoise/base.py:23314 ms7.1%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:17613 ms6.3%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:19711 ms5.5%
URLMixin.urldebug_toolbar/panels/staticfiles.py:2010 ms4.7%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2356 ms3.1%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:2126 ms3.1%
WhiteNoise.get_static_filewhitenoise/base.py:2113 ms1.6%
WhiteNoise.get_static_filewhitenoise/base.py:2192 ms0.8%
Headers.items<stdlib>/wsgiref/headers.py:1392 ms0.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:11510 ms4.7%
scantreewhitenoise/base.py:2718 ms3.9%
scantreewhitenoise/base.py:2716 ms3.1%
scantreewhitenoise/base.py:2735 ms2.4%
scantreewhitenoise/base.py:2712 ms0.8%
scantreewhitenoise/base.py:2712 ms0.8%
scantreewhitenoise/base.py:2712 ms0.8%
scantreewhitenoise/base.py:2732 ms0.8%
scantreewhitenoise/base.py:2732 ms0.8%
scantreewhitenoise/base.py:2732 ms0.8%
TransactionTestCase._pre_setupdjango/test/testcases.py:1167 cls._fixture_setup()5 ms2.4%
TestCase._fixture_setupdjango/test/testcases.py:14815 ms2.4%
TestCase._enter_atomicsdjango/test/testcases.py:13995 ms2.4%
Atomic.__enter__django/db/transaction.py:2235 ms2.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:265 ms2.4%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4005 ms2.4%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3675 ms2.4%
CursorWrapper.executedjango/db/backends/utils.py:795 ms2.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms2.4%
CursorWrapper._executedjango/db/backends/utils.py:1035 ms2.4%
Cursor.executepsycopg/cursor.py:1135 ms2.4%
Connection.waitpsycopg/connection.py:4955 ms2.4%
BaseCursor._execute_genpsycopg/_cursor_base.py:2045 ms2.4%
BaseCursor._start_querypsycopg/_cursor_base.py:3875 ms2.4%
BaseConnection._start_querypsycopg/_connection_base.py:5535 ms2.4%
BaseConnection._exec_commandpsycopg/_connection_base.py:4745 ms2.4%
Estimated from 133 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
confs/views.py:128
return render(
conferences
· Templates
|
126 ms |
|
confs/tests.py:119
response = self.client.get("/conferences/")
TestConferencesPage.test_conferences_page
· Libraries
|
53 ms |
Fixtures
Exact setup time| _unittest_setUpClass_fixture_TestConferencesPage class | 16 ms |
| _django_setup_unittest class | 0.61 ms |
| _template_string_if_invalid_marker function | 0.09 ms |
| _django_db_marker function | 0.05 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_isolate_apps function | 0.04 ms |
| _live_server_helper function | 0.04 ms |
| _django_set_urlconf function | 0.04 ms |
| _django_clear_site_cache function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
12 queries · 37 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
3×
SELECT "confs_conference"."id", "confs_conference"."name", "confs_conference"."slug", "confs_conference"."location", "confs_conference"."start_date", "confs_conference"."end_date", "confs_conference"."time_zone", "confs_conference"."archived_date", "confs_conference"."approved_at", "confs_conferenc…
Biggest pieces of work
|
call test body
confs/tests.py:119
|
179 ms |
|
setup setUpClass
django/test/testcases.py:1426
|
16 ms |
|
call _pre_setup
django/test/testcases.py:1167
|
5 ms |
| setup pytest internals | 2 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 | 203 ms | Profile |
| 16 hours ago | CI github-actions:test | passed | 123 ms | Profile |
| 22 hours ago | CI github-actions:test | passed | 268 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 141 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 146 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 152 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 219 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 111 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 157 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 314 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 261 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 194 ms | Run |