IT teams and testers have been challenged by automated testing for decades now. It seems to me that many organisations haven’t really cracked the nut yet with regards to functional automation and many (too many) automated testing efforts fail to meet their objectives, budget and stakeholders’ expectations. Expectations seem to be lower for load and performance testing. I’m not sure if this is because it’s perceived to be more difficult or the risk is perceived to be lower or both. Either way I don’t think that’s true, but that’s for another post. There isn’t much conversation happening yet about automated security testing - yet. I find this strange considering 47% of companies surveyed for this year’s World Quality Report said that enhancing security is part of their IT Strategy. The number of security breaches is increasing – the 2018 Cyber Security Breaches Survey shows 43% of businesses in the UK experienced a security breach in the past year.
We’ve all seen sci-fi movies where robots take over the world, that is until Will Smith (or similar) steps in at the eleventh hour and saves the day. But like a lot of movies made, they do have a good knack of portraying what the future might hold, whether that’ll be a home robot for doing the daily chores to an all singing all dancing fully autonomous home.
Even today, in the modern world of DevOps, I see this all too often in automated test code for regression tests:
Test planning, it’s that task testers are often asked to perform at short notice and frequently without enough information. It’s something that sounds like it should be easy, but all too often turns into something more challenging. As testers, we also find that we sometimes become accountable based on a test plan that was formed in a hurry without enough information to begin with. Is there anything we can do to avoid this?
As another year starts, we can look ahead to what will be trending in 2019. We all know that ankle gracing trousers, wearing brogues without socks, growing a hipster beard (again) and heading to Greggs for a vegan sausage roll will all make the headlines, but with tech trends it’s a little different. A few years ago, we predicted Multi-Cloud (now commonly called Connected Cloud), Big Data (Data Analytics), AR and Cyber Security would be prominent, which to be fair they are still front runners for making the top five, but the way in which they are adopted and implemented has somewhat changed due to other factors that complicate but enhance the IT landscape.
If we were to visit the town where I grew up, I could take you to any place in that town without having to use Sat Nav. I wouldn’t even have to glance at Google Maps to find my way.
Where is the Value?
As we know, we cannot test everything. This is especially true for End to End testing. This activity is often carried out at the end of the Implementation phase after System testing has completed. There will be many paths through the software and to test them all will be a large task. So only critical paths are tested through the system that provides an acceptable level of test coverage. Add automation into the mix, and this can become extremely challenging at the end of the delivery cycle. Teams often accept that the effort required for automating the End to End tests is too much of a risk to a timely delivery. Often, it is cut down to small manual End to End tests as an afterthought that adds little value to the overall quality or post-release teams. Ironically, this is where it adds the most value!
It goes without saying that all apps whether they be native, web or hybrid must make a great first impression on the end user when it comes to their functionality and usability. In the real world however, extensive testing and the usability of the app is often overlooked. Not only does this lead to apps that don’t really satisfy the needs of the target audience but sometimes means the app isn’t able to fulfil its purpose.
Whether a system is to be used internally by your work force or externally by your customers, it’s stability and performance directly correlates with your success.
Testing quite simply is the backbone of every project, it’s not hard to state that testing has a place in each part of the System Development Life Cycle (SDLC). Employing a poor testing methodology will lead to the production of an unstable product and most likely one that will cost you more money and time.
Topics: Software Testing