What we think, say & do
There is no question that verifying your system is working correctly is crucial to any business. However, software testing strategies are not one-size-fits-all. Every business sector needs to take the time to understand their IT system’s priorities, and then focus their testing efforts accordingly.
Let’s take a look at three business sectors and some of their possible key priorities, and how their testing efforts might be focussed.
The Insurance industry is very broad, covering services from automobile and property, through to health and liability, and beyond. Each of these disciplines will have their own dedicated specialist staff and software.
There are undoubtedly a raft of areas that need to be included in a test strategy for an insurance application, but some specific areas for concern would be security and accuracy. How should insurance companies approach software testing, and what should their strategy be? Some of the following would be key:
1. Roles & Permissions testing
Insurance applications require the utmost privacy and confidentiality. Each piece of software will have its own unique roles and permissions associated with it. A defect in this area could potentially lead to a major loss - imagine if a user could bypass policy checks or approve their own insurance application. It is critical to ensure that each role has the correct permissions. A set of automation tests that are targeted for each user and their varied permissions can have this feature tested in a very short time.
2. Integration between systems
Insurance software is seldom standalone, and is more likely to integrate to a number of other systems - from a front end UI in the main office interfacing with back office systems, databases, and potentially other systems across the company. It is vital to ensure the end-to-end flows of data between systems and throughout the organisation are behaving correctly and consistently.
3. Data verification and Calculations
Insurance is all about money, numbers and complex computations. There can be frequent changes to the values used within the systems internal calculations. Verifying that the system continues to perform its calculations correctly is vital to ensure the billings are correct and accurate. Therefore, data verification and checking all the arithmetic computations are very important. This can be a tedious and erroneous task to verify manually. A better approach would be a series of automation tests that can accept the latest inputs and verify the calculations and outputs are correct.
Publishers need their content to be easily created, and displayed correctly. Some major concerns for publishers typically include cross browser and mobile compatibility. How should publishing companies approach their testing, and what should their strategy be?
1. Stable systems to deliver content
Editors need a consistent way to create their content. There may be numerous people working on a single piece of content at overlapping times. Ensuring the systems is stable, and that the correct workflows are in place to take a piece of content from a draft to a final state are crucial. These sorts of checks are ideal for test automation - highly repeatable actions with content creation following varied workflows can be time consuming to test manually, and this is where test automation really excels.
2. Display of content
Once a piece of content has been created, it is vital that it looks good and consistent no matter what desktop browser or mobile device the content is viewed on. It is necessary to include as much cross browser testing on PCs and mobiles as possible. This can be an extremely time consuming process to do manually - having automated visual tests can be an enormous time saver. These tests can be configured to automatically execute across a range of mobile devices and PCs each running a different operating systems with different browsers.
3. Integration between systems
It is quite likely that a publisher will have multiple systems. For example, a system for their print edition and a separate system for their digital edition. Perhaps there are API feeds to systems external to their own. It is very important to ensure that all interfaces are included within your tests, both in small targeted tests between two systems, and larger end-to-end tests across the entire suite of systems.
Arts & Culture Sector
In the Art & Culture sector, a digital presence may not only includes a website, but also a social media presence, mobile apps, electronic advertising and fundraising, and much more. What might a test strategy focus on?
1. Varied sources of content
If your company invests in a website, a certain amount of testing will be required to ensure the site is behaving correctly. If your company also has a mobile app, the amount of testing involved increases. This will continue to increase with every additional system you have. A manual approach to testing all of these will work but will be time and resource consuming. Having even one of these automated can save you a lot of time and provide confidence in your system.
Your website should meet the World Wide Web Consortium (W3C) guidelines with respect to making your site accessible to all of your audience, regardless of disability. The rules and standards within the W3C around navigation, readability, etc., are very extensive. Consider a test automation approach to ensure that every page on your site meets the standards so that every page is accessible to everyone. Automation tests of these sort can be very quick and accurate.
The test strategies used by the Insurance, Publishing, and the Arts & Culture sectors will vary greatly. Each of these industries have different priorities and it is these priorities that should drive the focus of the testing. As such, your priorities might be different to those I have listed above.
Once key areas of a system have been identified, a test strategy can be written to address them. Limiting the amount of manual testing while maximising the automation tests will save time in the long term, so a focus on automation testing is preferred.
To automate your tests, an automation tool will need to be selected. There are a vast number of test automation tools available - a choice has to be made as to which is most suitable to the requirements and the systems to be tested.
Once a tool is selected and some automated tests are running, the next step would be to incorporate these into the build & deployment process so that feedback is available on the latest build as soon as possible.
Test automation is one of the best ways to highlight regressions and system failures as early as possible, and should be a mandatory requirement for all IT projects regardless of business sector.