TESTING PRINCIPLES

 

Hi Here Is my view About Testing Creamy Information that every testers should know

Stay tuned with my Blog. I am gonna to share My views about testing and new methodologies I use.
Testing is an Vast ocean. Not having a particular methods and approaches. It keep changes on.

What is Testing?

I will never say Testing is nothing but delivering the project to the client with maximum error free and satisfying the application users . In a definition( verification and validation).
Tester is to provide  clients with visibility in to the project and to make their decisions.

BUZZ:

 ->Executing process under +Ve and -ve.

 

 ->Error(developer)->test= defect

 

 ->defect->(developer)=Bug

 

  ->Build that does not meet the requirements is called=failure.


Why we need Testers? As now 0 QA is Booming?

Everyone have a view that why we need testers?

1. A new features may be forgotten by  the developers during development.
2. Developers doesn’t have outline of how the users will test(use) the application they developed.
3.We testers put a lot of effort to trace bugs and reports.Though the bugs might be rejected by the developers as low severity, To the user it seems to be a big mistake.
4.Performance, security are the two pillars which makes our application to reach a hike to the society. only the testers  have a mindset of  users point of view.
5.He may think out of box, all possible scenarios,tested in a neutral way to see unbiased results. This can only done by a third person (testers).

If anyone asks are you just  a tester 🙂  ?

yes say with proud. I may sound with roar at some lines. It is not to blame developers. But to emphasize the necessity of the tester.

It will be useful for beginners as a Tester:

As we are  familiar with SDLC and STLC I will go with testing creamy layers

7 Software principles:

1. EXHAUSTIVE TESTING:

Testing the application beyond the out of box. For an illustration : opening 10 different application at a time and see how the operating system reacts.

In testing it might apply during performance testing.

uploading an image of size more than 5 mb out of 2mb
adding 100 users per second ->check how fast the response?

2.DEFECT CLUSTERING:

Cluster in a sense a group. It explains in a project small modules can contain lot of errors.This method will work when the project delivery span is too short.

In my experience, First explore the application, do random testing, then find the module that contains more errors(find it by your experience).80% of the errors contain in 20% of the modules.

Test the modules first do in depth testing. Now 75% of the bugs are covered. The remaining bugs can be covered by checking in depth module wise.

3.PESTICIDE PARADOX:

In farming farmers will never use the same pesticide to the crops through out the year. likewise testers should use different testing approach for every project.

yes I understood. It depends on the application. testing doesn’t have a constant approach. It depends on the application.

banking Application core is accounts (we need to check math capability is handled in all the fields)
Shopping Applications core is Integration testing, browser compatibility,performance and UAT

While developing shopping and e cart applications you can use bottom up and top down approach.

(top down and bottom will be discussed later)

4.TESTING SHOWS THE PRESENCE OF DEFECTS:

Testers work hard to find the bugs that literally shown int he upper layer of the modules in testing. Testing shows the presence of bugs but we should work hard to find the absence of errors.

I ll illustrate the example with my experience

checking the amount field. we check for integer, decimal (by entering numbers)->presence of defects
entering (letters) checking for float extension  (after point it accepts 16 digit), Integer(32),round off value->these are the absence of defects.
this is just an small example for number field.

5.ABSENCE OF ERROR:

Yes. software with 99% error free is a fame. but it can achieve with checking the application thoroughly with negative testcases.

This can done by writing negative test cases.

example: consider this program

#include<stdio.h>
int main()
{
int a=3;
int b=5;                                                                     output: (3*5)+7=22
int c=7;
int s;
s=(a*b)+c;
printf(“%d”,s);
}

we can write the negative test data  for this let we try 🙂

1.  put int a= -3.99 &  b= 99.4678907522
2.  put int a= -1.0   &  b=-0.01
3.  put int a= 50   &  b=-0.01
4 .put int a= 3   &  b= 7 & c= -0.01
5.check how the error throw whether it is understandable by users
6.data type is integer try with float

6.EARLY TESTING:

Most of the testers will start testing only in the development cycle. But that will never give 100% UI compatibility. testing should start with the design phase. so that, UI issues can rectified earlier.

7.TESTING IS CONTEXT DEPENDENT:

As we discussed earlier testing methods and approaches should be differ based on the application context.

Documents by qa & Pm

Testcase & scenario

Estimation Techniques In Detail and Simple

How Good Ux should look like

State Transition Table and Testing

Advertisements