Performance Engineering
Live application performance issues are rarely graceful in occurrence. They tend to be catastrophic in nature and are generally costly to rectify both in terms of effort and reputational damage. Throwing hardware at the issue does not solve the root cause.
Furthermore, even where a performance test function is present, without the correctly defined and implemented test model those issues are unlikely to be detected. Performance testing and engineering cannot be performed adequately as a standalone function, but must include all the relevant stakeholders.
Performance engineering is complicated and can be expensive to resource in terms of tool purchase and licensing fees, required hardware to support the testing and resources to define, script and execute the tests. For these reasons many organisations don’t performance test at all.
The Test People have been working closely with our clients to simplify the performance engineering process. We ensure that the defined test model covers real business process and realistic user levels. We can handle the complicated tasks of scripting, execution, monitoring and reporting on the test models and we also provide diagnostic and re-engineering information to solve performance issues.
The Test People have extensive tool knowledge covering all the main vendor and open source tool sets. We are at the forefront of utilising cloud based on demand load generation allowing great load to be achieved at low cost. Furthermore, our performance engineering framework allows us to rapidly build and deploy bespoke test harnesses to replicate 3rd party interfaces and feeds.
Test Automation
The benefits of automated testing are considerable and well documented. Test execution time can be dramatically reduced, test coverage can be increased exponentially and when used in a more agile manner, test automation can compliment manual testing to significantly improve productivity.
However, there are many stories of test automation failing to deliver all it has promised and the lessons learnt can be painful and costly, often leading to a mistrust of the test automation tool and a fingers burnt philosophy which means test automation will never be attempted again.
To ensure any automation engagement can deliver the increased test coverage, risk reduction and payback required, The Test People perform an assessment of the application development environment. Working with the client to understand the goals behind the automation project, The Test People will establish the return on investment that can be achieved, advise on the most appropriate course of action and tool to be utilised. If the required client objectives cannot be met then The Test People will explain this and suggest alternatives.
The Test People have significant experience of a wide range of test automation tools including open source and those provided by the leading vendors and when an automation project has been identified, The Test People have the test automation experience and their own automation approach “ABLE”, to ensure that the project objectives become a reality.
The Test People Able methodology ensures that any automated test processes that are delivered are:
Maintainable
Changing the application under test should not render the automated test process useless. With care and attention the automated process should require only moderate maintenance allowing the cost savings associated with automated testing to accrue after each test execution cycle rather than be eroded by the cost of supporting the automated test pack.
Flexible
Delivering the automated approach via the Able methodology allows relatively inexperienced test automation engineers to quickly create automated tests by simply linking modular blocks to build end to end automated test processes.
Configurable
The Test People automation is delivered so that it allows data driven automated testing, thus large and varied tests can be created by functional test analysts without the need to have deep seated automation test skills.
Durable
Automated test processes delivered by The Test People will always be designed to run to completion. If a script fails, the process will error gracefully and set the application back to a point where the next script will commence its run. This allows the scripts to be executed without having to be continually monitored.
Test Management
Software and business process testing are vital components of the software development life cycle, yet test processes which should account for approximately one third of a project budget are often unplanned and considered only as an afterthought. Furthermore, testing must strike the right balance of risk reduction to cost:
Test too much and costs increase whilst your release is delayed.
Test too little and your release could cause reputational damage and incur avoidable operational costs.
Even where an agreed test approach and budget is in place, there are many companies where there is confusion between testing and quality assurance, with project issues often left to be found in test rather than designed out of the process. This approach can lead to frustration with the test function as projects get bogged down in testing leading to the project exceeding its budget, delays to a release or, worst of all, numerous operational issues. Frequently, these symptoms of poor quality management are witnessed in the test phases of a project and are confused with inefficient test processes - this can then lead to the belief that testing is too time consuming, too expensive and too manually intensive.
The Test People work collaboratively with our clients to tailor a formal test strategy their software development process. Quality gates are built into the process and consensus is sought throughout so that all relevant stakeholders are bought into these quality assurance techniques that are established at key phases of the process.
Once the agreed strategy is in place, The Test People work with our clients to allocate the test budget in a manner that provides the required risk reduction in a planned and structured fashion. Test execution cycles are managed against the test plan and budget, and the client is left with a repeatable testing process including activities such as defect management and test execution reporting. The Test People have wide test and defect management tool knowledge including open source and as such can help with tools selection and best practice ensuring that the tool meets the requirements of the strategy.
Copyright The Test People 2009