Subscribe by Email


Showing posts with label IBM Rational Functional Tester. Show all posts
Showing posts with label IBM Rational Functional Tester. Show all posts

Wednesday, December 19, 2012

How does an IBM Rational Functional Tester work?


Rational functional tester is an IBM product developed exclusively for carrying out automated functional testing as well as regression testing. Thus, it can also be very well considered to be a regression testing and automated functional testing tool. It provides the testers with the extended abilities for carrying out the following tests:
1.   Automated functional testing
2.   Regression testing
3.   GUI testing and
4.   DDT or data driven testing

- It sounds like a wonderful tool which provides facilities to carry out four types of distinct tests. 
- Also, it would not be wrong if you call it a ‘automated functional regression testing tool’. 
- Using this IBM tool, capturing and creating automated tests becomes so easy since it ensures that the basic purpose of the tests.
- IBM’s rational functional tester becomes a more useful tool if it used by an individual of a software delivery team which continually updates the application or the software system and requires a mean using which it can keep executing a batch of core tests.
- With other tools you have to go through all the actions before you perform them which makes the testing even more difficult. 
- On the other hand if you are IBM rational functional tester, only once you need to capture the tester and then you can have the tool does the play back for you any number of times. 
- In other words, you can say that a whole series of tests can be grouped to form a test suite which can be run whole day and all night long to make sure that the software system or application is free of any regressions. 
- Before you start using the rational functional tester, it is advisable that you first go through the demo of the product and read the data sheet and then go for using it. 
- This tool developed by IBM is fully object oriented and can tester the following applications:
  1. Windows applications
  2. .NET
  3. Java
  4. HTML
  5. Siebel
  6. SAP
  7. AJAX
  8. Power builder
  9. Flex
  10. Dojo
  11. Visual basic
  12. GEF etc.
- In addition to all these things mentioned below can also be tested:
  1. Adobe PDF documents
  2. Zseries applications
  3. Iseries applications
  4. Pseries applications
- With rational functional tester, you get a reliability and robustness in the scripts that are recorded using it. 
- These scripts later can be used for play back in order to carry out the validation of the test applications. 
- However, one thing to know about rational functional tester is that it supports only two platforms namely windows and Linux.
- Two integrated development environments are supported by the rational functional tester. 
- Firstly, user actions can be recorded for the creation of the scripts in the simplest form that can be understood easily on the platform of rational software delivery. 
- In order to provide an extra helping hand to the advanced users it comes with the support for two scripting languages as mentioned below:
  1. Java language: for functional tester java scripting
  2. VB.NET language: for the functional tester VB.NET 2003 as well as 2005.
- The development environment is of the Microsoft visual studio .NET. 
- It comes with an extension for the terminal based applications as mentioned above so as to provide support for the functional testing of the following:
  1. zSeries applications such as TN3270E, TN3270 and so on.
  2. iSeries applications such as TN5250.
  3. pSeries applications such as VT default, VT 420 – 7, VT 100, VT UTF – 8, VT 420 – 8 etc which are all virtual terminals.
- With this extension you can create test scripts for the automation of the test cases of the host applications. 
- It becomes easy for you to test the following:
  1. host attributes
  2. host field attributes and
  3. screen flow
- For testing all these, it makes use of the terminal verification properties and points and synchronization code for the identification of the readiness of the terminal to take input from the user. 


Monday, December 17, 2012

Give an overview of the process of system performance validation with IBM Rational Performance Tester?


IBM brought the rational performance tester in to picture as an effort to automate the rigorous process of performance testing. Automated performance testing was required to make it possible to deliver high quality software to the end users.

- The Rational Performance Tester is a convenient means for accelerating the software system’s performance without impacting its quality. 
- Software performance bottlenecks can be identified very easily with the help of IBM rational performance tester. 
- Not only the presence of bottlenecks but also their causes can be identified.  
It is important to make predictions regarding the behavior and performance of the software systems and applications under extreme load conditions. 
Making wrong predictions can get the whole organization, its revenue as well as the customer’s at risk. 
This can prove to be hell devastating in today’s software engineering world where the competition is already soaring high. 

- Hence, a proper testing solution is required that would not only help you validate the performance of your product but also optimize and verify it under a number of load conditions. 
- IBM rational performance tester gives you more than just testing. 
- Using it, the scalability factor of many of the applications can be calculated. 
The rational performance tester supports code free programming i.e., the programming knowledge is not much required. 

In this article we provide an overview of the system performance validation using the rational performance tester. 

