Software Testing Articles, Documentations, Tutorials - TESTING BRAIN.com
HOME TESTING TYPES TOOLS ARTICLES TUTORIALS FAQs CHAT FORUM GUESTS

Extending The Capabilities Of Performance Testing Tools  

Introduction:

Performance testing has become an integral part of Client/Server and Web environments today. With performance engineering comprising performance testing tools, the testing cycle time can be reduced significantly. The capacity of existing performance testing tools has limitations in supporting various protocols. This white paper indicates that Performance testing tools offering wider coverage without much investment are the need of the hour.
The SituationA performance testing tool can simulate internet user behavior only on http protocol and can be enabled for multi protocols as well by plugging-in an ActiveX Component or a Java Class programming language code establishing a TCP/IP Connection within the script of the tool.

Common Protocol Support:

http

https

Telnet

FTP

While with licenses for the http protocol, the compact version of existing performance testing tools can only support the http/https; additional licenses are required to be purchased for supporting other protocol(s).

Enabling tool to support other protocols:

A particular performance testing tool can be made to support a group of desired protocols by setting up a server / application specific development process. This performance engineering is a complex process involving the following steps

Steps involved:

1. Deciding the transactions.

2. Setting up a packet sniffer for capturing the packets traveling between the user machine and the Server.

3. Executing the transactions manually.

4. Saving the details of the captured packets.

5. Analyzing the flow of packets starting from packet

6. Determining the user input in the packets.

7. Parameterizing the user inputs in the packets.

8. Creating functions to simulate the packet flow.

9. Creating an instance for that component inside the script of the tool for plugging-in the component within the tool.

10. Calling functions from the script.

Analyzing Packets:

Analyzing packets is the major part in the process requiring tedious coding and decoding.

Phases in Analyzing:

Six phases in the process of analyzing packets -

Separating Headers and Data portions in the packet.

Analyzing the Header packet.

Analyzing the Data packet.

Determining the constant and variable bytes in the data specific packet, both are usually in HEX String.

Repeating the process with various user inputs getting accustomed with the bytes transferred.

Checking if any data for the previous response is transmitted with the next request.

Ethereal - Network Protocol Analyzer is very helpful sniffing tool to see new variable bytes by simulating traffic from code detecting several protocols, such as:

H323 / Q931 VOIP Protocol.

ICQ Protocol.

Java RMI.

Remote Procedure Call.

IEEE 802.11 wireless LAN.

Ethereal has a rich display filter language and can view reconstructed stream of a TCP session.

Creating the PSEUDO Client:

While designing the client, the transaction is divided into stages with separate functions for every user interaction and server reply.

Separate functions are required for:

Sending the first request and receiving the first response.

Extracting data from the response to append in the second request.

Sending second request and receiving second response.

Similar process must be followed for the remaining traffic. Maximum number of variables must be created for keeping track, with the possible constant fields stored as variables. Following is the screen-shot of an ethereal record of a simple http transaction.

Integration:

Finally, the client component is integrated in the tool, which requires creating an instance of the component and calling the function with different parameters i.e., user inputs, which allow the desired protocol to be supported by the tool.

Process Pros:

1. Perfect simulation with perfect packet analysis.

2. Frequent update for new plug-ins for the new protocols.

3. Cost effective.

Process Cons:

1. Difficulty in decoding.

2. For encrypted applications the process cannot be implemented.

3. For Oracle NCA protocol the process can be implemented only if plug-in is readily available.

Conclusion:

