- Variables
- Control flow
statements
- User defined
functions
- Arrays and so
on.
- Analog
functions
- Context
sensitive functions
- Customization
functions and
- Standard
functions.
Articles, comments, queries about the processes of Software Product Development, Software Testing Tutorial, Software Processes .
Posted by
Sunflower
at
8/19/2012 10:59:00 PM
0
comments
Labels: Application, Automated System, Automated Test Generation, Automation, Code, Create, Debug, Design, Functions, Languages, Object, Scripts, Software System, Statements, Test Script Language, Tests, TSL, WinRunner
| Subscribe by Email |
|
Posted by
Sunflower
at
8/19/2012 02:05:00 PM
0
comments
Labels: Application, Automated, Automated Test Generation, Automated Testing, Automation, Command, Debug, Debugging, Executing, Operations, Results, Running, Software System, Steps, Test cases, Test Scripts, Users, WinRunner
| Subscribe by Email |
|
Software development is not complete without software testing. It constitutes an inseparable part of software development process. Almost 50 percent of the total funds for development of a software are spend on software testing and this process consumes most of the time of the whole development process.
AUTOMATED TEST DATA GENERATION
Generation of test data for the given test and according to the testing criteria proves to be quite a difficult problem.
- The automated test data generation can relieve much stress of the software testers.
- Generation of test data that is used to make a program follow a given path is the most prominent and an important problem that arises while carrying out the path oriented testing.
- The obtained input is refined by various iterations and another input is obtained.
- The whole process predicates on this obtained input.
- The statements of the program relevant to the evaluation of each branch are executed in each iteration.
- Up on each iteration, a set of linear constraints is obtained which are then solved to obtain the increment values for the input data.
- The obtained increment values are added to the current input value to obtain the input data that is to be used for the next iteration.
RELAXATION METHODS
- The relaxation method provides knowledge about the amount by which the value of each input variable should be modified for the branches on the path in order to evaluate the desired result.
ITERATIVE RELAXATION METHODS
- These can be defined as techniques for solving system of equations.
- Relaxation methods are also iterative methods defined for numerical problems of mathematics.
- They are extensively used for solving system of equations which include the following types:
(A) Linear equations
Relaxation methods are used for solving the linear equations. Problems like that of linear least squares are usually addressed under this category.
(B) System of linear inequalities
Iterative or relaxation methods prove very effective in solving the system of linear inequalities which represent the problems similar to those that arise during linear programming.
(C) Non linear system of equations
These days, iterative methods or relaxation methods have been developed and prove a great help in solving system of equations which are non linear.
- Iterative relaxation methods have proven to be very effective and important methodology in providing solutions for linear system of equations.
- They prove to be effective system of equations that are used to solve partial differential equations based on the model of ellipse.
- These systems of equations are basically used to describe problems related to boundary conditions and values in which the value of the function in the solution is indicated or specified on the boundary of a specified domain.
- If the branch conditions on a path are linear in nature, the iterative relaxation technique either obtains a solution for such a path in just one iteration or it declares that the path is in-feasible.
- We can say that the existing approaches require an unacceptably large number of iterations for longer paths since they use only one branch predicate as well as input variable at a time.
- These methods also use back tracking.
- If the branch conditions on a path are non linear in nature, then it takes more than one iteration to get the desired input data.
- But, the set of constraints that has to be solved is linear in nature and can be solved using the method of gauss elimination.
These advantages make the technique of automated test data generation practical as well as suitable for automated testing.
Posted by
Sunflower
at
2/10/2012 12:14:00 PM
0
comments
Labels: Approach, Automated, Automated Test Generation, Branches, Conditions, Data, Development, Equations, Iterations, Iterative, Iterative Relaxation, Methods, Outputs, Software testing, Test data, Testers
| Subscribe by Email |
|
First let us clear up what is meant by Test automation? Test automation can be defined as the use of software system, program or application to carry out the following tasks:
- control the process of execution of tests
- to compare the actual outcomes with the predicted outcomes
- to set up the preconditions for test cases
- to keep test control and
- to implement the function of reporting tests.
WHY TEST AUTOMATION IS USED?
Test automation as the term itself suggests involves automation of a manual testing process which is already in progress.
- It is used for automating manual testing processes which use a formal approach for testing.
- Although manual testing also holds good for finding defects in a software program or application, it is a very laborious and time consuming testing process and also it is not so effective in finding certain kinds of defects.
- To overcome these drawbacks of manual testing, automated Testing is employed.
- It involves a process of writing a computer program or software to carry out testing that would otherwise requires to be done manually.
- Once the tests have been automated, they can be run, easily, quickly and repeatedly.
- All these plus points make the automated testing a very cost effective method for software applications.
- Even minor bugs or discrepancies can cause the program to break or crash over the lifetime of the application.
Two general approaches to test automation have been discovered so far:
- Code driven testing
Elements like classes, public interfaces, libraries and modules are tested under code driven testing with a assorted data arguments in order to validate the results for their correctness.
- Graphical user interface testing
As the name suggests this testing approach creates user interface events such as mouse clicks, key strokes etc. the changes that occur in the user interface are observed and that observable behavior is validated for its correctness.
TOOLS FOR TEST AUTOMATION
Unlike tools required for manual testing, test automation tools are quite expensive, and are usually employed or used in combination with the tools of manual testing.
- Nevertheless, the tools can be cost-effective in the longer term if used repeatedly in regression testing.
WAYS TO GENERATE DATA
Now coming to the automated test data generation, there are several ways for generating data and test cases.
- One of the ways to generate test cases automatically is model- based testing and it generates test cases through use of a model of the system.
- Data is the most important thing needed to execute any test.
- Generating data again and again for repeating tests becomes a time consuming task.
- You need to design the test data again and again to execute your test cases.
- You need to design the test data at the current instant if you are running tests in an exploratory manner.
- Generating test data on your own takes a lot of your valuable time.
- Automated tests need a large amount of distinct test data.
- Another alternative can be copying and pasting data for running tests if the production data is available.
- However, this does not prove to be a very good approach.
- But, nowadays several tools have been developed which can be used for automated test data generation.
So the good thing is that you need not waste your precious time generating test data by hand. These tools help you by creating large quantities of test data based on the conditions and constraints specified by you.
Automated test data generation has got the below mentioned benefits:
- Fast data generation
- Accurate data
- Uses built in algorithms
- Creates both valid and invalid test data
- Data is exportable
Posted by
Sunflower
at
1/20/2012 02:04:00 PM
0
comments
Labels: Automated, Automated Test Generation, Bugs, Control, Data, Defects, efficient, Errors, Generate, Manual Testing, Outcomes, Test automation, Test cases, Test Execution, Testing tools, Tests
| Subscribe by Email |
|