Showing posts with label Complete Testing Material: Manual Testing Basics. Show all posts
Showing posts with label Complete Testing Material: Manual Testing Basics. Show all posts

Saturday, 18 April 2015

Software Testing is Difficult and Hard – What You Say

Software Testing is Difficult and Hard – What You Say

Software Testing is essential for the betterment of the application and software. But apart from this many of us do not know that Software Testing is most time consuming and difficult task to perform.

People still believe that Software Testing is an easy task anybody can do it easily but in reality Software Testing is opposite of it because it is not an easy task to perform. Software Testing is as difficult as developing software because now days it requires more human efforts, as everyone wants quality so doing Software Testing are become difficult because it takes lot of time and money.

Software Testing – Hard and Difficult:
Performing Software Testing is considered as Difficult as well as hard too because of the following reasons which are shown below.

1. Software Testing is hard and difficult because we need to test the software/application for both valid and invalid inputs and in Software Testing we also check the performance parameters as well as functionality too.

2. Another reason for considering Software Testing hard as well as difficult because during the time of testing we always need to give the inputs in such a way that each and every line of the program/code is tested efficiently.

3. Another reason for being hard and difficult is that tester needs to give inputs randomly and ensure that the software/application never fails.

4. Another reason is that we need to test the software by keeping the user perspective in mind means by keeping in mind how end user is using it and check whether the error messages displayed properly or not.

5. Another main and clear reason is that we need to test the application/software by simulating the actual/real environment. Considering example if a database application has to be accessed by 200 users simultaneously, then it is not enough if you test the software/application for 5 0r 10 users and declare that application/software is working fine by leaving the software without checking all 200 users simultaneously.

6. Software Testing is considered as hard and difficult because in several cases, it is not almost possible to test the software/application in real/actual environment. Considering example how do you test the software that is used in a satellite launch vehicle or a missile? You can do the complete testing only in a simulated environment.

Your opinion:
This is all I know about why Software Testing is considered as hard and difficult task to perform and if you know some more reasons than you can discuss with me in comments to help others so that proper guidance will be given to every people those who are in the field of Software Testing.

Endurance Testing with Example, Meaning and Definition

Endurance Testing with Example, Meaning and Definition

Endurance Testing is a type of Performance Testing which is usually used to determine how much a system can sustain the continuous expected load. During the period of Endurance Testing memory utilization is always monitored to detect any potential leaks.

In short we can say that judging/studying the memory leak of a server under the period of stability is known as Endurance Testing. Due to its judgement and study on memory leak that is the reason why Endurance Testing is also known by the name Soak Testing.

As you know in Endurance Testing memory utilization is monitored so it very important for us to know about memory leak means what it is all about.

When memory allocated to objects are not being freed by the system/application than definitely the memory leak occurs.

Endurance Testing Example – Real Time:
Below is given the real time example of Endurance Testing and hope after seen these real time example your knowledge on Endurance Testing should definitely be increased.
For example in the closing days of bank we have continues load on that days so we always test the banking application by keeping in mind the Endurance Testing.
So in Banking Application we always test how much a system/application can sustain the continuous expected load during the closing days of Bank, so it is Endurance Testing Example done on real time Banking Environment.

Endurance Testing Definition:
Below is given the definition of Endurance testing which is only a one line definition but clears you a most.
Endurance is an ability to handle continuous load in a difficult/unpleasant situation over some long period of duration/time.

Endurance Testing Meaning:
You can estimate what an Endurance Testing is by discovering the meaning of word “Endurance”. Endurance means capacity/fitness so in other words you can say Endurance Testing means Capacity Testing. By Capacity Testing we mean how much a system has its capacity by handling the load for continuous period of time.

Note:
Please note that Endurance Testing applies a huge but natural load arrangement of transactions to the system/application for a continuous period of time.

Conclusion:
At end we conclude that Endurance Testing is also known as Longevity testing which is used in Load Testing that is the reason why it is considered as the type of Performance Testing. So after seen the post if you have any sort of issues related to the Endurance Testing than, discuss it here in the below comments section.

