Tests / apps/projects/tests.py
ProjectPagesTest::test_mute_and_unmute
First seen 3 weeks ago in 78a4357
CI
github-actions:test
12 runs
Average
98 ms
median 105 ms
max 131 ms
max 131 ms
Phases
Setup 0.66 ms
Call 98 ms
Teardown 0.18 ms
Categories
Database 56 ms
App code 2 ms
Test code 0.34 ms
Other (Libraries, Templates, pytest, Unsampled, ...) 41 ms
62 database queries per run
Needs 182 KB of memory (max 608 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 16 hours ago ·
open run
call102 ms99.3%
ProjectPagesTest.test_mute_and_unmuteapps/projects/tests.py:112246 ms44.3%
Client.getdjango/test/client.py:112446 ms44.3%
RequestFactory.getdjango/test/client.py:47546 ms44.3%
RequestFactory.genericdjango/test/client.py:67146 ms44.3%
Client.requestdjango/test/client.py:108243 ms42.2%
ClientHandler.__call__django/test/client.py:18643 ms42.2%
BaseHandler.get_responsedjango/core/handlers/base.py:14143 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13043 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
MiddlewareMixin.__call__django/utils/deprecation.py:30943 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12343 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
MiddlewareMixin.__call__django/utils/deprecation.py:30943 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
MiddlewareMixin.__call__django/utils/deprecation.py:30943 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
MiddlewareMixin.__call__django/utils/deprecation.py:30943 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
MiddlewareMixin.__call__django/utils/deprecation.py:30943 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
MiddlewareMixin.__call__django/utils/deprecation.py:30943 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
MiddlewareMixin.__call__django/utils/deprecation.py:30943 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3443 ms42.2%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5543 ms42.2%
BaseHandler._get_responsedjango/core/handlers/base.py:19843 ms42.2%
project_testapps/projects/urls.py:31113 ms12.7%
history_for_testapps/projects/analytics.py:806 for perf in TestPerf.objects.filter(test=test)7 ms6.3%
QuerySet.__iter__django/db/models/query.py:3907 ms6.3%
QuerySet._fetch_alldjango/db/models/query.py:20007 ms6.3%
ModelIterable.__iter__django/db/models/query.py:957 ms6.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms2.1%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:872 ms2.1%
SQLCompiler.get_order_bydjango/db/models/sql/compiler.py:4912 ms2.1%
SQLCompiler._order_by_pairsdjango/db/models/sql/compiler.py:3622 ms2.1%
Expression.__hash__django/db/models/expressions.py:5622 ms2.1%
cached_property.__get__django/utils/functional.py:472 ms2.1%
Expression.identitydjango/db/models/expressions.py:5442 ms2.1%
BoundArguments.apply_defaults<stdlib>/inspect.py:29262 ms2.1%
<GC>~2 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16622 ms2.1%
cursor_iterdjango/db/models/sql/compiler.py:22542 ms2.1%
cursor_iter.<locals>.<lambda>django/db/models/sql/compiler.py:22542 ms2.1%
DatabaseErrorWrapper.__call__.<locals>.innerdjango/db/utils.py:1012 ms2.1%
Cursor.fetchmanypsycopg/cursor.py:2682 ms2.1%
BaseTzLoader.loaddjango/db/backends/postgresql/psycopg_any.py:342 ms2.1%
TimestamptzLoader.loadpsycopg/types/datetime.py:4942 ms2.1%
TimestamptzLoader._load_isopsycopg/types/datetime.py:4962 ms2.1%
history_for_testapps/projects/analytics.py:819 TestRun.objects.filter(test=test)4 ms4.2%
QuerySet.__iter__django/db/models/query.py:3904 ms4.2%
QuerySet._fetch_alldjango/db/models/query.py:20004 ms4.2%
ModelIterable.__iter__django/db/models/query.py:952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
ModelIterable.__iter__django/db/models/query.py:1272 ms2.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15772 ms2.1%
SQLCompiler.get_convertersdjango/db/models/sql/compiler.py:15262 ms2.1%
Col.get_db_convertersdjango/db/models/expressions.py:13402 ms2.1%
history_for_testapps/projects/analytics.py:820 .exclude(session__profile__testperf__test=test)2 ms2.1%
QuerySet.excludedjango/db/models/query.py:15502 ms2.1%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms2.1%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15682 ms2.1%
Query.add_qdjango/db/models/sql/query.py:16712 ms2.1%
Query._add_qdjango/db/models/sql/query.py:17032 ms2.1%
Query.build_filterdjango/db/models/sql/query.py:15942 ms2.1%
Query.split_excludedjango/db/models/sql/query.py:21502 ms2.1%
Query.build_filterdjango/db/models/sql/query.py:15422 ms2.1%
Subquery.resolve_expressiondjango/db/models/expressions.py:17982 ms2.1%
BaseExpression.resolve_expressiondjango/db/models/expressions.py:3012 ms2.1%
Query.resolve_expressiondjango/db/models/sql/query.py:12642 ms2.1%
Query.bump_prefixdjango/db/models/sql/query.py:10992 ms2.1%
Query.change_aliasesdjango/db/models/sql/query.py:10252 ms2.1%
project_testapps/projects/urls.py:286 context = shell(request, project, "tests") | filters(request, project, default_days=90)9 ms8.4%
shellapps/projects/urls.py:71 return org_shell(request, project.organization if project else None, section) | {7 ms6.3%
org_shellapps/orgs/views.py:33 organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))7 ms6.3%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2514 ms4.2%
SimpleLazyObject._setupdjango/utils/functional.py:4044 ms4.2%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:404 ms4.2%
get_userdjango/contrib/auth/middleware.py:204 ms4.2%
get_userdjango/contrib/auth/__init__.py:3112 ms2.1%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.1%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.1%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.1%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.1%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.1%
QuerySet.getdjango/db/models/query.py:6252 ms2.1%
QuerySet.filterdjango/db/models/query.py:15422 ms2.1%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms2.1%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms2.1%
Query.add_qdjango/db/models/sql/query.py:16712 ms2.1%
Query._add_qdjango/db/models/sql/query.py:17032 ms2.1%
Query.build_filterdjango/db/models/sql/query.py:16112 ms2.1%
Query._get_coldjango/db/models/sql/query.py:4512 ms2.1%
get_userdjango/contrib/auth/__init__.py:3182 ms2.1%
ModelBackend.get_userdjango/contrib/auth/backends.py:2322 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.1%
QuerySet.getdjango/db/models/query.py:6352 ms2.1%
QuerySet.__len__django/db/models/query.py:3722 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ModelIterable.__iter__django/db/models/query.py:952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
QuerySet.__iter__django/db/models/query.py:3902 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ModelIterable.__iter__django/db/models/query.py:952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
shellapps/projects/urls.py:732 ms2.1%
can_manageapps/projects/urls.py:442 ms2.1%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.1%
create_reverse_many_to_one_manager.<locals>.RelatedManager.get_querysetdjango/db/models/fields/related_descriptors.py:7582 ms2.1%
create_reverse_many_to_one_manager.<locals>.RelatedManager._apply_rel_filtersdjango/db/models/fields/related_descriptors.py:7002 ms2.1%
project_testapps/projects/urls.py:3127 ms6.3%
flakiness_for_testapps/projects/flakiness.py:326 history = observations_for(test.project, [test.id], since).get(test.id, [])7 ms6.3%
observations_forapps/projects/flakiness.py:169 for row in Session.objects.filter(id__in={row[4] for row in test_runs}).values_list(2 ms2.1%
QuerySet.__iter__django/db/models/query.py:3902 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms2.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
observations_forapps/projects/flakiness.py:186 perfs = list(perfs)2 ms2.1%
QuerySet.__iter__django/db/models/query.py:3902 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms2.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
observations_forapps/projects/flakiness.py:189 for row in Profile.objects.filter(id__in={row[3] for row in perfs}).values_list(2 ms2.1%
QuerySet.__iter__django/db/models/query.py:3902 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms2.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
project_testapps/projects/urls.py:342 return render(request, "project_test.html", context)7 ms6.3%
renderdjango/shortcuts.py:257 ms6.3%
render_to_stringdjango/template/loader.py:627 ms6.3%
Template.renderdjango/template/backends/django.py:1077 ms6.3%
Template.renderdjango/template/base.py:1747 ms6.3%
instrumented_test_renderdjango/test/utils.py:1147 ms6.3%
NodeList.renderdjango/template/base.py:10917 ms6.3%
Node.render_annotateddjango/template/base.py:10527 ms6.3%
ExtendsNode.renderdjango/template/loader_tags.py:1607 ms6.3%
instrumented_test_renderdjango/test/utils.py:1147 ms6.3%
NodeList.renderdjango/template/base.py:10917 ms6.3%
Node.render_annotateddjango/template/base.py:10527 ms6.3%
ExtendsNode.renderdjango/template/loader_tags.py:1607 ms6.3%
instrumented_test_renderdjango/test/utils.py:1147 ms6.3%
NodeList.renderdjango/template/base.py:10917 ms6.3%
Node.render_annotateddjango/template/base.py:10527 ms6.3%
BlockNode.renderdjango/template/loader_tags.py:667 ms6.3%
NodeList.renderdjango/template/base.py:10917 ms6.3%
Node.render_annotateddjango/template/base.py:10527 ms6.3%
BlockNode.renderdjango/template/loader_tags.py:664 ms4.2%
NodeList.renderdjango/template/base.py:10914 ms4.2%
Node.render_annotateddjango/template/base.py:10524 ms4.2%
IfNode.renderdjango/template/defaulttags.py:3262 ms2.1%
TemplateLiteral.evaldjango/template/defaulttags.py:9182 ms2.1%
FilterExpression.resolvedjango/template/base.py:7882 ms2.1%
Variable.resolvedjango/template/base.py:9282 ms2.1%
Variable._resolve_lookupdjango/template/base.py:9762 ms2.1%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms2.1%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms2.1%
QuerySet.getdjango/db/models/query.py:6352 ms2.1%
QuerySet.__len__django/db/models/query.py:3722 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ModelIterable.__iter__django/db/models/query.py:952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms2.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:9812 ms2.1%
IfNode.renderdjango/template/defaulttags.py:3332 ms2.1%
NodeList.renderdjango/template/base.py:10912 ms2.1%
Node.render_annotateddjango/template/base.py:10522 ms2.1%
ForNode.renderdjango/template/defaulttags.py:2492 ms2.1%
Node.render_annotateddjango/template/base.py:10522 ms2.1%
VariableNode.renderdjango/template/base.py:11562 ms2.1%
IfNode.renderdjango/template/defaulttags.py:3332 ms2.1%
NodeList.renderdjango/template/base.py:10912 ms2.1%
Node.render_annotateddjango/template/base.py:10522 ms2.1%
SimpleNode.renderdjango/template/library.py:3252 ms2.1%
heroicon_miniheroicons/templatetags/heroicons.py:182 ms2.1%
_render_iconheroicons/templatetags/heroicons.py:392 ms2.1%
_render_iconheroicons/__init__.py:632 ms2.1%
tostring<stdlib>/xml/etree/ElementTree.py:11062 ms2.1%
ElementTree.write<stdlib>/xml/etree/ElementTree.py:7452 ms2.1%
_serialize_xml<stdlib>/xml/etree/ElementTree.py:9082 ms2.1%
project_testapps/projects/urls.py:2954 ms4.2%
latest_perfapps/projects/analytics.py:843 perfs = TestPerf.objects.filter(test=test).exclude(outcome="skipped")2 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.1%
QuerySet.filterdjango/db/models/query.py:15422 ms2.1%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms2.1%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms2.1%
Query.add_qdjango/db/models/sql/query.py:16712 ms2.1%
Query._add_qdjango/db/models/sql/query.py:17032 ms2.1%
Query.build_filterdjango/db/models/sql/query.py:15512 ms2.1%
Query.solve_lookup_typedjango/db/models/sql/query.py:13582 ms2.1%
latest_perfapps/projects/analytics.py:846 return perfs.select_related("profile", "environment").order_by("-date").first()2 ms2.1%
QuerySet.firstdjango/db/models/query.py:11452 ms2.1%
QuerySet.__iter__django/db/models/query.py:3902 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ModelIterable.__iter__django/db/models/query.py:1272 ms2.1%
get_related_populatorsdjango/db/models/query.py:27802 ms2.1%
__init____init__:-12 ms2.1%
RelatedPopulator.__init__django/db/models/query.py:27332 ms2.1%
project_testapps/projects/urls.py:2822 ms2.1%
find_projectapps/projects/urls.py:49 project = get_object_or_404(2 ms2.1%
get_object_or_404django/shortcuts.py:902 ms2.1%
QuerySet.getdjango/db/models/query.py:6352 ms2.1%
QuerySet.__len__django/db/models/query.py:3722 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ModelIterable.__iter__django/db/models/query.py:952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
project_testapps/projects/urls.py:3002 ms2.1%
latest_documentapps/projects/profiles.py:303 ).first()2 ms2.1%
QuerySet.firstdjango/db/models/query.py:11452 ms2.1%
QuerySet.__iter__django/db/models/query.py:3902 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ModelIterable.__iter__django/db/models/query.py:952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
Client.requestdjango/test/client.py:11032 ms2.1%
ProjectPagesTest.test_mute_and_unmuteapps/projects/tests.py:1113 response = self.client.post(30 ms29.6%
Client.postdjango/test/client.py:115330 ms29.6%
RequestFactory.postdjango/test/client.py:49930 ms29.6%
RequestFactory.genericdjango/test/client.py:67130 ms29.6%
Client.requestdjango/test/client.py:108230 ms29.6%
ClientHandler.__call__django/test/client.py:18615 ms14.8%
BaseHandler.get_responsedjango/core/handlers/base.py:14115 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13015 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12315 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3415 ms14.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms14.8%
BaseHandler._get_responsedjango/core/handlers/base.py:19815 ms14.8%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:5915 ms14.8%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6415 ms14.8%
tests_muteapps/projects/urls.py:552 mute_duration = parse_duration(request.POST.get("duration") or "") or timezone.timedelta(days=7)11 ms10.6%
WSGIRequest._get_postdjango/core/handlers/wsgi.py:937 ms6.3%
HttpRequest._load_post_and_filesdjango/http/request.py:4327 ms6.3%
HttpRequest.parse_file_uploaddjango/http/request.py:3777 ms6.3%
MultiPartParser.parsedjango/http/multipartparser.py:1257 ms6.3%
MultiPartParser._parsedjango/http/multipartparser.py:1887 ms6.3%
Parser.__iter__django/http/multipartparser.py:7544 ms4.2%
parse_boundary_streamdjango/http/multipartparser.py:7274 ms4.2%
parse_durationdjango/utils/dateparse.py:1322 ms2.1%
SysMonitor.sysmon_py_startcoverage/sysmon.py:3512 ms2.1%
Coverage._should_tracecoverage/control.py:4532 ms2.1%
InOrOut.should_tracecoverage/inorout.py:3642 ms2.1%
canonical_filenamecoverage/files.py:852 ms2.1%
abs_filecoverage/files.py:1582 ms2.1%
realpath<frozen posixpath>:4602 ms2.1%
parse_durationdjango/utils/dateparse.py:1412 ms2.1%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms2.1%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms2.1%
_lazy_re_compile.<locals>._compiledjango/utils/regex_helper.py:3492 ms2.1%
compile<stdlib>/re/__init__.py:2912 ms2.1%
_compile<stdlib>/re/__init__.py:3522 ms2.1%
compile<stdlib>/re/_compiler.py:7622 ms2.1%
parse<stdlib>/re/_parser.py:9722 ms2.1%
_parse_sub<stdlib>/re/_parser.py:4592 ms2.1%
_parse<stdlib>/re/_parser.py:8552 ms2.1%
_parse_sub<stdlib>/re/_parser.py:4592 ms2.1%
tests_muteapps/projects/urls.py:551 Test.objects.filter(pk=test.pk).update(muted=True)4 ms4.2%
QuerySet.updatedjango/db/models/query.py:13004 ms4.2%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21114 ms4.2%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16244 ms4.2%
CursorWrapper.executedjango/db/backends/utils.py:794 ms4.2%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms4.2%
CursorWrapper._executedjango/db/backends/utils.py:1054 ms4.2%
Cursor.executepsycopg/cursor.py:1134 ms4.2%
Connection.waitpsycopg/connection.py:4954 ms4.2%
BaseCursor._execute_genpsycopg/_cursor_base.py:2064 ms4.2%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms2.1%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms2.1%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms2.1%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms2.1%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms2.1%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms2.1%
ClientHandler.__call__django/test/client.py:17315 ms14.8%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6215 ms14.8%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10415 ms14.8%
WhiteNoise.add_fileswhitenoise/base.py:10815 ms14.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12011 ms10.6%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13111 ms10.6%
WhiteNoise.get_static_filewhitenoise/base.py:2089 ms8.4%
StaticFile.__init__whitenoise/responders.py:777 ms6.3%
StaticFile.get_alternativeswhitenoise/responders.py:2004 ms4.2%
__init____init__:-12 ms2.1%
Headers.__init__<stdlib>/wsgiref/headers.py:362 ms2.1%
<GC>~2 ms2.1%
StaticFile.get_alternativeswhitenoise/responders.py:2012 ms2.1%
StaticFile.__init__whitenoise/responders.py:732 ms2.1%
StaticFile.get_headerswhitenoise/responders.py:1782 ms2.1%
parsedate<stdlib>/email/_parseaddr.py:1852 ms2.1%
parsedate_tz<stdlib>/email/_parseaddr.py:502 ms2.1%
_parsedate_tz<stdlib>/email/_parseaddr.py:1802 ms2.1%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1154 ms4.2%
scantreewhitenoise/base.py:2622 ms2.1%
scantreewhitenoise/base.py:2622 ms2.1%
scantreewhitenoise/base.py:2622 ms2.1%
scantreewhitenoise/base.py:2622 ms2.1%
scantreewhitenoise/base.py:2622 ms2.1%
scantreewhitenoise/base.py:2642 ms2.1%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()9 ms8.4%
TestCase._fixture_teardowndjango/test/testcases.py:14954 ms4.2%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4834 ms4.2%
CursorWrapper.executedjango/db/backends/utils.py:794 ms4.2%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms4.2%
CursorWrapper._executedjango/db/backends/utils.py:1034 ms4.2%
Cursor.executepsycopg/cursor.py:1134 ms4.2%
Connection.waitpsycopg/connection.py:4954 ms4.2%
TestCase._fixture_teardowndjango/test/testcases.py:14942 ms2.1%
TestCase._should_check_constraintsdjango/test/testcases.py:15032 ms2.1%
DatabaseWrapper.is_usabledjango/db/backends/postgresql/base.py:4922 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms2.1%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms2.1%
Atomic.__exit__django/db/transaction.py:2832 ms2.1%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms2.1%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms2.1%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
ProjectPagesTest.setUpapps/projects/tests.py:954 self.client.force_login(self.user)9 ms8.4%
ClientMixin.force_logindjango/test/client.py:8559 ms8.4%
ClientMixin._logindjango/test/client.py:8764 ms4.2%
ClientMixin.sessiondjango/test/client.py:8124 ms4.2%
SessionStore.savedjango/contrib/sessions/backends/db.py:1214 ms4.2%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms2.1%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1972 ms2.1%
get_random_stringdjango/utils/crypto.py:622 ms2.1%
get_random_string.<locals>.<genexpr>django/utils/crypto.py:622 ms2.1%
Random.choice<stdlib>/random.py:3542 ms2.1%
Random._randbelow_with_getrandbits<stdlib>/random.py:2492 ms2.1%
SystemRandom.getrandbits<stdlib>/random.py:9162 ms2.1%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms2.1%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.1%
Model.savedjango/db/models/base.py:8742 ms2.1%
Model.save_basedjango/db/models/base.py:9662 ms2.1%
Model._save_tabledjango/db/models/base.py:10572 ms2.1%
ClientMixin._logindjango/test/client.py:8812 ms2.1%
logindjango/contrib/auth/__init__.py:1962 ms2.1%
rotate_tokendjango/middleware/csrf.py:1222 ms2.1%
_add_new_csrf_cookiedjango/middleware/csrf.py:862 ms2.1%
_get_new_csrf_stringdjango/middleware/csrf.py:562 ms2.1%
get_random_stringdjango/utils/crypto.py:622 ms2.1%
get_random_string.<locals>.<genexpr>django/utils/crypto.py:622 ms2.1%
Random.choice<stdlib>/random.py:3542 ms2.1%
Random._randbelow_with_getrandbits<stdlib>/random.py:2492 ms2.1%
SystemRandom.getrandbits<stdlib>/random.py:9152 ms2.1%
ClientMixin._logindjango/test/client.py:8832 ms2.1%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms2.1%
Model.savedjango/db/models/base.py:8742 ms2.1%
Model.save_basedjango/db/models/base.py:9662 ms2.1%
Model._save_tabledjango/db/models/base.py:11102 ms2.1%
Model._do_updatedjango/db/models/base.py:11882 ms2.1%
QuerySet.filterdjango/db/models/query.py:15422 ms2.1%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms2.1%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms2.1%
Query.add_qdjango/db/models/sql/query.py:16712 ms2.1%
Query._add_qdjango/db/models/sql/query.py:17032 ms2.1%
Query.build_filterdjango/db/models/sql/query.py:15772 ms2.1%
Query.setup_joinsdjango/db/models/sql/query.py:19912 ms2.1%
ProjectPagesTest.test_mute_and_unmuteapps/projects/tests.py:11247 ms6.3%
Client.getdjango/test/client.py:11247 ms6.3%
RequestFactory.getdjango/test/client.py:4757 ms6.3%
RequestFactory.genericdjango/test/client.py:6717 ms6.3%
Client.requestdjango/test/client.py:10827 ms6.3%
ClientHandler.__call__django/test/client.py:1867 ms6.3%
BaseHandler.get_responsedjango/core/handlers/base.py:1417 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1307 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1237 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
MiddlewareMixin.__call__django/utils/deprecation.py:3097 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:347 ms6.3%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:557 ms6.3%
BaseHandler._get_responsedjango/core/handlers/base.py:1987 ms6.3%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:594 ms4.2%
tests_unmuteapps/projects/urls.py:5702 ms2.1%
managed_testapps/projects/urls.py:5822 ms2.1%
get_object_or_404django/shortcuts.py:902 ms2.1%
QuerySet.getdjango/db/models/query.py:6352 ms2.1%
tests_unmuteapps/projects/urls.py:5712 ms2.1%
QuerySet.updatedjango/db/models/query.py:13002 ms2.1%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
user_passes_test.<locals>.decorator.<locals>._view_wrapperdjango/contrib/auth/decorators.py:562 ms2.1%
login_required.<locals>.<lambda>django/contrib/auth/decorators.py:792 ms2.1%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms2.1%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms2.1%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms2.1%
get_userdjango/contrib/auth/middleware.py:202 ms2.1%
get_userdjango/contrib/auth/__init__.py:3112 ms2.1%
_get_user_session_keydjango/contrib/auth/__init__.py:952 ms2.1%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:552 ms2.1%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms2.1%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms2.1%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.1%
QuerySet.getdjango/db/models/query.py:6352 ms2.1%
QuerySet.__len__django/db/models/query.py:3722 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms2.1%
ModelIterable.__iter__django/db/models/query.py:952 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms2.1%
Cursor.executepsycopg/cursor.py:1132 ms2.1%
Connection.waitpsycopg/connection.py:4952 ms2.1%
ProjectPagesTest.test_mute_and_unmuteapps/projects/tests.py:1121 self.assertEqual(Mute.objects.get(test=self.slow_test).reason, "flaky")2 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms2.1%
QuerySet.getdjango/db/models/query.py:6252 ms2.1%
QuerySet.filterdjango/db/models/query.py:15422 ms2.1%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms2.1%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms2.1%
Query.add_qdjango/db/models/sql/query.py:16712 ms2.1%
Estimated from 47 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/projects/tests.py:1113
response = self.client.post(
ProjectPagesTest.test_mute_and_unmute
· Libraries
|
15 ms |
|
apps/projects/urls.py:552
mute_duration = parse_duration(request.POST.get("duration") or "") or timezone.timedelta(days=7)
tests_mute
· Libraries
|
11 ms |
|
apps/projects/tests.py:954
self.client.force_login(self.user)
ProjectPagesTest.setUp
· Libraries
|
9 ms |
|
apps/orgs/views.py:33
organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))
org_shell
· Database
|
7 ms |
|
apps/projects/analytics.py:806
for perf in TestPerf.objects.filter(test=test)
history_for_test
· Database
|
7 ms |
|
apps/projects/urls.py:342
return render(request, "project_test.html", context)
project_test
· Templates
|
7 ms |
|
apps/projects/urls.py:551
Test.objects.filter(pk=test.pk).update(muted=True)
tests_mute
· Database
|
4 ms |
|
apps/projects/analytics.py:819
TestRun.objects.filter(test=test)
history_for_test
· Database
|
4 ms |
|
apps/projects/tests.py:1121
self.assertEqual(Mute.objects.get(test=self.slow_test).reason, "flaky")
ProjectPagesTest.test_mute_and_unmute
· Database
|
2 ms |
|
apps/projects/urls.py:49
project = get_object_or_404(
find_project
· Database
|
2 ms |
Fixtures
Exact setup time| _django_db_marker function | 0.05 ms |
| _dj_autoclear_mailbox function | 0.04 ms |
| _template_string_if_invalid_marker function | 0.04 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
62 queries · 25 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
4×
SELECT "django_session"."session_key", "django_session"."session_data", "django_session"."expire_date" FROM "django_session" WHERE ("django_session"."expire_date" > %s AND "django_session"."session_key" = %s) LIMIT ?
3×
SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "auth_user" WHERE "a…
3×
SELECT "projects_project"."id", "projects_project"."organization_id", "projects_project"."name", "projects_project"."slug", "projects_project"."public", "projects_project"."description", "projects_project"."date_created", "projects_project"."date_updated", "projects_project"."created_by_id", "orgs_…
3×
SELECT %s AS "a" FROM "orgs_membership" WHERE ("orgs_membership"."organization_id" = %s AND "orgs_membership"."user_id" = %s) LIMIT ?
3×
SELECT "projects_test"."id", "projects_test"."name", "projects_test"."project_id", "projects_test"."slug", "projects_test"."date_last_run", "projects_test"."date_first_seen", "projects_test"."first_commit_id", "projects_test"."muted" FROM "projects_test" WHERE ("projects_test"."project_id" = %s AND…
Biggest pieces of work
|
call test body
apps/projects/tests.py:1113
|
85 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
9 ms |
|
call setUp
apps/projects/tests.py:954
|
9 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 | |
|---|---|---|---|---|
| 16 hours ago | CI github-actions:test | passed | 103 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 64 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 110 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 82 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 131 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 68 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 113 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 108 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 107 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 123 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 67 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 104 ms | Profile |