Performance testing can demonstrate the system meeting performance criteria. The later a performance defect is detected, the higher the cost of remediation. This is true in the case of functional testing, but even more so with performance testing, due to the end-to-end nature of its scope. It is always helpful to have a statement of the maximum number of users likely to use the system at peak times. Performance testing almost invariably concludes that it is the software rather than hardware that contributes most to bottlenecks in processing data. About The Author
BLACK BOX TESTING
Functional Testing
Stress Testing
Load Testing
Ad-hoc Testing
Exploratory Testing
Usability Testing
Smoke Testing
Recovery Testing
Volume Testing
Domain Testing
Scenario testing
Regression Testing
User Acceptance
Alpha Testing
Beta Testing
WHITE BOX TESTING
Unit Testing
Static & dynamic Analysis
Statement Coverage
Branch Coverage
Security Testing
Mutation Testing
Interview Questions
General Questions
WinRunner Questions
LoadRunner Questions
SQA Questions
Test Automation Questions
CERTIFICATIONS
ISQTB
CSTE
CSTP
CTM
CSQA
CSPM
CSPE
latest QA / Testing Documents
Test Director Interview Questions | Software testings FAQ
Test Director Interview Questions ... Software testings FAQs ..What is Test Director ... What are all the main features of Test Director.. How the assessment of the application will be taken place in Test Director .. etc etc
QA interview questions
What is verification, What is validation, What is a walkthrough, What is an inspection, What is quality, What is good code, What is good design, What is software life cycle, What is the difference between alpha and beta testing, What is the difference between volume testing and load testing etc...
Software Quality Engineer Certification - CSQE
The Certified Software Quality Engineer understands software quality development and implementation, software inspection, testing, verification and validation; and implements software development and maintenance processes and methods.
Certified Software Quality Analyst | CSQA
Acquiring the designation of Certified Software Quality Analyst (CSQA) indicates a professional level of competence in the principles and practices of quality assurance in the IT profession.
TESTING GENERAL INTERVIEW QUESTIONS
TESTING GENERAL INTERVIEW QUESTIONS
Certifications General details
General details of different software testing certifications.
HP LoadRunner software—tips and tricks for configuration, scripting and execution
This guide provides tips and tricks for HP LoadRunner software configuration, scripting, and execution. It is a conglomerate of lessons learned by HP LoadRunner power user Opral Wisham,including unique code as well as code collected from other testers. This guide is intended to help testers just learning to use HP LoadRunner, as well as to provide new best practices for those who have used HP LoadRunner for many years.
Performance Testing Why and How
Why Performance Testing,Performance Testing Workflow,HP LoadRunner Solutions
Web HTTP Connection Patterns When Load-Testing Using LoadRunner
HTTP Connections In a web environment clients communicate with the server using HTTP connections. A connection can be one-shot or persistent. One shot connection are used for one interaction, when the server has responded the connection is closed. Persistent connections are kept open for use in subsequent interactions. Persistent connections are closed by the client when it has finished with the server or by the server if the connection is inactive for too long.
what is LoadRunner
LoadRunner is a performance and load testing product by Hewlett-Packard (since it acquired Mercury Interactive in November 2006) for examining system behaviour and performance, while generating actual load.

Popular 5 QA / Testing Documents

TESTING GENERAL INTERVIEW QUESTIONS
TESTING GENERAL INTERVIEW QUESTIONS
QA interview questions
What is verification, What is validation, What is a walkthrough, What is an inspection, What is quality, What is good code, What is good design, What is software life cycle, What is the difference between alpha and beta testing, What is the difference between volume testing and load testing etc...
Test Director Interview Questions | Software testings FAQ
Test Director Interview Questions ... Software testings FAQs ..What is Test Director ... What are all the main features of Test Director.. How the assessment of the application will be taken place in Test Director .. etc etc
Test Case Checklists
Details of Test Case Checklists
Performance Testing Why and How
Why Performance Testing,Performance Testing Workflow,HP LoadRunner Solutions
QA / Testing Documents categories .. posted by users
Software Testing
Study Materials ,  Certification ,  FAQ ,  
Quality Assurance
Certification ,  FAQ ,  Study materials ,  
Testing Tools
WinRunnerLoadRunnerTest Director
Jobs
Jobs in INDIA ,  
 

  

Custom Search
 

SAP Tutorials          ABAP tutorials        SAP Functional          PDF tutorial Downloads             J2EE Resources

site contact support@testingbrain.com All of the product names here are trademarks of their respective companies. Use information on this site at your own risk. Information furnished in the site is collected from various sites and posts from users. This site does not host any files on its server. If any compliants about the posts please contact us at support@testingbrain.com, we are ready to move the posts.
Complete Software Testing Study materials | Testing JOBS | PDF Tutorials