What is Random Testing with example? | Manual Testing Tutorial

What is Random Testing with example?
Random Testing is also confused with Monkey and GorillaTesting but it is obviously different from Monkey Testing and Gorilla Testing. Here I am writing the post on Random Testing which clears what a Random Testing is and how it is different from Monkey and Gorilla Testing.

Random Testing – Complete Guidance:
Random Testing is a black box test design technique where test cases are always selected randomly means by using an algorithm named pseudo random generation, which is used to match an operational profile. This technique of Random Testing is always used for non functional testing attributes such as performance and reliability points.

Random Testing Approach and Method:
As the name gives you the answer there is no specific approach to perform the Random Testing because it is an ad-hoc way of software testing. In Random Testing tester always picks some modules randomly to test by giving inputting random values.

Random Testing is a method which is always used to exercise a class. Random Testing is totally based on developing a randomly based test sequence that always tries the minimum number of operations usually to the behavior of the class.

Random Testing Example - Proper Guidance:
Below is given the best example on Random Testing which clears more means what a Random Testing is all about.

For example you are testing a website which is full of images means website is totally based on images and there is less content on that. Now as you know it is time consuming to test all the images so you randomly select some images to test than it is Random Testing.

Suppose there is a page name Samsung Mobile and there are fifty images on it so it is almost impossible to test all these images manually but you test the images randomly to check whether they are displaying properly or not means there is no broken images on that page. You test the images randomly like firstly you test the first image than you leave the next two images than you test the 4th image and so on.

So in this way you perform the Random Testing by testing the images randomly means you do not test all the images instead you test it randomly.

What you say – Feedback Welcomed:
This is all I know regarding Random Testing now what you say about this testing means how much you like the post and what suggestions you want to give because your feedback are always welcomed, so give your opinion and thoughts to help others regarding the very spectacular post of Random Testing. 

Friday, 17 April 2015

Difference between Sanity and Regression Testing

Difference between Sanity and Regression Testing

Distinction between Sanity and Regression Testing


Conclusion:
At end we conclude that these are the quick and simple Differences between Sanity and Regression Testing in tabular form but the main difference is in its use. We use Regression Testing when we have enough time for Testing, and we use Sanity Testing when we do not have enough time for Testing.
But keep one thing in mind that purpose of both the Regression and Sanity Testing is same; the only difference is in its use. 

Difference between Functional and Non Functional Testing

Difference between Functional and Non Functional Testing

Before us proceeding towards the Difference between Functional and Non Functional Testing it is very important for us to first take a brief look at Functional and Non Functional Testing.

Functional and Non Functional Testing is what?
Functional testing is performed using the functional specifications provided by the client or you can say by using the design specifications like use cases provided by the design team.

In this, tester has to test the application to see that all requirements of the client which he has said in SRS and BRS have been incorporated or not.

Non Functional Testing is that which is always concerned with the client expectations like performance, load and stress issues and so on.

Distinction between Functional and Non Functional Testing



Exact Difference between Adhoc and Exploratory Testing

Exact Difference between Adhoc and Exploratory Testing

Difference between Adhoc and Exploratory Testing




Difference between Smoke and Regression Testing in Tabular Form

Difference between Smoke and Regression Testing in Tabular Form

Distinction between Smoke and Regression Testing - Simple



Exact Difference between GUI Testing and Usability Testing

Exact Difference between GUI Testing and Usability Testing

Exact Difference between Unit Testing and Integration Testing

Exact Difference between Unit Testing and Integration Testing

Difference between Use Case and Test Case in Table

Difference between Use Case and Test Case in Table

Difference between Manual and Automation Testing:

Difference between Manual and Automation Testing:

Difference between Manual and Automation Testing is the pillar of Software testing, because whole testing is based on Manual and Automation Testing. In a project you can do either Manual or Automation Testing and you can also do both Manual and Automation Testing simultaneously.

Complete Difference between Manual and Automation Testing


