140 likes | 349 Views
Testing Tools. Categories of testing tools. Black box testing, or functional testing Testing performed via GUI. The tool helps in emulating end-user actions and generating data input White box testing, or static analysis The tool scans the source code for logical errors.
E N D
Categories of testing tools • Black box testing, or functional testing • Testing performed via GUI. The tool helps in emulating end-user actions and generating data input • White box testing, or static analysis • The tool scans the source code for logical errors
Functional Testing Tools • Advanced Testing Tools Capabilities • Produce test scripts via Wizard that allows to • Record business processes by emulating a user’s actions • Insert checkpoints to compare actual and expected results • Verify database value • Run test scripts • Provide detailed reports of errors • Provide the ability to customize test scripts or to program more sophisticated test cases • Ensure reusability of test scripts • Can test both web applications and regular client/server apps
Functional Testing Techniques • The following technique is used to produce test scripts • Create the GUI map • Create test scripts with Test Script Language • Create user-defined functions • The following technique is used to run test scripts • The engine interprets the script, line by line • Verify – compare expected and actual results • Debug – record the test traces for analysis • Update – runtime changes of the expected results or scripts • The following technique is used to analyze the results • Review reports • Analyze the results • Report defects
Functional Testing Tools Demo • WinRunner – HP product • http://en.wikipedia.org/wiki/WinRunner#DEMO • QTP (HP)
Functional Testing Tools • WinRunner from HP • Test Partner from Compuware • LoadRunner from HP • Rational Functional Tester from IBM • A lot of others
Performance and Load Testing • Advanced Testing Tools capabilities: • Create virtual users • Generate load requests • Capture runtime settings of the server environment • Run load requests • Monitoring of servers • Produce the log • Produce the reports • Produce the diagrams to show time and resource consuming diagnostic
Load vs. Functional Testing • Load testing tools emulate thousands of users when a functional testing is doing with a single user emulating • Load tests do not emulate user’s actions, they produce loading via API calls using the same protocols as the application does • Load tests differentiate application from its infrastructure and give specific results for each of them
Load testing tools • LoadRunner from HP • NRG Performance Management Suite • Other
Static analysis • Advanced testing tools capabilities: • Visualize and re-engineer software architecture • Reconstruct the workflow logic • Discover inconsistency and errors in regards to the code, such as • Initial and late state • Looping • Race conditions • Workflow control • Incorrect object references • Null pointers
Static analysis • Capable to discover security holes: • Buffer overflow • Memory leak • Resource leak • Unvalidated Input • Broken Access Control • Broken Authentication and Session Management • Cross Site Scripting • Buffer Overflow • Injection Flaws • Improper Error Handling • Insecure Storage • Application level Denial of Service
Static Analysis Tools • Fortify • Klocwork • Open source – FindBugs for Java