OctoPerf V12 - Scheduler, Slack Integration and UI Upgrade

OctoPerf V12 - Scheduler, Slack Integration and UI Upgrade

Introduction

It’s been some time since our latest major release, in fact OctoPerf v12 is probably our biggest/longest coming release to date. There’s of course been a couple of minor versions this summer and we’ll also cover them but first let’s focus on the new killer features: the scheduler, alerting through slack/mail and a better UI for the menus.

The scheduler is the first item left on our original roadmap (back when OctoPerf was still called jellly.io). Of course we’ve got a lot more planned on our current roadmap than back then, but still it’s an important landmark for us! We’ve decided to merge it with notifications through slack integration or mail so that you can get the best out of these scheduled tests.

At the same time we’ve worked on the menus to highlight all the possibilities instead of hiding them in sub-menus.

Improvements

Scheduler

scheduler

Obviously the scheduler options are very close to the runtime options, with the added bonus of being able to tag it on the fly. The actual scheduling can be done through our UI or directly through a cron expression:

cron

Scheduled tests results will be available on the analysis page the same way as regular tests, and on top of it you’ll get a recap of these tests on the scheduler page:

scheduled-tests

Notifications

Launching the test is one thing, but it is also important to be made aware of the results somehow. That’s the notifications’ purpose, and you have 3 ways to achieve it:

  • Slack integration
  • Mail notification
  • HTTP webhook

For instance, if you use slack, you can create an incoming webhook by following the procedure in their documentation.

In our case we will be assuming that:

  • The webhook URL is https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX,
  • The user that created the webhook is named Demo,
  • You have an #octoperf channel and Demo can post into it.

In OctoPerf it would look like this:

slack-integration

And here’s how it will look in slack:

notification

You might want to use the filters to remove smaller tests from the notifications in order to avoid getting too many messages.

Improved menus

Over the years as we kept adding more and more features, we’ve always struggled to find their proper place in the UI. Because of this many settings were hidden in sub menus where it would not make much sense, typically for monitoring you had to be inside a project and open the upper right menu. If you were at the workspace level, the monitoring would not show. This was very confusing and something had to be done.

Workspace and Project

Instead of having the workspace in the upper right, we’ve decided to have the upper menu display workspace and project next to each other:

workspaces

This makes more sense since a project has to be part of a workspace. Also we hope this organization is easier to figure out for new users.

The upper menu will display the 3 top Workspaces or projects based on their Last modified date.

Project

Here we can find settings that are at workspace-level:

projects

The reasoning is that to display the list of projects you have to be inside a workspace. So at the same level you can also access:

Design configuration

The design screen has always had a less than ideal layout since a few of the menus were global to the entire project, yet only accessible when a virtual user was opened. Which is why we’ve moved them also on the design menu:

design

Thanks to this you can edit variables, and other settings directly from the menu, whenever you are in the project.

Runtime

And last but not least, the runtime menu now also includes the new scheduler and the monitoring screen, since these are two aspects you want to configure prior to launching a test:

menu

Debug sampler

The debug sampler is a JMeter action well know of advanced users. It displays the state of all variables and properties at a specific time in the execution. We added it to our UI so that you can also use it to track the value of your parameters or post processors:

debug

Deactivate cache manager

When a test is launched in OctoPerf we automatically generate a JMX based on the settings you selected. A cache manager was always added, but you could deactivate all its actions if required. We noticed that in some situations it is better to not have a cache manager at all, which is why we’ve added a toggle next to the cache size:

cache

Ad blocker

We used to have a URL filter for new scripts that would remove some domain names, typically for large websites or advertising/sponsored links. But we ended up deactivating it because some of our customers were actually on this list. We’ve reintroduced it but it can be deactivated from the virtual user creation page:

ad-blocker

In case you are unsure if you should leave it or not, you can just try or you can check the list of blocked domains:

Rescale entire test

This one is a quick but very helpful option on the runtime screen:

rescale

It allows you to increase the entire runtime all at once, this way we will maintain the same ratio between the existing profiles. Typically you can duplicate your standard test and use this setting to increase the load of all the profiles in the duplicate to make it a peak test.

Move project from one workspace to another

Moving a project between workspaces is an important minor feature we added earlier this summer. Most OctoPerf users originally need time to figure out all the possibilities of workspaces and how it fits in their organization. This allows everyone to properly reorganize things even after projects or tests have been run:

move-project

New AWS zones

We’ve also added two new AWS zones to the list:

  • Milan
  • Hong kong

We hope that these will help you test under even better conditions.

Documentation

We’ve reworked our documentation, we’ve been mostly moving things around for a better readability. But as the documentation contains a huge amount of information, it was about time we made it easier to browse.

In terms of content, one of the major addition to the documentation is the test startup process page.

Over the years, the test startup process was updated quite often, to better handle datasets, to deal with JMeter properties, hosts files or other complex situations. This guide explains, step by step, every action we take before and after JMeter’s execution. We hope it will clarify how you can control the underlying JMeter or just save information before the docker containers are destroyed.

Full changelog

For the complete list of fixed bugs, please refer to OctoPerf 12 Release Notes.

By - Support and performance eng. Director.
Tags: Scheduler Notifications Slack Frontend Debug Cache Project Workspace

Comments

 

Thank you

Your comment has been submitted and will be published once it has been approved.

OK

OOPS!

Your post has failed. Please return to the page and try again. Thank You!

OK

Get our whitepaper,
A beginners guide to performance testing!