Subscribe by Email


Showing posts with label Usage. Show all posts
Showing posts with label Usage. Show all posts

Saturday, January 19, 2013

What is meant by Statistical Usage Testing?


Statistical usage testing is the testing process that is aimed at the fitness of the software system or application.
The test cases chosen for carrying out statistical usage testing mostly consist of the usage scenarios and so the testing has been named as statistical usage testing. Software quality is ensured by the extensive testing but that has to be quite efficient. Testing expenditures covers about 20 – 25 percent of the overall cost of the software project. In order to reduce the testing efforts, deploy the available testing tools since they can create automated tests. But usually what happens is that the important tests require manual intervention with the tester requiring thinking about the usage as well behavior of the software. This is just the repetition of the tasks that were done during the requirements analysis phase.

About Statistical Usage Testing

- A usage model forms the basis for the creation of tests in statistical usage testing.
- Usage model is actually a directed usage graph more like a state machine and it consists of various states and transitions. 
- Every transition state has a probability associated with it regarding the traversal of the transition when the system would be in a state that marks the beginning of the transition arc. 
- Therefore, the sum of the probabilities of outgoing transitions sum up to unity for every state.
- Every transition can be associated with an event and more with parameters that are known to trigger the particular transition. 
- Such event associated transitions can be further related to certain conditions called the guard conditions. 
- These conditions imply that the transition occurs only if the value of the event parameter satisfies the condition.
- For assigning probabilities to the transitions, 3 approaches have been defined as follows:
  1. Uninformed approach: In this approach, same probability is assigned to the exit arcs of a state.
  2. Informed approach: In this approach, a sample of user event sequences for calculating suitable properties. The sample is captured from either an earlier version of the software or its prototype.
  3. Intended approach: This approach is used for shifting the focus of the test to certain state transitions and for modeling the hypothetical users.
- According to a property termed as the marcov property, the actual state is what on which the transition probabilities are dependent. 
- However, they are independent of the history again by the property. 
- This implies that the probabilities must be fixed numbers. 
- A system based up on this property is termed as a marcov chain and it requires conclusion of some analytical descriptions. 
- Usage distribution is one among such descriptions. 
- It gives for every state its steady–state probability i.e., appearance rate that is expected.
- All the states are associated to one or the other part of the software system or application and the part of the software that attracts more attention from the tests is shown by the usage distribution. 
- Some other important descriptions are:
  1. Expected test case length
  2. Number of test cases required for the verification of the desired reliability of the software system or application.
- The idea of the usage model generation can be extended by handling guard conditions and enabling the non–deterministic behavior of the system depending on the state of the system’s data. 
- All this helps towards the application of the statistical usage testing to systems over a wide range. 
- The use cases are defined by the top–level structure of the unified modeling language (UML). 


Thursday, September 20, 2012

What is Object Spy? How to Use it?


Object spy is one of the most important tools in winrunner as well as in quick test professional. In this article we are going to discuss what role object spy serves in quick test professional and how it is used in the same. 

What is an Object Spy?

- With the help of object spy the basic structure of any of the test objects can be known. 
- The best thing about object spy in quick test professional is that the structure of a particular object can be viewed in the tree format. 
- All this makes understanding of the test objects much easier. 
- In addition to this use, the object spy can also aid us in viewing the test object and run time properties as well as methods of all the objects present in the software system or application. 

How the object spy can be used in quick test professional?<>

- For launching object spy just go to tools menu and click on the object spy tab. 
- Clicking on this tab will open up a dialog box named “object spy”.
- In that dialog box you need to select the application software whose object methods and properties you wish to see. 
- After this in the object spy window you need to select the pointer image. 
- All the objects present in that particular application will be listed and from these you can select the one whose object methods and properties you wish to view. 
- There are two particular things that can be viewed using the object spy as mentioned below:
  1. Properties of a specific object and
  2. Methods applicable for that object.
- Many different properties of the selected objects can be viewed. 
- This viewing of the object methods and properties is facilitated by the pointing hand mechanism of the object spy. 
- As this pointer is hovered above the objects, their corresponding methods and properties are displayed in the window of the object spy dialog box. 
- The details of the object may also include the hierarchy tree of the test objects. 
- The object spy also displays the syntax for the object methods at your command. 
- Different properties can be viewed in different environments. 
- Objects such as following can be viewed using the object spy in quick test professional:
  1. Dialog
  2. Static
  3. Active X
  4. Edit and so on.
