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’.
In software project management, software testing, and software engineering, Verification & Validation (V&V) is the process of checking that a software system meets specifications and that it fulfills its intended purpose. In the context of testing, “Verification and Validation” are very widely and commonly used terms. Most of the times, we consider the terms same, but actually the terms are quite different. In this article we will first explore Verification vs. Validation and then move on to its practical application in Software Testing.
Better Test Data management means faster delivery of applications, and ultimately, faster achievement of business objectives. Companies that fail to invest in Test Data management put themselves at risk of falling behind.
Waterfall Methodology for Software development, introduced in 1970 by Winston Royce, is the pioneer of the SDLC processes. In fact it was the first model which was widely used in the software industry. Despite many new models being introduced, the Waterfall methodology is still the dominant process model. Additionally it is important to learn the know-how of Waterfall model in order to fully understand the emergence of Agile development methodology.
Software Testing Levels are the different stages that enable QA team to deliver a Quality Software; Unit > Component > Integration > System > Acceptance!
Test Environment is nothing but a replica of actual production environment (being used by end-users) with close-enough hardware and software configurations, where the testing would happen for the developed application.
Continuing on our tryst with Bollywood’s Karan-Arjun, let’s read about some more important duos in the field of Software Testing!
Similar to Bollywood’s Karan-Arjun Shahrukh Khan and Salman Khan, in Software Testing too we have multiple important duos. Let’s have a look.
Independence & Freedom – everybody likes it. Wants it. Fights for it. And finally celebrates it. It gives you the objectivity to express your views & opinions. It is essential for a thriving society where the mind is without fear & the head is held high. As India celebrates its ‘Independence Day’ on August 15th, let’s see what it means for a Test team.
The world is driven by beliefs. It may be in God or Technology. Over a period of time every society lay down a set of philosophies or values for better organization & operation. Similarly, any technology has its own fundamental principles which have been proven right as the time elapsed. ‘Software Testing’ is no different – it also has a set of 7 fundamental principles that are proven right over the time.
Will you start testing in parallel with development or only after the development is completed? What about testing at the code-level? i.e. code reviews to ensure best practices are followed. Will it only be reviews or will you actually run the application to identify defects? How about utilizing some automation tool to ease the process? Or will it be hybrid?
What’s your strategy & approach to career development? Already planned it? Or still planning? You can surely utilize some industry-proven techniques, right? Similarly ‘Software Testing’ is also a process which involves strategy, approach, proper planning & using the best techniques. But before jumping on to these terminologies, first & foremost – Test Strategy & Test Plan are actual documents whereas Test Approach & Test Technique are conceptual. Test Strategy document will include your project’s particular Test Approach, apart from other details.
This topic may seem simple to many, but despite of hundreds of web articles – Smoke, Sanity, Retesting & Regression are the most misunderstood topics in Software Testing. There is enormous amount of literature on the subject, but most of them are confusing. The following article makes an attempt to address the confusion. Before understanding these terminologies, first & foremost you need to understand the concept of Software Build.
How do you ensure test coverage? – One of the most common interview question. After all, client doesn’t want anything skipped in testing & then face the embarrassment of end-user failure in live application. What’s the basis for the Test coverage? Yeah! Requirements – functional, technical & non-functional – every single requirement needs to be tested. What if by mistake the Test team over-looked one of the requirement & didn’t write test cases for it? How will a Test Manager or Client come to know about it? ‘Requirement Traceability Matrix’!