Wednesday 23 July 2014

Test Case

A Test Case is a set of conditions or steps under which a tester determines whether requirement upon a software application is satisfied or not. To complete a requirement it may take one or many test cases as there can be hierarchy of requirements.
Test Case


A Test Case generally contains three states:
1) Input data to the system
2) State of the system at which data is to be input
3) Output expected from the system.

Test cases involve Value based analysis, Boundary based analysis and True/False based test cases.
Test cases are the part of Test Plan.
A Test Plan must contain at least one test case in order to execute it.

Example: Below is a simple test case example for login screen.
  1. Go to login page.
  2. Enter user id.
  3. Enter password.
  4. Click on 'Submit' button
  5. Verify user is logged in(by seeing username in welcome message).

Sunday 20 July 2014

Beta Testing in Software Engineering

Beta Testing in Software Engineering

In the Beta Testing in Software Engineering, software product is used by the customer at one or more customers site. User or user groups records the bugs after using the software. This testing is done with the first release of the product. It is also called live testing. It is not controlled environment testing. Beta testing is significant because before the final release of the software product several minor issues get fixed. This testing is conducted after alpha testing.


 

Thursday 10 July 2014

Alpha Testing

Alpha Testing is the testing in which bugs are detected which were not found in other tests. It is performed to identify all possible bugs before releasing the software product. This testing is performed at the developer's site by the Customer. That's why it is said to be done in controlled environment. In this, Customer uses the software system and gives input  and  reports found bugs which further are fixed by the developers.
alpha testing

In this testing developer guides the customers about the application and records defects and issues during testing.

Sunday 29 June 2014

Integration Testing



Integration Testing involves ensuring the correct working of components or modules of software application to produce combined output. To do this testing, we first write the test cases. A test case is the scenario which consists of two or more steps. After writing test case we need to execute it in our application. This falls under the both Black box testing(by tester) and White Box testing(by developer while coding).

Integration Testing is performed each time when a new module is bind to our software system. It is the testing interface between the modules.
              



For example, we can consider a system having two nodes/stations from which we can send and receive the messages.  say two nodes are A and B.
We can make following table mentioning test case steps and other field details in it.

Test Case No
Test Case Steps
Date Tested
Expected Result
Actual Result
pass/fail
comments
01
1. Open Application.
2. Log in with Node A.
3. Open Message Component.
4. Compose a message.
5. Enter Receiver id(Node B id) and subject of message.
6. Send it to Node B. Logout the Node A.
7. Login with Node B in application.
8. Go to Receive box or inbox.
9. Check the message.
02/03/2013
Message sent by node A should be received in the inbox of Node B with its proper subject and contents.
---
---
---

After this we can execute the test case and record the actual result. Now, we can compare it with our expected result, if it is so mark it as pass otherwise fail. Comments may have the details of failure.

Thursday 26 June 2014

Load Testing

Load Testing of software application is performed to identify maximum operating capability of the software. This determines system's behavior in both under the normal and intense conditions. It is a type of non-functional testing. To know the maximum capacity, specific load is given to application. This can be done by sending several requests to the server.
For example, if there is an online application to which you need to find the load on which it gets failed. several requests are needed to be sent simultaneously. For it we would need large no. of computer systems that may not be possible but there are some kind of Load tools which provide this functionality of sending requests simultaneously. Some online tools are paid and some are free. You can search and download them. For instance a free load tool is LoadUI. After downloading tool you can set request meter to the specific number eg; 50,100, 500 etc.
Suppose request meter is set to 50. It means application will consider that 50 users have sent the requests to it simultaneously. We can continuously increase the request to check maximum operating state of software application. Another example of load testing may include downloading or uploading large size data files from the software application.

This testing is performed constantly and steadily until the limit is known on which software gets failed or not responds.

Software Testing

Software Testing is the process used to find and remove the bugs of a software application. There are different kind of testings like unit, system, load, security, alpha, beta, performance testing etc.


In order to fix the bugs, a test plan is written which contains summary, introduction, objective, tasks, scope, test cases, procedures, requirements, schedules etc. Test Cases are prepared by considering all possible scenarios. Plenty of test cases means possibility of more precise software application.

Below are the phases of testing:

   Requirement Analysis
   Test Planning
   Test Case Development
   Test Case Execution
   Test Results Reporting
   Defects Re-testing
   Regression Testing
   Test Closure.

Test Case