- The object spy can be considered to be the same as the GUI spy that comes with the winrunner. 
The object spy contributes a lot while writing descriptive programming. 
- In object, the properties of the objects are displayed along with their corresponding values. 
- Object spy is such a feature provided by the quick test professional with which the total information regarding the objects can be obtained.
- There are 3 tabs in the object spy dialog box namely:
  1. Properties tab
  2. Methods tab and
  3. Navigation tab
- Clicking on the properties tab all the properties of the objects along with the values and hierarchy tree are displayed. 
- Clicking on the methods tab all the methods of the test objects and run time objects are displayed. - Clicking on the navigation tab, the tool bar is displayed. 
- Object spy just like the gui spy of the winrunner is an in built feature. 
- For opening the object spy apart from just clicking on the object spy option on the tool bar there are two more ways:
  1. Go to the object repository window and double click the object spy icon.
  2. After opening the object repository navigate to the tools and select the object spy option. 


Friday, June 1, 2012

What are user stories? Are they similar to use cases? Where is user stories used?


You must have heard about the term “user stories” and “use cases” when it comes to the discussion regarding the issues of the software development! In this article we have taken up 3 important questions to discuss as mentioned below:
  1. What are user stories?
  2. Are they similar to use cases?
  3. Where are the user stories used?

What are User Stories?


- User story is a common term that is quite involved with everything that happens in the field of software development and the product management. 
- A user story is more like the business or every day language of the end user (end user is the one who uses the software system or application) which indicates about the activities of the user and what things he/ she needs to do to perform his part of function well.
- User stories have become quite famous.
- User stories are commonly used with the agile software development methodologies when compared its use with the other software development methodologies. 
- Actually, the user stories when used with the agile software development methodologies, serve as a basis or criteria for defining the business functions that a business system is ought to provide. 
- The facilitation of the requirements management is also done with the help of the user stories.
- There are 3 aspects of the requirements that are captured by a typical user story in a way that is quite simple and concise and with a limited description:
  1. Who?
  2. What?
  3. Why?

Who is responsible for writing user stories?


- They are written by the business users as their means to have an influence on the functionalities and features of the software system or application that is being developed. 
- They may also be written by the system developers and programmers as a way to express the non functional requirements like the performance, quality and security. 
- But overall, the task of managing the user stories is taken up by the product manager and thus it is his/ her responsibility for ensuring that the user stories are captured properly. 

"Are user stories similar to use cases?”


Both these are similar to a certain extent. We shall state how! 
- The documentation of the requirements is created with the help of both the user stories and the use cases so that the documentation has a perspective of the user. 
- Since both of them are used in the documentation of the requirements, they both indeed help in capturing the features and functionality of the system. 
- Together they help the development to come with the best solution to the problem. 
- Another advantage of these two is that both can be used to organize the requirements of the system under different categories. 
- They also serve as a reference during the testing phase which ensures that the requirements have been met. 

But there are many other substantial ways in which they differ. 
- Without user stories the developers would have to create formalized requirements documents and perform many tasks to manage them. 
- The user stories are intended to make the response of the developers faster to the rapidly changing requirements of the users and so cutting down the overhead.
- User stories are accompanied by acceptance tests whereas use cases can be delivered as a stand alone document.
- User stories contain little detail whereas use cases include detailed description.

Where are user stories used?


- User stories are an important part of agile development methodologies.
- They give a reason what should be built in a software project.



Sunday, December 25, 2011

What are different characteristics of endurance testing?

The term endurance defines the stamina, durability, resilience and the sufferance of something and its ability to perform actively and exert itself for a long period of time.

- Endurance also stands for the ability of the thing to resist, recover from and withstand.
- It also gives the degree of immunity of a thing towards trauma, fatigue or wounds.
- For software systems or applications, endurance testing has been developed to check the endurance of the software system or applications.
- Endurance testing is also known as soak testing.
- It is carried out to determine if the concerned software system or application can sustain the expected continuous load.
- The memory utilization is monitored during the endurance testing.
- This is done so as to check the potential memory leaks.
- The endurance is checked during the endurance testing but quite often, performance degradation is overlooked.
- The good response times and throughput are ensured throughout the life of the software system or application i.e., from the beginning of the usage of the software system or application to the last time of usage.

The endurance testing is aimed at testing the sustainability of a software system or application. Its goal is to check how the system behaves or responds under the prolonged significant pressure or load for an extended and significant period of time.

