We had a great turnout for last week’s “Performance Testing Considerations Using JMeter and Google Analytics” webinar, and wanted to answer a few questions that came up. Attendees asked XBOSoft VP of Engineering and speaker Ed Curran to go into more detail about his process. He put together responses in a few blog posts; the first of which focuses on Google Analytics-specific questions.
Q: Is Google Analytics a paid service? Can testers use this on their own?
A: Google Analytics (GA) is free of charge for many useful metrics like those shown in the Webinar (e.g., GA Pageviews Report and GA Behavior Flow Report). We believe there is plenty of useful information just within the free reports, but Google also has available enhanced Enterprise/Business versions that can be purchased as an upgrade.
Q: How do you read the stats for Google Analytics? For example, under the starting pages, you have 65.1K sessions and 63.1K drop-offs. What exactly do you mean by drop-offs? Are they canceling (backing out) or just moving on to the next section of the application?
A: The drop-offs are a backing out. If you review the flow diagram, you will see in the example that few users continued to the “1st interaction”. Also, it is possible to define paths through the site, so that if a defined path is not pursued by the user, that would be flagged as well. Specific definitions for each of available statistics is provided on the Google Analytics Solutions pages.
Q: Do you know of any resources that can help testers learn Google Analytics?
A: There are many resources on the Internet that provide additional information on GA. The Google Analytics Solutions pages provides a in depth information on the available reports. There are also e-learning sites (e.g., udemy.com, lynda.com) that provide tutorials on GA, from beginner to advanced. Remember that GA provides a lot of great information for marketing. However, for our load/performance test focus, we use GA to ensure that we are focused on gathering information on application areas that are heavily utilized, either now or in the future. We use that information with our Performance Prioritization Matrix to set priorities.
Q: Always a big challenge is to define the concurrent users. Normally, the client believes that he needs to inject the total population that he has or that he is going to have. What is the best way to calculate that?
A: This is a complex, very interesting question. There are a few factors that need to be calculated. Basically, you need to figure out how many people are using the application across a given short time period (e.g., busiest one hour). GA can do this easily. Then you need to figure out how long they are on the site. This is also reasonably easy to do using GA (GA Pageviews).
You can then apply a simple formula:
Average Concurrent Users =
(Total Peak Hour Visitors) * (Average Time in seconds on Page) / 3600
However, this is the average number of concurrent users. What we really want is the peak number of users “attacking” the site at the same time. Without getting into all the statistics, a rule of thumb could be Peak Utilization factor of 1.5 or 2 can be applied. So if there was 300 concurrent users, a value of 600 concurrent users could be utilized as a starting place for peak simultaneous load value evaluations.
Stay tuned for Part 2 next week!