Explain Smoke Testing Example in Easy and Simple Way?

Explain Smoke Testing Example in Easy and Simple Way?
Smoke Testing Example is always confused with Sanity Testing Example but in reality both the testing examples are different with each other. Here I am writing Smoke Testing Example in such a way that your confusion can definitely be removed by seen the example.
Now before us proceeding towards Smoke Testing Example it is very important for us to first take a warm look at Smoke Testing.

Smoke Testing – Brief Look
Smoke Testing is considered as the surface level testing which is always used to validate that build provided by development to QA team is ready to accept for further testing. In Smoke Testing we test the major point’s means major functionality of the application and it is also known by the name Build Acceptance Testing (BAT).

Smoke Testing Example – Real One
Smoke Testing Example is given below which is totally based on Real Practical Scenario means which totally reflect your software testing process in a company environment.

For example we are working in a small project named Employee Management System and in this project there are four modules like New Employee Module, Existing Employee Module, Admin Module, User Module etc. So firstly in this four modules development team performs the Smoke Testing by executing all the major functionality of modules like New Employee is able to login or not and after login new employee can seen the record of the existing employee or not, and employee that is created can also be edited, deleted or not.

So in this way Smoke Testing is done by development team before releasing means submitting the build to the Software Testing team.

Now when the build is hand over means releasing to the testing team than the software testing team has to check whether to accept or reject the build by checking the major functionality of that build. So as you know we are taking the example Employee Management System, so our build is Employee Management System.

Now when the build (Employee Management System) is submitted means release to the testing team than the testing team has to check whether to accept the build (Employee Management System) or not by checking the major functionality of the build like employee is able to login or not and after login they can seen the existing employee record or not and after that logout easily or not. So this is the Smoke Testing done by Software Testers.

Keep in Mind
Please keep one thing in mind that firstly Smoke Testing is done by developer before releasing the build to the tester and when developers done the smoke testing than they releasing the build to the testing team and then testing team decide whether to accept the build or not for performing further testing by checking the major or you can say essential functionality of the build.

Conclusion
Smoke Testing Example is widely used and Smoke Testing is always done whenever we have to accept the build means before accepting the build we do smoke testing to check whether we accept the build or rejected (Refused).

Explain Regression Testing Definition, Meaning and Approach?

Explain Regression Testing Definition, Meaning and Approach?
People are confusing regression testing definition with its meaning and approach although they look like similar but there are few minor changes on regression testing meaning and approaches which are shown below.

Regression Testing Definition with Example:
Checking that fixed bug do not affect the other sections of the modules by checking the functionality and other scenarios of testing on different modules and within the similar module in which bug is fixed is known as regression testing.

Note: Do not confuse regression testing with re-testing because in re-testing tester only test whether the fixed bug is getting fixed or not by re-testing it.

On the other hand in regression testing tester only tests that fixed bug do not affect the other parts of the modules and do not bother and take less stress about whether the bug is fixed or not.
Exact Meaning of Regression Testing

Regression Testing Meaning is given below:
Regression Meaning is relapse or reverting so meaning of regression testing is “relapse testing” means it is done in two situations or you can shortly say in two conditions.
1. First condition is after fixing the bug by checking and ensuring that fixed bug does not affect the other parts and functions of the modules.
2.Second condition deals with change in requirements means when client change the previously done requirements than tester have to test that changing requirements do not affect the other requirements of the application which are done means completed.
Significant Approach of Regression Testing

Regression Testing Approach is given below:
As you know there are two approaches for integration testing like top down integration and bottom up integration similarly we have the two approaches for regression testing.
1. First approach is doing the regression testing when bug is fixed.
2. Second approach is doing regression testing when change in requirements of the client. 

Explain Bottom-Up Strategy of Integration Testing?

Explain Bottom-Up Strategy of Integration Testing?

Bottom up strategy just as the name itself clears, is the opposite of powerful top down strategy. This sort of mechanism starts with building and testing the modules first which are obviously comes under the category of low level, than definitely proceeding towards the working its way ups the hierarchy.

