To reply to the issue posed within the title, we have to know very well what software tests are. Actually, it’s comprised of two components:
verification: shall we be building / doing the best factor?
validation: shall we be building / doing the work right?
Verification enables us to be reassured that we’ve understood what you want to achieve, and validation helps to ensure that what we should get matches that, in addition to being well-implemented. This is not just relevant to software development, either, once we shall see.
Must You Do Software Testing?
If you’re managing a project which involves computers, then you will have to perform some software testing. In the simplest reason for interaction, this could just be ensuring a bit of software does what you would like (needs testing) before you decide to roll it through the organization.
For individuals positively commissioning software to become produced (whether it’s a simple implementation of the WordPress blog or perhaps an Application), software testing becomes an essential milestone within the plan. Software developers shouldn’t be entrusted to do every aspect of software testing, but simultaneously it’s the responsibility of individuals commissioning the program to make certain their needs are accurate.
You can’t blame a developer for delivering something which does not satisfy, when the needs are unclear or incomplete. This is actually the first stage of testing.
When (within the Project) Should Software Testing Be Practiced?
Software testing ought to be performed in the earliest chance. Encouraging agile techniques that lead to early delivery of (even incomplete) software programs enables testing to begin early on that course corrections could be transported out in a relatively small cost.
The later these same corrections are essential, the greater they’ll cost. The priciest time for you to fix an item happens when it’s finished – sadly, so many people have confidence in departing software testing towards the finish from the project, which plays a role in the failure statistics in software development projects.
When (within the Development) Should Software Testing Be Practiced?
Again, the solution to this really is simple to say – as soon as possible.
Like a developer (programmer/scripter) it’s your responsibility to provide fault-free software application. Now, this is not always possible because of some time andOror financial constraints, but it ought to be the goal.
To attain it, testing each bit of code individually must be conducted and to achieve that, you should know exactly what the outcome (expected result) of executing the code under various conditions ought to be. This, consequently, uses completely and correctly tested design.
So, testing must begin as soon as possible – in the design phase – and continue right through to integration testing.
The suggestions above is true for other projects, too:
needs testing: is that this really the site, report, outcome, application / application that you would like?
component testing: do the various parts which have been selected / produced do what we should expect?
integration testing: do all of the components interact correctly?
stress / performance testing: could it be scalable?
These four facets of software testing are as relevant to developing an application, web service, or standalone shrink-wrapped product because they are to something as apparently disparate as creating a house, creating a F1 vehicle or managing a shop.