- Performance tests are contained within performance test projects.
- Instead of creating a new project, a test can be simply recorded which in turn will create a project immediately. 
- After a test has been recorded, it can be edited so as to include data pools, data correlation and verification points. 
- Data pools are required for obtaining variable data. 
- At verification points, it is confirmed whether the test is running as expected or not. 
- Lastly the data correlation ensures that appropriate data is being returned for the request. 
- Furthermore, protocol specific elements can also be added to a test.
- The items to which you make modifications appear in italics whenever a test is edited. 
- After saving the test it changes in to regular type. 
- A workload can be emulated by adding user groups and other elements to a new schedule.
- After being done with all the additions to the schedule, it can be run. 
- You can either run it locally or with a default launch configuration. 
- The playback might be slowed down because of the delays in HTTP requests. - The performance results of the application can be evaluated after being generated dynamically during the execution process. 
- After execution, the results can be regenerated for analyzation and viewing purpose. 
- The coding problems which are known to cause disturbances in the performance can be found and fixed using the problem analysis tools. 
- The data regarding the response time breakdown can be obtained using an application that has been deployed in a production environment. 
- Another means for collecting this data is from a distributed application implemented in a testing environment. 
- Resource monitoring data including available network, disk usage, network throughput, processor usage and so on can also be collected and imported. 
Resource monitoring data is important since one can have a comprehensive view of the system or application and this is helpful in the determination of problems.
- All the collected and imported data can be analyzed and later can be used in the location of the exact cause of the problem that is hampering the system performance.



Monday, December 10, 2012

What is Object Proxy Mechanism in IBM Rational Functional Tester?


The proxy pattern is recognized as a pattern for software designing in the field of computer science. In the most general term, the proxy can be defined as a class which functions as an interface to some other program or application. 

Where is Proxy used?

- A proxy can be used as an interface to anything such as the following:
  1. A network connection
  2. A large object present in the memory
  3. A file
- Or in other words, we can say that it can be used for any resource that is quite expensive and it is not affordable to duplicate it.
- An example of the proxy can be given by a reference counting pointer object. 
- There are situations where it is required to have multiple copies of a complex object. In such situations proxy pattern comes to play a big role. 
- It is adapted for incorporating the fly weight pattern for reducing the memory foot print of the application. 
- In typical situations, the instance created for a complex object is only one in count and multiple proxy objects are created. 
- All these proxy objects consist of a reference to an original object that is both single and complex. 
- The operations that are performed in a proxy object are carried forward to the original object. 
- If all the instances created for the proxy lose their scope, the memory of the complex object is de–allocated for that particular instance. 
- A virtual proxy pattern is used in java. 
- A proxy class can be used to access the remote methods. 

About Object Proxy Mechanism

- Firstly, an interface is created against which the rational functional tester creates the classes using the proxy patterns. 
- An interface may consist of many methods. 
- These methods need to be coded by all the classes which are to implement those particular methods. 
- If a proxy class is running on some other system rather than the original class, then the proxy class can represent its real image itself over there. 
- All the information regarding the image is obtained from the disk. 
- The multiple loading of the image can be avoided by using the proxy pattern with the code of the image. 
- This happens so because the image is accessed in a memory saving manner from some other system. 
- The primary purpose of the proxy object is to act as an intermediate object between the accessible object and the client. 
- The proxy object then serves the purpose of monitoring the life span of the object that is accessible. 
- Also, if the accessible object is not destroyed, all the calls are forwarded to it. - The proxy object checks for the availability of the accessible objects whenever a client makes calls to its accessible properties for getting some info. - If the object is found to be available, the client’s call is passed on to that accessible object. 
- If the case is opposite i.e., if the object is unavailable, an error is returned by the proxy object. 
- Returning of an error message by the proxy object is an indication that the destruction of the object has taken place and this indication is recommended.
The error returned is “CO E OBJNOTCONNECTED”.
- The COM or the component object model returns this error after CoDisconnectObject is called by the server. 
- A transparency is maintained between the client and the proxy object. 
Whenever client calls an accessible object, a pointer to the interface of that object is returned to the client. 
- In turn when this pointer is used by the client to call any of the object’s properties or methods, the execution of the code takes place within proxy object. 
- It is important for the rational functional tester to understand the interface of a given object in order to interact with it. 
- Usually, it is easy to interact with objects such as buttons, list boxes etc, however there are some custom objects in an application for which a proxy needs to be created.


Sunday, December 9, 2012

What is Data Driven Testing technology in IBM Rational Functional Tester?


