Non-functional requirements are often misunderstood, overly technical or missing altogether. This results in systems that are not designed for performance, and performance tests with no real alignment to the business. Behaviour Driven Development has helped teams to document requirements in fast-paced Agile environments. Clearly defined requirements early in the project are the starting point that allows test automation to be included in a Continuous Integration (CI) environment.
Behaviour-Driven Development for Performance encourages a simplified approach to documenting requirements from an end user perspective with common sense terminology and is the first step on the journey to integrating performance testing into a CI workflow.
For more information about our Performance Testing services, visit our website:
https://www.planittesting.com/Services/Performance-Testing
The reason we are here, getting towards continuous performance testing to increase quality
TDD and BDD were both designed to increase quality by testing earlier
I don’t think running some simple tests should be our desired end state
18 Years in Performance Testing
Involved at all levels
Small tests to setting up enterprise COEs
Working towards continuous performance testing for a number of years
In-between my day job Managing Non-Functional Testing in NSW, Australia for Planit
We are all always learning, and everything is specific to your domain and what you are trying to achieve
This is why consultants exist
Consultants jokes aside…
There might be more questions in here than answers. I think that’s ok?
In the early days, we used to sit in dark offices at night running tests
We moved to remote testing which was better (sitting in a dark hotel room or house)
The current journey all began with a simple request
Performance testing and automation are very different
Performance scripts are very fragile
What about what else is happening in the environment
The database will need to be refreshed each time
We want to restart the servers before each run
You wont understand the results anyway
I don’t know how
Well, its not typical, its actually a pretty good one
So once I calmed down,
went outside
sat down
looked at some trees
Cried a little
I thought…. Heck yes…
Well, some analysis anyway. Enough to know if it was worth analysing
This is the part where people say WHAT? You automated the script development?
Well, kind of… there are 2 ways
Automate the recording
Convert from Truclient which is actually awesome
How do we get to continuous performance testing?
It is achievable
I mean the hard requirements / planning stuff
It is achievable
Test Driven Development (TDD) is the practice of writing a small automated Unit Test which initially fails, then writing the simplest and smallest amount of application code required to pass the test before refactoring and improving the quality of the code.
Behaviour Driven Development (BDD) is based upon Test Driven Development, but where TDD focuses on the inner workings of the software and the accuracy of the code (Unit Tests), BDD focuses on the requirements and the business value of the software (Acceptance Tests).
They certainly didn’t invite the performance testing team to this early engagement?
What the?
Testing was always compressed at the end of the development cycle
We have moved “Actual” testing so early that its done before the system is even build.
By actual testing, I don’t mean static analysis of requirements… because lets face it, that’s not testing, its well, reading
Requirements are a big problem in performance testing
Business Buy in is critical
Main problem with failed performance tests
Really difficult to get right
Requirements are a big problem in performance testing
Business Buy in is critical
Main problem with failed performance tests
Really difficult to get right
Someone must be doing this well?
This must be something that is supported by the latest tools that cost $$$$$$$$$$$$$
There must be a way out!
The login has degraded by 10%.... Which we have no idea if that is acceptable or not.
What if it is slower due to a change that has to happen?
Now Test That!
That’s a bit messy
Declarative Style
Very Specific
Has amounts in there
Declarative Style
Very Specific
Has amounts in there
Declarative Style
Very Specific
Has amounts in there
Wait a minute
Declarative Style
Very Specific
Has amounts in there
Probably. Should we try and simplify things?
Micro services are designed to operate independently of any other system.
They do one thing, and do one thing well
Should we try and simplify things?
Micro services are designed to operate independently of any other system.
They do one thing, and do one thing well