You have 2 separate issues. They MAY be related but they may not.
Tableau will use all available resources to do its work. Seeing high memory or CPU utilization is not in and of itself a problem. It is only a problem if:
1) You see degradation of the user experience IN PRODUCTION environments (stress testing does not count)
2) The amount of "work" Tableau is being asked to do is beyond the capabilities of the software (this MAY be your issue)
Have you explored the server logs with Tableau's own tools to see what's going on? Is the usage scenario you are testing an accurate representation of what you can expect in production? Or are you just trying to see what load makes Tableau break?
Hi Michael, thank you for the response
No I haven't explored the server logs with Tableau's own tools, and yes the usage scenario is an accurate representation of what I can expect in production and this is the problem because what happens is that when I test over only one user there is no problem and everything works fine but when I test over more than 1 user (here I tested over 10 users) the error above appears, so I want to solve this error and to make sure everything will work fine when I test over even more than 10 users such as 50 users and what specifications do I need to reach this number.
My workbook contains main dashboard contains 3 icons (A,B,C): icon A connects to one dashboard, icon B connects to 2 icons and each icon connects to a dashboard, icon C connects to about 14 different KPIs with each KPI connects to a dashboard. Each dashboard has a "Go Back" icon.
The test scenario is that the 10 users will enter all of the above dashboards and all on the same time.
The error happens when the test reach to enter one of the KPIs in icon C
You need to turn on Performance Recording on Tableau Server and look at the output after you run your tests to see what exactly is putting so much load on the server.
You know your users and their potential usage patterns, but what you are describing does not sound like a typical production scenario. I would have to know a LOT more about how you are testing (are you running a continuous loop where a simulated user opens all possible dashboards in a specific order, then incrementing the user count - so that you have multiple users doing everything that it is possible to do with your dashboards, all at the same time, in a fast-running looping process?) to give you any useful advice.
The rules about designing efficient and performant dashboards still apply: what you have described with icons and KPIs doesn't tell me anything about data sources, number of fields, filters, LOD calculations, number of vizzes on a dashboard, size of datasets, and so on. Those are all things that can have a huge impact on performance. That is why it is so important to look at the Performance reports to see where the bottlenecks are.
While I am not familiar with Protractor as a testing tool, a quick survey tells me that it might not be the best choice for performance or stress testing of Tableau either.