BOTTOM UP STRATEGY BENEFITS
The advantages of bottom up integration are like that:
1. There is never urgency or hurry for any kind of program stubs as we always start developing and testing with the definite or absolute modules.
2. Always Starting at the bottom of the hierarchy again means that the critical modules are generally built and tested first and therefore any errors or mistakes in these forms of modules are find out early in the process.

BOTTOM UP STRATEGY DRAWBACKS
Apart from top-down integration, there are some disadvantages of this procedure too which are given below:
1. In respect to test the popular modules we have to always form the test drivers first because they are more confused than compare to stubs. Also in addition to test these modules they themselves have to be tested so more time and efforts are needed to accomplish this complicated task.
2. One big disadvantage of bottom up strategy is that in this sort of testing no working model can be represented or you can say guided or tested as far as several modules have been built. This again means that a little form of errors in any of the interface is cached very late in the process.

Explain Business Process Testing? | Manual Testing Tutorial

Explain Business Process Testing?
Business Process Testing is abbreviated as BPT which guides Subject Matter Experts (SMEs) to design always QA tests early in the development cycle and in a process which is script-free also.

BUSINESS PROCESS TESTING CONSISTS OF FOLLOWING:
1. Some Reusable Business Components.
2. Those Business Components who are converted into Business process test.
3. Business components which are reusable units and that always performs a general task in a business process. (For example – Add to Cart).
4. A business process test means it is a scenario comprising about business components (for example - Place an Order).

HOW DOES BUSINESS PROCESS TESTING (BPT) WORK?
Business Process Testing means it is based on the creation, implementation, and running about business components in business mechanism tests using the following parts:-
1. Few Quality Center Business Components: - Business Components module enables you to always manage some reusable business components.
2. Some Test Plan: - Test Plan module always enables you to drag the components into business process tests, and debug the components also.
3. Some Test Lab modules: - Test Lab module enables you to run business process tests and view the results also.

BUSINESS PROCESS/MECHANISM ROLES AND WORKFLOWS
In business process testing SME (Subject Matter Expert) has the few roles to play like: -
1. SME defines and creates components.
2. Combines components into the business process tests.
3. Can also automate components.              
4. Always checks the business process test and application.

In business process testing AE (Automation Engineer) has the few effective roles to play like: -
1. Automation Engineer (AE) creates application areas.
2. Involves in Object repository.
3. Involves in Recovery scenarios and
4. Debugs the scenarios too.

Business Process Testing is always considered as a role-based testing model. It always enables Automation Engineers and SME (Subject Matter Experts) to work together to test a behavior of business processes during the period of application's development life cycle.

Automation Engineers are obviously experts in the field of automated testing. They preferably use Quick Test to define the resources and settings needed to establish components, which are the building blocks about business process tests.

Subject Matter Experts always understand the various parts of the application being tested, as well as the few business processes that need to be tested, however they may or may not necessarily have a spectacular knowledge of some programming needed to create automated tests.
SME use the Business Components and Test Plan modules data in Quality Center to create always keyword-driven business mechanism tests.

Integration between spectacular Quick Test and Quality Center always enables the Automation Engineer to create securely and maintain the required resources and settings.
While on the other hand it enables SMO (Subject Matter Experts) to create and implement business process tests in an effective environment which is always script-free, without the urge for any programming knowledge.

How to report a bug in small companies?

How to report a bug in small companies?

Bug is a mismatch between expected result and actual result. Hope as a tester you know regarding expected result and actual result.
As a tester whether you are working in small companies or in top MNC, when you detect the bug you have to report it.
But the pattern for reporting the bug differs from companies to companies like in top MNC’s tester’s always reporting the bug through bug reporting tools.
So various Open Source bug reporting tool available today but popular one is Bugzilla and Mantis, but Mantis is easier and user friendly than Bugzilla.
As people always knows that there are 1-2 testers in small companies so in these companies testers never report the bug through bug reporting tools. Testers just orally talk it to the development team that in this module we catch the bug so fixed it.
And similar thing happens it to the developers squad when they fixed the bug they just call the tester to his and her seat and said that check whether bug is fixed or not.
But you know this is not the appropriate or right way to communicate because we are working in a professional environment so we have to follow little documentation also.
Now the question arises in every people mind that how a tester report the bug in small companies without orally communicate with the developer.
Bug Report Sample - How to report a bug in small companies
In small companies where testers not working on any bug reporting tool they can report the bug through Microsoft Word and Excel.

