- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
ATF is mostly associated to testing, but you can also do performance testing!
You can read about those features in the official docs here.
This is mega, because if the platform is slow, users will hate it.
It’s kind of as simple as that really.
Workers just need to get their job done, they don’t really care about the UI being pretty, but they do care if between every click they must wait 5 seconds.
It just kills their flow state, it gives your platform a terrible reputation and if the crowd grows you may find yourself struggling to get more investment in the platform, both emotional and $...
So, is the platform actually slower? Confirm it with tests
ATF offers performance profiling, when you go into a test you’ll see a ‘Run performance test’ button, click that.
Important Note: it does stop other things running (else they would steal performance power!) so be sure to schedule the tests at the appropriate time and on the appropriate environment.
You’ll also need version 2.1.0+
Once the tests complete, you can then choose 2 results to compare. This is obviously the main important step.
It’s also as simple as that really.
- Now that test has run, you’ve got a base state.
- Make your changes, deploy your update sets, then run it again.
- Compare.
Ok, so how to fix bad performance?
I don’t want to go too much into the weeds of technical and coding here, but some general high level things to look into:
- Custom ACLS – These run so often, if they’re ‘advanced’ (i.e They have code) and are customised, then check these first.
- Custom Business rules – Again, if these run often (E.g. Task table, with no conditions) review.
- Script includes – Anything called often by Business rules.
- Slow queries – Docs here
Ultimately you’ll either have something that runs a little slow but often, or very slow but infrequently – They’re both bad really 😄
It’s still slow, help?
Read this KB from servicenow.
Lastly, servicenow support can assist further, but be sure to check the above first before reaching out to them. They’ll be able to give you more details though.
Some final notes on Profiling:
- This is not 'load testing', since it's just a single 'user'
- It’ll run 11 iterations, the first is to warm up the platform(build the cache, etc), therefore it will ignore that first ‘un-cached’ result’
- It’ll give you an average of the 10 runs (ignoring the first of the 11).
Finally, its not just for upgrades that you should performance test. Other times I’d consider it very useful:
- Significant code base changes – Global business rules, etc.
- ATF changes – Since they run so often.
- New module being installed or activated.
So the take away action points?
- Let your teams know about this feature,
- Schedule and communicate a performance test (the first baseline)
- Then think about when to run the next one. Perhaps integrate this into your deployment process?
Have you used this yet? Did you find it useful? Please share your thoughts!
- 212 Views
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
