Hi, I had a script for browser testing against a Salesforce org. Not sure why the browser was closed abruptly with error “Uncaught (in promise) waiting for navigation: timed out after 30s”.
This should work correctly.
Let me know if this helps or please try to provide more details or an example that we can test in order to reproduce the problem.
Hi @Daniel.J
「 The error that you mention. Is it a recurrent error when running this test? 」
:Yes. It is a recurrent error. The browser is closed abruptly due to this error every time. Below is more detail while running this test.
Meanwhile, I have another question about the test result. If a test involves navigation between multiple pages, how do we control when the measurement starts? For example, the script navigates to login page first, then main page, then the functional page… If this is the case, what does the result metrics mean? Like browser_loaded time metric, it’s an aggregated result for all 3 pages? What if I only care about the browser performance for the functional page?
WARN[0003] An iframe which has both allow-scripts and allow-same-origin for its sandbox attribute can remove its sandboxing. browser_source=security line_number=0 source=browser url="https://test.salesforce.com/s.gif"
ERRO[0004] Failed to load resource: the server responded with a status of 403 () browser_source=network line_number=0 source=browser stacktrace="<nil>" url="https://c.salesforce.com/wbin/www-core/f/g"
WARN[0004] "Failed to retrive resource" "/wbin/www-core/f/g" source=browser-console-api
WARN[0006] url:https://www.salesforce.com/etc.clientlibs/clientlibs/granite/jquery/granite.min.e67470fde615e2d442e08aad300a8905.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc.bundles/sfdc-www/bundles/sfdc-liveChat.bundle.f42544e13e4c41b94309.css method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc.clientlibs/clientlibs/granite/utils.min.308082b4c347f4fec37ffef277d39d0e.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc/clientlibs/sfdc-aem-master/clientlibs_www_tags.min.1b6dbce218e03b78c31afe6479e1dcca.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc.bundles/sfdc-www/bundles/all.bundle.f42544e13e4c41b94309.css method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc/clientlibs/sfdc-aem-master/clientlibs_onetrust.min.00be152368d8c9bf2819dbc1c1acbce4.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc.clientlibs/foundation/clientlibs/jquery.min.dd9b395c741ce2784096e26619e14910.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc/clientlibs/granite/lodash/modern.min.3a0ad4c7614495b1cae264dfcb9b9813.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc/clientlibs/sfdc-aem-master/clientlibs_analytics_login_top.min.a7071a6eaaff6e2784975ca63d7e475c.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc.clientlibs/clientlibs/granite/jquery.min.8e23e5ad8c1b5c588cca8d71df0aef0b.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://www.salesforce.com/etc.bundles/sfdc-www/bundles/vendors~scriptloader~utils.bundle.9778a349e167a2e3037e.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0006] url:https://a.sfdcstatic.com/digital/one-trust/core/stable/scripttemplates/otSDKStub.js method:GET err:fetching response body: No resource with given identifier found (-32000) category="Response:bodySize:fetchBody" elapsed="0 ms" goroutine=125
WARN[0014] sid:2B0E44672BF3B31A62DD1F4278154455 tid:2C847AEF89D4E5FCF7E90147112F399A bctxid:D70B5265A899B2BD9497A76C946A4114 bctx nil:false, unknown target type: "shared_worker" category="Browser:onAttachedToTarget" elapsed="0 ms" goroutine=101
ERRO[0033] Uncaught (in promise) waiting for navigation: timed out after 30s executor=per-vu-iterations scenario=default
browser_dom_content_loaded.......: avg=85.29ms min=198µs med=3.2ms max=603.12ms p(90)=283.67ms p(95)=438.85ms
browser_first_contentful_paint...: avg=328.13ms min=8.38ms med=277.36ms max=698.66ms p(90)=614.4ms p(95)=656.53ms
browser_first_meaningful_paint...: avg=603.85ms min=509.05ms med=603.85ms max=698.66ms p(90)=679.69ms p(95)=689.17ms
browser_first_paint..............: avg=328.13ms min=8.38ms med=277.36ms max=698.66ms p(90)=614.4ms p(95)=656.53ms
browser_loaded...................: avg=85.87ms min=2.87ms med=4.42ms max=486.7ms p(90)=250.44ms p(95)=368.57ms
So on your question about how to have separate metrics per page, currently that’s not exactly possible from the summary, as this provides an aggregated view of all metrics, but you can achieve that by redirecting the output, for example to a JSON file or to a TS DB such as Prometheus or InfluxDB and then filter the metrics per specific URL.
See previous community posts that can help you experiment with these options:
Using JSON output
In this post you can also see an option for using thresholds to separate metrics.