Bug Report Example:
Considering example you are performing testing on login module and you find the bugs like when you login with xyz name so after login on home page it displayed the name as ABC.
Now you know it is Bug so how to report it through Microsoft word please sees it below.

Bug Report Sample:
Summary: Wrong login name is displayed.
Description: Wrong login name is displayed on Home Page.

Steps to Follow or Chase:
1.      Enter the URL Http:// ----------------- in the address bar.
2.      Fill the username field in login form.
3.      Fill the password field in login form.
4.      Click on login button below the form.

Test data: Enter xyz on username field.
Environment: Windows 7, Safari like that.
Actual Result: After login with xyz wrong login name is displayed on home page likes logged in as ABC.
Expected Result: Proper logged in name should be displayed on home page.
Screenshot:  Attach the screenshot here on where you detect the bug and save it in jpeg format.
Please note that summary should not be more than 10 words and description should not be more than 20 words.

CONCLUSION:
In this way in small companies tester can report the bug to developers. And we always knows that small companies do not report the bug through bug reporting tools but this statement is not true in all small companies because even several small companies report the bug through bug reporting tool.
But those companies or organizations that are not following any tool they should have to report the bug through Microsoft Word and Microsoft Excel which I mentioned earlier.

Is Software Tester Should Be From High Qualification Background?

Is Software Tester Should Be From High Qualification Background?

As a tester this question is my personal experience interviewer asked from me that do you feel software tester should be from high qualification background.

And definitely I just little surprised to hear that this pattern of questions can also be asked by interviewer because as a professional means software tester I never heard regarding this form of questions before.
On that time me just smiled and simply say no Sir I do not think software tester should be from high qualification background.
He softly smiled and replied to my answer that why and how you think so and simply say I believe that software tester should be from high qualification background.

Then again he replied this means according to your concern my answer is completely wrong what you say.
And quite politely I replied that sir your opinion is also right too but it may diverge from companies to companies because some companies want well and good educated people and some want well knowledgeable people.
Then quite politely he replied that how means can you prove this justify your answer briefly. Then I replied having the good qualification is good for your job and growth but what about others people who are not educated properly due to many problems like financial problems or some personal problems.

But now he and she want to prove themselves so forget about their past education see their present education means knowledge because it is again the possibility that some people who are not educated properly have more knowledge in their domain field as compare to people who have some good qualifications with them and on domain knowledge they are zero.

So I never thinks that software tester should always be from high qualification background because it’s not matter that software tester should be highly qualified the thing only matters that he and she obviously should have some good knowledge on their domain field.

But this sort of opinion is not true with all of the large companies or top MNC’S, because they not allowed the person in their companies who are less educated.

These companies only allowed those people to do job in their companies or organizations who have some good qualifications and good percentage of marks. But keep thing in your mind that it definitely may be the possibility that a person who is not educated properly but in knowledge he and she is expert than educated one.

Example:
I also have a real life example too which I think is most important to discuss it here because it simply clears that having high qualification is not matter at all, the only thing matter is your passion and domain knowledge.
You know very popular name bill gates the chairman of Microsoft was failed in some subjects and his friend was passed in complete subjects so now he is the owner of Microsoft Company and his friend is an engineer at Microsoft.

Conclusion:
Shared above mentioned point of bill gates because obviously want to tell my whole friends who are not gaining education properly means who are not educated much but they have the knowledge and passion especially my software tester’s friend that always learn from popular personality bill gates and don’t be upset if you are not more educated properly.
But keep your knowledge far away in your field and prove yourself in the whole universe, that people who are not always educated so much can also become a good and popular software tester and do anything in life.