- It aims to test how the software system or application behaves under the sustained use.
- Endurance testing checks for the problems that may occur as a result of prolonged execution of the software program.
- It tests the application or the system under heavy loads of data for a desired period of time which is typically more than the normal usage time.
- Endurance testing is usually carried out to identify the problems that the software system or applications face under the prolonged execution.
- It also aims at identifying the buffer flows and memory leaks which are otherwise not identifiable without carrying out the endurance testing.
- The testing for the behavior of the program under significant load over a significant period of time is done with normal ramp down and ramp up time.

This can be illustrated with the following example:

- Always some memory is allocated to the objects of the program.
- In some cases it happens that the allocated memory is not de- allocated and thus remains occupied.
- This leads to a situation of over consumption of memory in which a chunk of memory is again and again taken away by the program whenever it is executed.

- Eventually the software program reaches a point when the leftover memory is not sufficient for the program to execute.
- At this point, the program crashes and is reported to have a breakdown. Such a situation is called a memory leak.
- Endurance testing is a part of performance testing.
- The other types of testings under performance testing include load testing, volume testing, and stress testing.
- The basic aim of the endurance is to check and correct the performance related problems being faced by the software system or application.
- Those problems appear only after the software system or application has been running for a long time under some significant load or stress.
- Some of the endurance test cases are available for free and have been checked into repository.
- It is recommended to include a report argument so that you visualize the usage of memory during the test and share it.
- The endurance tests create a real world model which employs a normal and high load pattern of usage for the software system or application to determine its potential and problems.


Wednesday, September 1, 2010

What is Recovery Testing and what are its features.

Recovery testing tells how well an application is able to recover from a crash, hardware failure. Recovery testing should not be confused with reliability testing, which tries to discover the specific point at which failure occurs.
- Recovery is ability to restart the operation after integrity of application is lost.
- The time taken to recover depends upon the number of restart points, volume of application, training and skill of people conducting recovery activities and the
tools available for recovery.
- Recovery testing ensures that the operations can be continued after a disaster.
- Recovery testing verifies recovery process and effectiveness of recovery process.
- In recovery testing, adequate back up data is preserved and kept in secure location.
- Recovery procedures are documented.
- Recovery personnel have been assigned and trained.
- Recovery tools have been developed and are available.

To use recovery testing, procedures, methods, tools and techniques are assessed to evaluate the adequacy. Recovery testing can be done by introducing a failure in the system and check whether the system is able to recover. A simulated disaster is usually performed on one aspect of application system. Recovery testing should be carried for one segment and then on the other segment when there are many failures.

Recovery testing is used when the continuity of the system is needed inorder for system to perform or function properly.User estimates the losses, time span to carry out recovery testing. Recovery testing is done by system analysts, testing professionals and management personnel.


Monday, August 16, 2010

Overview of Error Handling Testing and its use.

Error handling refers to the anticipation, detection, and resolution of programming, application, and communications errors. Development errors occur in the form of syntax and logic errors can be prevented. A run-time error takes place during the execution of a program, and usually happens because of adverse system parameters or invalid input data.

The objectives of error handling testing are :
- Application system recognizes all expected error conditions.
- Accountability of processing errors has been assigned and procedures provide a high probability that errors will be properly corrected.
- During correction process reasonable control is maintained over errors.

How to use


- A group of knowledgeable people are required to anticipate what can go wrong in the application system.
- All the application knowledgeable people assemble to integrate their knowledge of user area, auditing and error tracking is needed.
- Logical test error conditions should be created based on this assimilated information.

Error handling testing can be used throughout the SDLC. The impact that the errors produce should be judged and steps should be taken to reduce them to an acceptable level. It is used to assist in error handling management process.


Monday, August 9, 2010

Objectives and Use of Control Testing and Inter-system Testing

The objective of control testing is to get an accurate and complete data. The transactions that are carried out are authorized. It helps in the maintenance of adequate audit trail of information. Control testing is an efficient, effective and economical process. It ensures that the process meeting the needs of the user.
Control is a management tool to ensure that processing is performed in accordance to what management desire or intents of management.

To use control testing, risks must be identified. Negative approach should be followed by the testers which means that they should be able to judge that what could go wrong with the system. To use control testing, risk matrix should be developed which identifies the risks, controls; segment within application system in which control resides.

Inter-system Testing


Application systems are frequently interconnected to other application system. The interconnection may be data coming from another application system, leaving for another application system or both. Frequently multiple systems (applications) sometimes called cycles or functions are involved.
The objective is to determine proper parameters and data are correctly passed between the applications, documentation is correct and accurate and to ensure proper timing and coordination of functions exists between the application system.

Use Inter-system testing when there is a change in parameters in application. Inter-system parameters would be checked and verified after the change or new application is placed in the production.


Facebook activity