Friday, June 17, 2011

Software Testing Methods


Software Testing Methods 

There are different types of testing methods or techniques as part of the software testing process. I have enlisted a few of them below.
  • White box testing
  • Black box testing
  • Gray box testing
  • Unit testing
  • Integration testing
  • Regression testing
  • Usability testing
  • Performance testing
  • Scalability testing
  • Software stress testing
  • Recovery testing
  • Security testing
  • Conformance testing
  • Smoke testing
  • Compatibility testing
  • System testing
  • Alpha testing
  • Beta testing

The above software testing methods can be implemented in two ways - manually or by automation. Manual software testing is done by human software testers who manually i.e. physically check, test and report errors or bugs in the product or piece of code. In case of automated software testing, the same process is performed by a computer by means of an automated testing software such as WinRunner, LoadRunner, Test Director, etc.

Wednesday, June 8, 2011

Basics knowledge for a software tester

           A tester must think from the point of view of a user to see if the software can accomplish the objectives for which it was created. It's not necessary that a tester be from a computer science background, but he needs to have knowledge of the software testing techniques. Here are the most important things which we need to know about, that constitute the basics of software testing.

Know Computer Programming Basics
It's essential that we have a basic knowledge of computer science and programming. we need to know what it means to 'code', 'compile' and 'execute' a program. A basic knowledge of computer programming can be very helpful as that way, a tester can be more specific in pointing out programming errors.

We need to understand the programmer's lingo and have rudimentary knowledge of programming, which means that you can at least understand what 'variables' and 'programming loops' are. As a tester, we are more concerned with executing the program and checking functionality under various input conditions.

Understand Different Software Testing Types
There are various types of software testing methods, which are broadly classified into two types - manual and automated testing. There are various sub-types of each which we need to know about, to have a thorough knowledge of testing methodology.

Understand the Software Testing Process
Most importantly, we need to know about the process of testing, which involves a study of program functionality requirements, designing of a testing plan accordingly, executing it, reviewing the results and determining the bugs by identifying deviations from expected functionality.

Learn to Use Automated Software Testing Tools
We will need to master using standard software testing tools used in automated testing like Quick Test Professional (QTP), LoadRunner, Winrunner and Rational Robot. Use of these tools and learning manual testing techniques are most essential skills for a software tester.

Understanding Software Performance Metrics
Besides pointing out the bugs in a program that lead to functionality failure, we need to understand how to measure the performance according to efficiency metrics. This includes the evaluation of the speed, cost and output efficiency of the program.

Tuesday, June 7, 2011

Internship

I am Md.Shahinur Rahman. I live in Bangladesh. I am studying at Daffodil International University. At this moment i am doing internship at Spectrum Engineering Consortium Limited. Web address is www.spectrum-bd.com. My Internship's title is "Testing in software development house". 


What is software testing?

Software testing is a process of gathering information by making observation and comparing them to expectation.


Why software testing is important?
  •     To discover defects.
  •     To avoid user detecting problems
  •     To prove that the software has no faults
  •      To learn about the reliability of the software.
  •      To avoid being sued by customers
  •      To ensure that product works as user expected.
  •      To stay in business  
I think software testing is very important task for a software development house because without testing we can not get accurate output. We should fix all possible bugs before final release.