Explain Top-Down Strategy of Integration Testing?

Explain Top-Down Strategy of Integration Testing?

Top down integration is primarily considering as an approach where modules are developed and testing of that modules always starting at the finest level of the programming hierarchy and continuing towards the lower levels.

Top down strategy of integration testing is an incremental approach because we proceed one level at a time. It can be determine either in “depth first search” and in “breadth first search” manner.
So now the question arises what does depth and breadth mean?
Depth means we always proceed from the top level complete the way down to the lowest level.
Below is given the meaning of breadth.

What is the meaning about breadth?
Breadth on the other hand is different with depth so breadth means that we start at the top of the hierarchy and then steadily go to the next level. We develop and test entire modules at this level before continuing with another level.

TOP DOWN STRATEGY BENEFITS
Below given are some major benefits of top-down integration testing:
1. Having the framework, we can test major or supreme functions early in the development process.
2. At the same time, we can also test any interfaces that we have considered and thus obviously identify any errors in that area special or very early.
3. The supreme or major benefit of this practice is that we include a partially working framework to show to the clients and to the top management too.

This of course increases everybody’s confidence in the development squad and also in the model itself.

TOP DOWN STRATEGY DRAWBACKS
There are few drawbacks to this procedure as well:
1. Impose stubs does not permit all the essential upward data flow.
2. Not enough data in the stubs to fee back to the calling module so this means the top-level modules cannot be really tested perfectly and every time the stubs are replaced with the real modules, the modules which are calling should be properly re-tested again for integrity.

Conclusion:
At end we conclude that this top down integration testing procedure allows us to originate or establish a framework of the system or product.
Now what is your viewpoint regarding top-down strategy of integration testing.

What are the Benefits of Regression Testing? Why we Perform Regression Testing?

What are the Benefits of Regression Testing? Why we Perform Regression Testing?

Regression Testing may definitely be performed manually, and it is also performed by re-executing a subset of complete and full test cases or by using some sort of automated capture playback tools too.

SOME BENEFITS OF REGRESSION TESTING:
1. Regression testing increases our chances of detecting bugs caused by changes to a software and application- either enhancements or defect fixes. Also keep one thing in mind that we also don’t give any sort of guarantee that for performing regression testing there are never any sort of side effects also.
2. Regression testing also detects undesirable side caused always by changing the operating environment.
3. The set about regression test is much useful for a new way about doing integration testing. This new mode is quite faster and little confusing than the old way about doing integration testing- but you always need a some sort of set about regression test to do it.

WHY WE PERFORM REGRESSION TESTING?
Regression testing will be considered after a bug fixed or when any area of functionality changed. During bug fixing method some part of coding may be changed or even functionality may be also manipulated so due to this change we have to perform Regression Testing.

Conclusion:
At end we conclude that regression testing may be considered manually or using some sort of automated tools too.
The purpose behind regression testing is very simple and straight. We obviously know that changes to an existing sort of system often cause some other things to break and decline.

Explain the Purpose of Testing? | Manual Testing Tutorial

Explain the Purpose of Testing?

Testing is the most time consuming, but a needful activity of a software project. It is vital to the success of new system.

The main Purpose of testing is to:
1. Measure the quality of the software
2. Find out the faults in the application and software
3. Reduce the number of bugs in the program.
4. Check all the requirements and specifications given by client and customers are met or not.
5. Produce a product which is full of quality oriented.
6. Comfort the need of client and customers.
7. Provide a defect and error free software.
8. Check whether the application is working as per the functional requirement specified or not.
9. Carry the difference between the expected and actual results.
Important purpose of testing is to increase the project and product quality, and definitely to increase the organization quality side by side also.

Conclusion:
At end we conclude that during software testing, the test engineer needs to discover as several bugs as possible before reaching those defects to client, which will definitely save lots of time and money.