Tests / apps/projects/tests.py
ProjectPagesTest::test_private_dashboard_requires_login
First seen 8 hours ago in 78a4357
CI
github-actions:test
5 runs
Average
49 ms
median 54 ms
max 58 ms
max 58 ms
Phases
Setup 0.71 ms
Call 48 ms
Teardown 0.16 ms
Categories
Database 19 ms
Other (Libraries, Unsampled) 31 ms
26 database queries per run
Needs 0 KB of memory (max 0 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, an hour ago ·
open run
call57 ms98.3%
ProjectPagesTest.test_private_dashboard_requires_loginapps/projects/tests.py:983 response = self.client.get(url)31 ms52.9%
Client.getdjango/test/client.py:112431 ms52.9%
RequestFactory.getdjango/test/client.py:47531 ms52.9%
RequestFactory.genericdjango/test/client.py:67131 ms52.9%
Client.requestdjango/test/client.py:108231 ms52.9%
ClientHandler.__call__django/test/client.py:17326 ms45.4%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6226 ms45.4%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10426 ms45.4%
WhiteNoise.add_fileswhitenoise/base.py:10826 ms45.4%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12022 ms37.8%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13122 ms37.8%
WhiteNoise.get_static_filewhitenoise/base.py:20820 ms34.0%
StaticFile.__init__whitenoise/responders.py:7215 ms26.5%
StaticFile.get_file_statswhitenoise/responders.py:16115 ms26.5%
__init____init__:-115 ms26.5%
FileEntry.__init__whitenoise/responders.py:26015 ms26.5%
<GC>~15 ms26.5%
StaticFile.__init__whitenoise/responders.py:734 ms7.6%
StaticFile.get_headerswhitenoise/responders.py:1762 ms3.8%
formatdate<stdlib>/email/utils.py:2662 ms3.8%
StaticFile.get_headerswhitenoise/responders.py:1672 ms3.8%
WhiteNoise.get_static_filewhitenoise/base.py:2032 ms3.8%
WhiteNoise.add_cache_headerswhitenoise/base.py:2242 ms3.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1154 ms7.6%
scantreewhitenoise/base.py:2624 ms7.6%
scantreewhitenoise/base.py:2624 ms7.6%
scantreewhitenoise/base.py:2602 ms3.8%
scantreewhitenoise/base.py:2622 ms3.8%
scantreewhitenoise/base.py:2622 ms3.8%
scantreewhitenoise/base.py:2622 ms3.8%
scantreewhitenoise/base.py:2642 ms3.8%
ClientHandler.__call__django/test/client.py:1864 ms7.6%
BaseHandler.get_responsedjango/core/handlers/base.py:1414 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1304 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1234 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3094 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:344 ms7.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:554 ms7.6%
BaseHandler._get_responsedjango/core/handlers/base.py:1984 ms7.6%
project_dashboardapps/projects/urls.py:1324 ms7.6%
find_projectapps/projects/urls.py:49 project = get_object_or_404(4 ms7.6%
get_object_or_404django/shortcuts.py:904 ms7.6%
QuerySet.getdjango/db/models/query.py:6354 ms7.6%
QuerySet.__len__django/db/models/query.py:3724 ms7.6%
QuerySet._fetch_alldjango/db/models/query.py:20004 ms7.6%
ModelIterable.__iter__django/db/models/query.py:954 ms7.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms3.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7922 ms3.8%
SQLCompiler.get_from_clausedjango/db/models/sql/compiler.py:11592 ms3.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms3.8%
Join.as_sqldjango/db/models/sql/datastructures.py:882 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16622 ms3.8%
cursor_iterdjango/db/models/sql/compiler.py:22542 ms3.8%
cursor_iter.<locals>.<lambda>django/db/models/sql/compiler.py:22542 ms3.8%
DatabaseErrorWrapper.__call__.<locals>.innerdjango/db/utils.py:1012 ms3.8%
ProjectPagesTest.setUpapps/projects/tests.py:953 self.client.force_login(self.user)11 ms18.9%
ClientMixin.force_logindjango/test/client.py:85511 ms18.9%
ClientMixin._logindjango/test/client.py:8819 ms15.1%
logindjango/contrib/auth/__init__.py:1874 ms7.6%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4342 ms3.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms3.8%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms3.8%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms3.8%
QuerySet.existsdjango/db/models/query.py:13372 ms3.8%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms3.8%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms3.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms3.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms3.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms3.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms3.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms3.8%
Value.as_sqldjango/db/models/expressions.py:11702 ms3.8%
BaseExpression._output_field_or_nonedjango/db/models/expressions.py:3422 ms3.8%
cached_property.__get__django/utils/functional.py:472 ms3.8%
BaseExpression.output_fielddjango/db/models/expressions.py:3282 ms3.8%
Value._resolve_output_fielddjango/db/models/expressions.py:12012 ms3.8%
Field.__init__django/db/models/fields/__init__.py:2132 ms3.8%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms3.8%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.getdjango/db/models/query.py:6352 ms3.8%
QuerySet.__len__django/db/models/query.py:3722 ms3.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms3.8%
ModelIterable.__iter__django/db/models/query.py:952 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
logindjango/contrib/auth/__init__.py:1752 ms3.8%
SessionBase.__contains__django/contrib/sessions/backends/base.py:522 ms3.8%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms3.8%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms3.8%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.getdjango/db/models/query.py:6252 ms3.8%
QuerySet.filterdjango/db/models/query.py:15422 ms3.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms3.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms3.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms3.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms3.8%
Query.build_filterdjango/db/models/sql/query.py:15772 ms3.8%
Query.setup_joinsdjango/db/models/sql/query.py:19112 ms3.8%
logindjango/contrib/auth/__init__.py:1972 ms3.8%
Signal.senddjango/dispatch/dispatcher.py:2092 ms3.8%
update_last_logindjango/contrib/auth/models.py:242 ms3.8%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:622 ms3.8%
Model.savedjango/db/models/base.py:8742 ms3.8%
Model.save_basedjango/db/models/base.py:9662 ms3.8%
Model._save_tabledjango/db/models/base.py:10862 ms3.8%
ClientMixin._logindjango/test/client.py:8762 ms3.8%
ClientMixin.sessiondjango/test/client.py:8122 ms3.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1212 ms3.8%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms3.8%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms3.8%
Atomic.__enter__django/db/transaction.py:2112 ms3.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms3.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms3.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()9 ms15.1%
TestCase._fixture_teardowndjango/test/testcases.py:14957 ms11.3%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4837 ms11.3%
CursorWrapper.executedjango/db/backends/utils.py:797 ms11.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:927 ms11.3%
CursorWrapper._executedjango/db/backends/utils.py:1037 ms11.3%
Cursor.executepsycopg/cursor.py:1137 ms11.3%
Connection.waitpsycopg/connection.py:4957 ms11.3%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms3.8%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms3.8%
Atomic.__exit__django/db/transaction.py:2862 ms3.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms3.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms3.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms3.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms3.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms3.8%
ProjectPagesTest.test_private_dashboard_requires_loginapps/projects/tests.py:981 self.client.logout()7 ms11.3%
ClientMixin.logoutdjango/test/client.py:9234 ms7.6%
get_userdjango/contrib/auth/__init__.py:3112 ms3.8%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms3.8%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms3.8%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms3.8%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms3.8%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.getdjango/db/models/query.py:6352 ms3.8%
QuerySet.__len__django/db/models/query.py:3722 ms3.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms3.8%
ModelIterable.__iter__django/db/models/query.py:952 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms3.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms3.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms3.8%
get_userdjango/contrib/auth/__init__.py:3182 ms3.8%
ModelBackend.get_userdjango/contrib/auth/backends.py:2322 ms3.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms3.8%
QuerySet.getdjango/db/models/query.py:6352 ms3.8%
QuerySet.__len__django/db/models/query.py:3722 ms3.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms3.8%
ModelIterable.__iter__django/db/models/query.py:952 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
ClientMixin.logoutdjango/test/client.py:9272 ms3.8%
logoutdjango/contrib/auth/__init__.py:2582 ms3.8%
SessionBase.flushdjango/contrib/sessions/backends/base.py:4202 ms3.8%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms3.8%
Model.deletedjango/db/models/base.py:12982 ms3.8%
Collector.deletedjango/db/models/deletion.py:4522 ms3.8%
DeleteQuery.delete_batchdjango/db/models/sql/subqueries.py:432 ms3.8%
DeleteQuery.do_querydjango/db/models/sql/subqueries.py:252 ms3.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms3.8%
Cursor.executepsycopg/cursor.py:1132 ms3.8%
Connection.waitpsycopg/connection.py:4952 ms3.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms3.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms3.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms3.8%
Estimated from 26 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/projects/tests.py:983
response = self.client.get(url)
ProjectPagesTest.test_private_dashboard_requires_login
· Libraries
|
26 ms |
|
apps/projects/tests.py:953
self.client.force_login(self.user)
ProjectPagesTest.setUp
· Database
|
11 ms |
|
apps/projects/tests.py:981
self.client.logout()
ProjectPagesTest.test_private_dashboard_requires_login
· Database
|
7 ms |
|
apps/projects/urls.py:49
project = get_object_or_404(
find_project
· Database
|
4 ms |
Fixtures
Exact setup time| _django_db_marker function | 0.06 ms |
| _dj_autoclear_mailbox function | 0.06 ms |
| _django_set_urlconf function | 0.05 ms |
| _template_string_if_invalid_marker function | 0.04 ms |
| _django_clear_site_cache function | 0.04 ms |
| _live_server_helper function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
26 queries · 10 msNo repeated queries.
Biggest pieces of work
|
call test body
apps/projects/tests.py:983
|
37 ms |
|
call setUp
apps/projects/tests.py:953
|
11 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
9 ms |
Reliability
5 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 5 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| an hour ago | CI github-actions:test | passed | 58 ms | Profile |
| an hour ago | CI github-actions:test | passed | 55 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 54 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 32 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 47 ms | Profile |