Tests / apps/projects/tests.py
ProjectPagesTest::test_dashboard_without_data_shows_setup
First seen 8 hours ago in 78a4357
CI
github-actions:test
5 runs
Average
60 ms
median 65 ms
max 69 ms
max 69 ms
Phases
Setup 0.72 ms
Call 59 ms
Teardown 0.20 ms
Categories
Database 39 ms
Test code 0.72 ms
Other (Libraries, Templates, Unsampled, pytest) 20 ms
41 database queries per run
Needs 2 KB of memory (max 12 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, an hour ago ·
open run
setup0.82 ms1.2%
CallInfo.from_call_pytest/runner.py:3530.82 ms1.2%
call_and_report.<locals>.<lambda>_pytest/runner.py:2450.82 ms1.2%
HookCaller.__call__pluggy/_hooks.py:5120.82 ms1.2%
PluginManager._hookexecpluggy/_manager.py:1200.82 ms1.2%
_multicallpluggy/_callers.py:1210.82 ms1.2%
pytest_runtest_setup_pytest/runner.py:1650.82 ms1.2%
SetupState.setup_pytest/runner.py:5230.82 ms1.2%
TestCaseFunction.setup_pytest/unittest.py:2270.82 ms1.2%
Function.setup_pytest/python.py:17230.82 ms1.2%
TopRequest._fillfixtures_pytest/fixtures.py:7070.82 ms1.2%
FixtureRequest.getfixturevalue_pytest/fixtures.py:5390.82 ms1.2%
FixtureRequest._get_active_fixturedef_pytest/fixtures.py:6270.82 ms1.2%
FixtureDef.execute_pytest/fixtures.py:10680.82 ms1.2%
FixtureRequest._get_active_fixturedef_pytest/fixtures.py:5580.82 ms1.2%
__init____init__:-10.82 ms1.2%
RequestFixtureDef.__init___pytest/fixtures.py:11330.82 ms1.2%
call67 ms98.5%
CallInfo.from_call_pytest/runner.py:35367 ms98.5%
call_and_report.<locals>.<lambda>_pytest/runner.py:24567 ms98.5%
HookCaller.__call__pluggy/_hooks.py:51267 ms98.5%
PluginManager._hookexecpluggy/_manager.py:12067 ms98.5%
_multicallpluggy/_callers.py:12167 ms98.5%
pytest_runtest_call_pytest/runner.py:17967 ms98.5%
_django_setup_unittest.<locals>.non_debugging_runtestpytest_django/plugin.py:57367 ms98.5%
SimpleTestCase.__call__django/test/testcases.py:31367 ms98.5%
SimpleTestCase._setup_and_calldjango/test/testcases.py:36859 ms85.9%
TestCase.__call__<stdlib>/unittest/case.py:74759 ms85.9%
TestCase.run<stdlib>/unittest/case.py:69147 ms68.2%
TestCase._callTestMethod<stdlib>/unittest/case.py:63747 ms68.2%
ProjectPagesTest.test_dashboard_without_data_shows_setupapps/projects/tests.py:997 response = self.client.get(project.url("project_dashboard"))42 ms60.6%
Client.getdjango/test/client.py:112442 ms60.6%
RequestFactory.getdjango/test/client.py:47542 ms60.6%
RequestFactory.genericdjango/test/client.py:67142 ms60.6%
Client.requestdjango/test/client.py:108242 ms60.6%
ClientHandler.__call__django/test/client.py:17324 ms35.4%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6224 ms35.4%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10424 ms35.4%
WhiteNoise.add_fileswhitenoise/base.py:10824 ms35.4%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12019 ms27.8%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13119 ms27.8%
WhiteNoise.get_static_filewhitenoise/base.py:2089 ms12.6%
StaticFile.__init__whitenoise/responders.py:735 ms7.6%
StaticFile.get_headerswhitenoise/responders.py:1783 ms5.1%
parsedate<stdlib>/email/_parseaddr.py:1852 ms2.5%
StaticFile.get_headerswhitenoise/responders.py:1692 ms2.5%
StaticFile.__init__whitenoise/responders.py:762 ms2.5%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1892 ms2.5%
Headers.__getitem__<stdlib>/wsgiref/headers.py:832 ms2.5%
Headers.get<stdlib>/wsgiref/headers.py:1022 ms2.5%
StaticFile.__init__whitenoise/responders.py:772 ms2.5%
StaticFile.get_alternativeswhitenoise/responders.py:1982 ms2.5%
StaticFile.get_alternatives.<locals>.<lambda>whitenoise/responders.py:1982 ms2.5%
<GC>~2 ms2.5%
WhiteNoise.get_static_filewhitenoise/base.py:2037 ms10.1%
WhiteNoise.add_cache_headerswhitenoise/base.py:2247 ms10.1%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1767 ms10.1%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1977 ms10.1%
URLMixin.urldebug_toolbar/panels/staticfiles.py:205 ms7.6%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2053 ms5.1%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1842 ms2.5%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1862 ms2.5%
WhiteNoise.get_static_filewhitenoise/base.py:2022 ms2.5%
WhiteNoise.add_mime_headerswhitenoise/base.py:2212 ms2.5%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1155 ms7.6%
scantreewhitenoise/base.py:2623 ms5.1%
scantreewhitenoise/base.py:2623 ms5.1%
scantreewhitenoise/base.py:2622 ms2.5%
scantreewhitenoise/base.py:2622 ms2.5%
scantreewhitenoise/base.py:2622 ms2.5%
scantreewhitenoise/base.py:2642 ms2.5%
scantreewhitenoise/base.py:2642 ms2.5%
scantreewhitenoise/base.py:2602 ms2.5%
ClientHandler.__call__django/test/client.py:18617 ms25.3%
BaseHandler.get_responsedjango/core/handlers/base.py:14117 ms25.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5517 ms25.3%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13017 ms25.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5517 ms25.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30917 ms25.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5517 ms25.3%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12317 ms25.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5517 ms25.3%
MiddlewareMixin.__call__django/utils/deprecation.py:30916 ms22.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms22.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30916 ms22.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms22.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30916 ms22.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms22.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30916 ms22.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms22.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30916 ms22.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms22.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30916 ms22.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms22.7%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3416 ms22.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5516 ms22.7%
BaseHandler._get_responsedjango/core/handlers/base.py:19816 ms22.7%
project_dashboardapps/projects/urls.py:1325 ms7.6%
find_projectapps/projects/urls.py:523 ms5.1%
can_viewapps/projects/urls.py:333 ms5.1%
can_manage_projectapps/projects/urls.py:38 if not user.is_authenticated:2 ms2.5%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms2.5%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms2.5%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms2.5%
get_userdjango/contrib/auth/middleware.py:202 ms2.5%
get_userdjango/contrib/auth/__init__.py:3112 ms2.5%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.5%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.5%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.5%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.5%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet.getdjango/db/models/query.py:6352 ms2.5%
QuerySet.__len__django/db/models/query.py:3722 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.5%
ModelIterable.__iter__django/db/models/query.py:952 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.5%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms2.5%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:882 ms2.5%
WhereNode.split_having_qualifydjango/db/models/sql/where.py:472 ms2.5%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms2.5%
QuerySet.existsdjango/db/models/query.py:13372 ms2.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms2.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.5%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms2.5%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms2.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.5%
find_projectapps/projects/urls.py:49 project = get_object_or_404(2 ms2.5%
get_object_or_404django/shortcuts.py:902 ms2.5%
QuerySet.getdjango/db/models/query.py:6352 ms2.5%
QuerySet.__len__django/db/models/query.py:3722 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.5%
ModelIterable.__iter__django/db/models/query.py:952 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
project_dashboardapps/projects/urls.py:1355 ms7.6%
shellapps/projects/urls.py:71 return org_shell(request, project.organization if project else None, section) | {3 ms5.1%
org_shellapps/orgs/views.py:33 organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))2 ms2.5%
QuerySet.__iter__django/db/models/query.py:3902 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.5%
ModelIterable.__iter__django/db/models/query.py:952 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
org_shellapps/orgs/views.py:40 "org_projects": list(organization.project_set.order_by("name")) if member else [],2 ms2.5%
QuerySet.__iter__django/db/models/query.py:3902 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.5%
ModelIterable.__iter__django/db/models/query.py:952 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
shellapps/projects/urls.py:732 ms2.5%
can_manageapps/projects/urls.py:442 ms2.5%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms2.5%
QuerySet.existsdjango/db/models/query.py:13372 ms2.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
project_dashboardapps/projects/urls.py:136 has_profiles = Profile.objects.filter(project=project).exists()2 ms2.5%
QuerySet.existsdjango/db/models/query.py:13372 ms2.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
project_dashboardapps/projects/urls.py:137 if not has_profiles and not Run.objects.filter(project=project).exists():2 ms2.5%
QuerySet.existsdjango/db/models/query.py:13372 ms2.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
project_dashboardapps/projects/urls.py:138 return render(request, "project_setup.html", context)2 ms2.5%
renderdjango/shortcuts.py:252 ms2.5%
render_to_stringdjango/template/loader.py:622 ms2.5%
Template.renderdjango/template/backends/django.py:1072 ms2.5%
Template.renderdjango/template/base.py:1742 ms2.5%
instrumented_test_renderdjango/test/utils.py:1142 ms2.5%
NodeList.renderdjango/template/base.py:10912 ms2.5%
Node.render_annotateddjango/template/base.py:10522 ms2.5%
ExtendsNode.renderdjango/template/loader_tags.py:1602 ms2.5%
instrumented_test_renderdjango/test/utils.py:1142 ms2.5%
NodeList.renderdjango/template/base.py:10912 ms2.5%
Node.render_annotateddjango/template/base.py:10522 ms2.5%
ExtendsNode.renderdjango/template/loader_tags.py:1602 ms2.5%
instrumented_test_renderdjango/test/utils.py:1142 ms2.5%
NodeList.renderdjango/template/base.py:10912 ms2.5%
Node.render_annotateddjango/template/base.py:10522 ms2.5%
BlockNode.renderdjango/template/loader_tags.py:662 ms2.5%
NodeList.renderdjango/template/base.py:10912 ms2.5%
Node.render_annotateddjango/template/base.py:10522 ms2.5%
BlockNode.renderdjango/template/loader_tags.py:662 ms2.5%
NodeList.renderdjango/template/base.py:10912 ms2.5%
Node.render_annotateddjango/template/base.py:10522 ms2.5%
IfNode.renderdjango/template/defaulttags.py:3332 ms2.5%
NodeList.renderdjango/template/base.py:10912 ms2.5%
Node.render_annotateddjango/template/base.py:10522 ms2.5%
WithNode.renderdjango/template/defaulttags.py:5792 ms2.5%
FilterExpression.resolvedjango/template/base.py:7882 ms2.5%
Variable.resolvedjango/template/base.py:9282 ms2.5%
Variable._resolve_lookupdjango/template/base.py:10002 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet.firstdjango/db/models/query.py:11452 ms2.5%
QuerySet.__iter__django/db/models/query.py:3902 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.5%
ModelIterable.__iter__django/db/models/query.py:952 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
MiddlewareMixin.__call__django/utils/deprecation.py:3112 ms2.5%
SessionMiddleware.process_responsedjango/contrib/sessions/middleware.py:592 ms2.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.5%
Model.savedjango/db/models/base.py:8742 ms2.5%
Model.save_basedjango/db/models/base.py:9662 ms2.5%
Model._save_tabledjango/db/models/base.py:11102 ms2.5%
Model._do_updatedjango/db/models/base.py:12112 ms2.5%
QuerySet._updatedjango/db/models/query.py:13272 ms2.5%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.5%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
ProjectPagesTest.test_dashboard_without_data_shows_setupapps/projects/tests.py:995 add_member(project, self.user)3 ms5.1%
add_memberapps/projects/testing.py:76 membership, _ = Membership.objects.get_or_create(3 ms5.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms5.1%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms2.5%
QuerySet.getdjango/db/models/query.py:6352 ms2.5%
QuerySet.__len__django/db/models/query.py:3722 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.5%
ModelIterable.__iter__django/db/models/query.py:952 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
QuerySet.get_or_createdjango/db/models/query.py:9942 ms2.5%
QuerySet.createdjango/db/models/query.py:6692 ms2.5%
Model.savedjango/db/models/base.py:8742 ms2.5%
Model.save_basedjango/db/models/base.py:9662 ms2.5%
Model._save_tabledjango/db/models/base.py:11672 ms2.5%
Model._do_insertdjango/db/models/base.py:12182 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet._insertdjango/db/models/query.py:19182 ms2.5%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
ProjectPagesTest.test_dashboard_without_data_shows_setupapps/projects/tests.py:996 project.secrettokens_set.create(token="other-token")2 ms2.5%
create_reverse_many_to_one_manager.<locals>.RelatedManager.createdjango/db/models/fields/related_descriptors.py:8332 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet.createdjango/db/models/query.py:6692 ms2.5%
Model.savedjango/db/models/base.py:8742 ms2.5%
Model.save_basedjango/db/models/base.py:9662 ms2.5%
Model._save_tabledjango/db/models/base.py:11672 ms2.5%
Model._do_insertdjango/db/models/base.py:12182 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet._insertdjango/db/models/query.py:19182 ms2.5%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
TestCase.run<stdlib>/unittest/case.py:68712 ms17.7%
TestCase._callSetUp<stdlib>/unittest/case.py:63412 ms17.7%
ProjectPagesTest.setUpapps/projects/tests.py:953 self.client.force_login(self.user)12 ms17.7%
ClientMixin.force_logindjango/test/client.py:85512 ms17.7%
ClientMixin._logindjango/test/client.py:8817 ms10.1%
logindjango/contrib/auth/__init__.py:1875 ms7.6%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4343 ms5.1%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms2.5%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms2.5%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms2.5%
QuerySet.existsdjango/db/models/query.py:13372 ms2.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms2.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.5%
Model.savedjango/db/models/base.py:8742 ms2.5%
Model.save_basedjango/db/models/base.py:9662 ms2.5%
Model._save_tabledjango/db/models/base.py:11672 ms2.5%
Model._do_insertdjango/db/models/base.py:12182 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet._insertdjango/db/models/query.py:19182 ms2.5%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms2.5%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet.getdjango/db/models/query.py:6352 ms2.5%
QuerySet.__len__django/db/models/query.py:3722 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.5%
ModelIterable.__iter__django/db/models/query.py:952 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16622 ms2.5%
cursor_iterdjango/db/models/sql/compiler.py:22542 ms2.5%
cursor_iter.<locals>.<lambda>django/db/models/sql/compiler.py:22542 ms2.5%
DatabaseErrorWrapper.__call__.<locals>.innerdjango/db/utils.py:1012 ms2.5%
Cursor.fetchmanypsycopg/cursor.py:2682 ms2.5%
BaseTzLoader.loaddjango/db/backends/postgresql/psycopg_any.py:342 ms2.5%
logindjango/contrib/auth/__init__.py:1972 ms2.5%
Signal.senddjango/dispatch/dispatcher.py:2092 ms2.5%
update_last_logindjango/contrib/auth/models.py:242 ms2.5%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:622 ms2.5%
Model.savedjango/db/models/base.py:8742 ms2.5%
Model.save_basedjango/db/models/base.py:9662 ms2.5%
Model._save_tabledjango/db/models/base.py:11102 ms2.5%
Model._do_updatedjango/db/models/base.py:12112 ms2.5%
QuerySet._updatedjango/db/models/query.py:13272 ms2.5%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.5%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms2.5%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.5%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.5%
ClientMixin._logindjango/test/client.py:8763 ms5.1%
ClientMixin.sessiondjango/test/client.py:8123 ms5.1%
SessionStore.savedjango/contrib/sessions/backends/db.py:1213 ms5.1%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms2.5%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms2.5%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms2.5%
QuerySet.existsdjango/db/models/query.py:13372 ms2.5%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms2.5%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.5%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms2.5%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:882 ms2.5%
WhereNode.split_having_qualifydjango/db/models/sql/where.py:472 ms2.5%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms2.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.5%
Model.savedjango/db/models/base.py:8742 ms2.5%
Model.save_basedjango/db/models/base.py:9662 ms2.5%
Model._save_tabledjango/db/models/base.py:11672 ms2.5%
Model._do_insertdjango/db/models/base.py:12182 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.5%
QuerySet._insertdjango/db/models/query.py:19182 ms2.5%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms2.5%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18692 ms2.5%
ClientMixin._logindjango/test/client.py:8832 ms2.5%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.5%
Model.savedjango/db/models/base.py:8742 ms2.5%
Model.save_basedjango/db/models/base.py:9662 ms2.5%
Model._save_tabledjango/db/models/base.py:11102 ms2.5%
Model._do_updatedjango/db/models/base.py:12112 ms2.5%
QuerySet._updatedjango/db/models/query.py:13272 ms2.5%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms2.5%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms2.5%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms2.5%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms2.5%
SimpleTestCase._setup_and_calldjango/test/testcases.py:3719 ms12.6%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()9 ms12.6%
TestCase._fixture_teardowndjango/test/testcases.py:14955 ms7.6%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4835 ms7.6%
CursorWrapper.executedjango/db/backends/utils.py:795 ms7.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms7.6%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1005 ms7.6%
CursorWrapper._executedjango/db/backends/utils.py:1035 ms7.6%
Cursor.executepsycopg/cursor.py:1135 ms7.6%
Connection.waitpsycopg/connection.py:4955 ms7.6%
TestCase._fixture_teardowndjango/test/testcases.py:14902 ms2.5%
TestCase._databases_support_transactionsdjango/test/testcases.py:14092 ms2.5%
connections_support_transactionsdjango/test/testcases.py:13222 ms2.5%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms2.5%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms2.5%
Atomic.__exit__django/db/transaction.py:2832 ms2.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.5%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms2.5%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.5%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.5%
Cursor.executepsycopg/cursor.py:1132 ms2.5%
Connection.waitpsycopg/connection.py:4952 ms2.5%
Estimated from 40 samples; phase durations are exact. Frames from pytest and pluggy are
shown
.
Hot lines in your code
|
apps/projects/tests.py:997
response = self.client.get(project.url("project_dashboard"))
ProjectPagesTest.test_dashboard_without_data_shows_setup
· Libraries
|
26 ms |
|
apps/projects/tests.py:953
self.client.force_login(self.user)
ProjectPagesTest.setUp
· Database
|
12 ms |
|
apps/projects/testing.py:76
membership, _ = Membership.objects.get_or_create(
add_member
· Database
|
3 ms |
|
apps/projects/urls.py:40
return user.is_superuser or project.organization.membership_set.filter(user=user).exists()
can_manage_project
· Database
|
3 ms |
|
apps/projects/tests.py:996
project.secrettokens_set.create(token="other-token")
ProjectPagesTest.test_dashboard_without_data_shows_setup
· Database
|
2 ms |
|
apps/projects/urls.py:49
project = get_object_or_404(
find_project
· Database
|
2 ms |
|
apps/projects/urls.py:38
if not user.is_authenticated:
can_manage_project
· Database
|
2 ms |
|
apps/orgs/views.py:33
organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))
org_shell
· Database
|
2 ms |
|
apps/orgs/views.py:40
"org_projects": list(organization.project_set.order_by("name")) if member else [],
org_shell
· Database
|
2 ms |
|
apps/projects/urls.py:136
has_profiles = Profile.objects.filter(project=project).exists()
project_dashboard
· Database
|
2 ms |
Fixtures
Exact setup time| _template_string_if_invalid_marker function | 0.06 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_db_marker function | 0.05 ms |
| _django_clear_site_cache function | 0.03 ms |
| _django_set_urlconf function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| monkeypatch function | 0.03 ms |
Database
41 queries · 17 msNo repeated queries.
Biggest pieces of work
|
call test body
apps/projects/tests.py:995
|
47 ms |
|
call setUp
apps/projects/tests.py:953
|
12 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
9 ms |
|
setup __init__
__init__:-1
|
0.82 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 | 69 ms | Profile |
| an hour ago | CI github-actions:test | passed | 64 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 66 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 37 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 65 ms | Profile |