- DATA DRIVEN TESTING or DDT involves testing the software systems or applications using a number of sets of input data and output data stored in a data table.
- The testing process is carried out in an environment where the controls as well as the settings are not hard coded i.e., where the controls and settings are modifiable.
- The input data values from the rows and columns of the table are supplied to the program by the tester and the output obtained is compared with the expected output of the corresponding row and column.
- The values stored in the table are related to the partition input spaces and boundary.
- However, when the control methodology is applied, the configuration for the test is read from the data base.
- Today several methodologies have been developed for implementing the data driven testing.
- All such methodologies are known to co – exist since there is a difference in the effort they demand for the creation and subsequent maintenance.
- The main advantage of applying data driven testing is the ease with which the inputs can be added to the data table on the discovery of new partitions and there addition to the system under test or product.
- Another thing about the data driven testing is that it costs more to implement it manually rather than automated implementation which is comparatively cheaper.
- Data driven testing involves creation of the test scripts together with the related data sets present in the frame work.
- The re – usable test logic is obtained from this frame work only and is used for the reduction of the maintenance and improvement of the test coverage.
- The input as well as the result is stored in either one or more than one central data sources which we commonly called as data bases though the organization of the data and actual data depends up on the implementation.
- The data that is used for driving the tests consists of both the input values and the expected output values or the verified output values.
- The data is got via a sniffer (or a purpose – built custom tool) from a running system.
- The data driven testing then performs a play back of the harvested data thus acting as a powerful automated tool for regression testing.
- The following things are coded in the test script:
1. Navigation through the application
2. Reading data sources
3. Logging test status
4. Information

- Any variability which has a potential to make a change is taken out from the test logic or the scripts and move to the set of external assets.
- Such set is called a test data set or a configuration.
- Data driven testing is one of the key technologies that is implemented by the IBM’s rational functional tester.
- The hard coded scripts have got a few limitations.
- Whenever a test script is recorded using some literal values, the data gets hard coded in that script.
- This script then can be executed only with one test case or with one set of valid inputs.
- Also, such scripts are difficult to be put in to reuse and maintenance is cumbersome.
- The rational functional tester separates the data from the script so that it can be modified without having any effect on the test scripts and new test cases can be added through the modification of the data rather than modifying the test script.
- Three scenarios have been defined for the implementation of the data driven testing in the rational functional tester:
1. Creation of a data pool while the recording of a data driven script is n progress within the functional tester. Modification of the data pool:
2. Importing a data pool that was created externally in to functional tester and associating it with a test script.
3. Creation of data pool while the recording of a script is going on within functional tester. Exporting the data pool and editing it externally. Importing this data pool for driving a test script.


Thursday, December 6, 2012

How does story board testing in IBM Rational Functional Tester work?


IBM’s rational functional tester is counted among the best functional testing tools available till date. The functional testing capabilities can further be extended with the help of the SDK proxy. This can be done either manually or with the assistance of the Proxy SDK wizards. 

Introduction of the rational functional tester in the field of software testing has given a new significant direction to the functional testing. The following are the updates that were made then:
  1. The visual test representation for the creation of no code test was enhanced via the following two ways:
a)   Dragging and dropping the controls in to the test scripts.
b)   Story board test representation.
  1. The integration with the following was updated:
a)   IBM rational quality manager express edition and
b)  IBM rational quality manager standard edition v2.0 and v1.0.1.
Support for multiple project area was extended in the execution adapter and IBM rational quality manager was provided with the support for keywords.
  1. New integration were made with the IBM rational team concert:
a)   Assets were bound to be managed within the SCM.
b)   IBM rational team concert V2.0 was added as an optional feature to the rational functional tester.
  1. Packaged applications as well as environment support were expanded.

What is Story board testing in IBM Rational Functional Tester?

- Story board testing has been introduced as a completely new and visual approach to the automation of the actions performed by the test scripts.
- The story board testing comes with a three pane view which provides the following:
  1. Description of the test actions in a natural language.
  2. Screenshots of the screen that is currently being tested. Also if the control is to be used further then it is highlighted.
  3. Script flow is displayed in the story board view which shows all the thumbnails of the all the screens that were accessed during the course of the test in an order of sequence.
- This testing approach gives a significant simplification of the test script editing and authoring. 
- The natural language is used all along the testing process along with the screen shots so as to provide the testers an easy way for understanding the flow of the test. 
- The test can be edited from this view as well. 
- You can carry out the following things in the story board testing:
  1. Insert verification
  2. Execute data driven commands
  3. Insert java code
- The feature of story board testing in IBM rational functional testing does not come at the expense of the traditional testing approaches. 
- This testing approach can be considered to be a mere overlay of the java test script like it has always been known to have existed.  
- Users who are very well familiar and understand the IBM rational functional tester can go on with the story board testing as they used to do directly with the test script. 
- Story board testing approach has been accelerating the test creation by keeping it quite simple to read and edit the tests and open the test automation. 
- The story board testing approach was first introduced in the version 8.1 of the IBM rational functional tester.
- This approach did play a big role in enabling the testers in editing the test scripts by playing against the screen shots of the application captured by the rational functional tester. 
- Before this feature was included in the rational functional tester, the scripts were edited by the testers just by modifying it.


Facebook activity