Purpose, noun, the reason for which something is done. Recently a discussion was started by one of the Testing co-blogger at LinkedIn “What drives Quality Assurance? What is the purpose of Software Testing?” A relevant discussion indeed. They say “If you’re not working with purpose, you’re doing it wrong.” This triggered me to put on the thinking hat and pen down my perspective of ‘Software Testing Goals’.
Defect Leakage is natural. It’s common. If you build a software, bugs will be there. Similarly even if you Test a software, you cannot prove their absence. But we can do our best to eliminate maximum of them. Typically in most of the projects even if you complete functional testing (system testing) without any time & cost constraints, still UAT team (Business) manages to catch some more bugs. Any idea why? There has to be something missing in the system test coverage. What is it?
From the time I am blogging, it makes sense to me to pen down my sudden thoughts. Many a times you come up with an idea, memory, solution, problem, anything and it is lost since we don’t remember it in future. That’s when I started writing my sudden thoughts about Software Testing and guess what, the ‘Sudden Thoughts of a Software Tester’ is getting a lot of traction on my Social profiles. So thought of sharing it with you all. Here we go…
Unless you took a refugee or voluntary retirement or moved to Himalayas, you must be aware of the ‘Virtualization’ and ‘Cloud Computing’ concept. Cloud computing has passed through the stage of hype to become a reality of modern enterprise infrastructure. Every other Tech giant has its cloud offerings, be it Amazon, Google, HPE, IBM, Microsoft or Salesforce. And how did it impact the Testing landscape? Yeah! Every big innovation in the technology space has its parallel influence on the Test processes & techniques. In no time testing evangelists started exploring the Clouds and came up with new Test approaches suited for the Cloud. Cloud Testing started trending in the town and I too jumped into this bandwagon. Yes, recently I have been working on a Salesforce Marketing Cloud project and OMG! Cloud Testing is so different..!
Today most of the organizations are moving or have already moved to agile development and testing. Or at least they think so. Sprints and daily stand-ups are common. Everybody is talking about Scrum & minimum viable product. We are tracking the team velocity & burndown. We have cut down on the documentation & invested in working software. Everyone is focused on customer satisfaction by accepting change. But wait a minute! This is too-happy a picture to be true.
Father’s day, a customary day for the celebration of fatherhood. Ever wondered who started the Software Testing practice? Or who is the pioneer of Software Quality? Who invented the Internet and the World Wide Web? Who wrote the first ever program? Who built the computer? Leave it all, who is the father of computing? On this Father’s day, let’s know about and thank the fathers of technologies shaping our present and the future!
Recently a lot has been written & talked about the future of Manual Testing. Manual Testing is indispensable part of ensuring a high quality software. On the other hand, Automation Tests help you cut down the release cycle time. But usability & human behavior cannot be automated. With reduced time-to-market there is an added pressure on enterprises to seek automation alternatives. With the rise & growth of new technologies, people are more interested in scripting. But Manual Testing is the input to Automation scripts. Unless AI technology matches a human brain, Manual tests are best kept ‘manual’. You cannot automate everything. Cut the crap! Whatever be the debate but still Manual testers are finding it hard to stay relevant in today’s job market. Why?
Most of the QA professionals are among the smartest people on this earth who often boast advanced degrees in engineering, mathematics or computer science. In some ways, we are like Superheroes – capable of breaking down a whole application and defeating an army of programmers with our defects, testing complex functions, juggling numerous technologies, ensuring customer ideas morphed into working software, all the while not breaking a sweat. So how is it that despite such technical savvy, programming prowess and quality driven attitude, we are defeated at test estimation front?
I have a strong functional test experience but no automation. I ‘know’ automation testing but don’t have the project experience. I am a Test lead but didn’t write any automation scripts. Analytical & logical but never did project coding. Found in-numerous bugs but didn’t prepare automation reports. Managed a big team but didn’t learn performance testing. Documented every report but didn’t produce framework guides. Enjoyed exploratory tests but didn’t script pre-defined test cases. Helped BAs and even developers (in debugging) but never developed automation framework. Understood domain & application flows but didn’t write code. Open to learning but no opportunity. Self-learned programming & tools, but didn’t get practical project experience. Passionate about Software testing but now it’s Software Developer in Test.
Though the aspiration for being a successful IT professional is strong, we assume that the word ‘IT professional’ is synonymous with ‘Developer’. When a testing opportunity presents itself, there are many doubts in our minds and we often wonder if it’s the right career move or not. While being a developer is great and has immense potential, it should not be concluded that being a tester means the exact opposite. Let’s explore the reasons behind the perception – Software Testing is inferior to Development,
Steve Jobs. J.K. Rowling. Walt Disney. Oprah. What do all these famous people have in common? They’ve all been fired. If you’re currently staring at your own pink slip – or anticipating one in the near future – you can take a tiny bit of comfort in knowing that you’re in illustrious company. In today’s tough economic times it’s inevitable that the season of joy and mirth brings news like this. Whatever the reason, getting fired sucks, big time. It can be one of life’s most stressful experiences, your feelings of self-worth and self-esteem are dealt a blow. The first reactions to getting fired are usually anger and pain, followed by feelings of confusion and disillusionment. It’s like getting dumped in a relationship, except you lose your paycheck too. However the good news is that losing a job is not the end of the world and with the right approach and perspective you could turn something bad into something positive. And that means taking a deep breath, getting yourself together, and looking at your situation.
In an agile business, automation is becoming an essential process. Companies are now taking advantage of automation testing tools to increase their efficiency and productivity. Automation is frequently evangelized as the cure-all of software quality woes. Some of the benefits that accrue from automated tests include test reusability, repeatability and coverage besides the savings on effort, time and cost it takes for execution (compared to manual testing). However it’s NOT the answer for everything. Test automation, while being able to improve numerous aspects of software development, has limitations that developers and quality assurance teams should be aware of from the start. Understanding these limitations of automation testing will help us devise an efficient & effective automation strategy.
Quality – Why is this word so important for your software? Software teams today involve a number of people: developers, testers, support engineers, designers, product managers, and executive stake holders. A low quality software impacts all of these or in other words everyone in the team is responsible for the quality of software delivered. When we look into the overall effectiveness or cost manual testing still have a pivotal role to play. Unfortunately, very little discussion is only happening on how to improve efficiency of manual testing instead most of discussions are happening on how to increase the level of automation. Many of us would advocate the fact that Manual Testing is no longer needed, and I know it well why they think so. It is mostly because of the drawbacks and challenges associated with Manual Testing.
Automation testing is a concept that is heavily marketed today. There has been a real convergence of tools and approaches in automation in recent years. It’s increasingly considered as integral to project delivery, rather than something that exists to cover business-as-usual regression testing after project completion. Faster releases, increased test coverage, frequent test execution, faster feedback to development team, just to name a few are being counted as some of the Test automation benefits. Automation is being portrayed as the silver-bullet in testing technology. But everything is not so ideal. Not every organization (or client) is reaping the actual benefits of Test automation. Certain Automation testing myths must be addressed in order to correctly apply it in the most effective & efficient manner. In this article we shall examine some of the most common automation testing myths and how these prevent organizations from succeeding in Test automation.