350 likes | 368 Views
UNIT-V SMQA. Principles of Testing:. Software Testing Life Cycle:. Software Testing Life Cycle:. Automation Testing. Automation testing or Test Automation is a process of automating the manual process to test the application/system under test. Advantages of Automated Testing:.
E N D
UNIT-V SMQA
Automation Testing • Automation testing or Test Automation is a process of automating the manual process to test the application/system under test
Advantages of Automated Testing: • Automated Software Testing Saves Time and Money • Testing Improves Accuracy • Automation Does What Manual Testing Cannot • Vastly Increases Your Test Coverage • Automated QA Testing Helps Developers and Testers
Functional testing is a quality assurance (QA) process and a type of black-box testing that bases its test cases on the specifications of the software component under test. • Regression testing is a type of software testing that verifies that software that was previously developed and tested still performs correctly after it was changed or interfaced with other software. Changes may include software enhancements, patches, configuration changes, etc. • Load testing is the process of putting demand on a software system or computing device and measuring its response. Load testing is performed to determine a system's behavior under both normal and anticipated peak load conditions. • Performance testing, a non-functional testing technique performed to determine the system parameters in terms of responsiveness and stability under various workload. Performance testing measures the quality attributes of the system, such as scalability, reliability and resource usage.
1. Selenium-IDE: Functional Testing & Regression Testing Features of Selenium: • It is free and open source • It have cross Browser compatibility (Firefox, chrome, Internet Explorer etc.) • It have great platform compatibility (Windows, Mac OS, Linux etc.) • It supports multiple programming languages (Java, C#, Ruby, Python, Pearl etc.) • It has fresh and regular repository developments • It supports distributed testing • It supports Functional Testing & Regression Testing Other features includes • Recording and adding commands in a test • Saving the recorded test • Saving the test suite • Executing the recorded test
1. Selenium-IDE Limitations of Selenium: • Selenium supports testing of only web based applications • Mobile applications cannot be tested using Selenium • Captcha and Bar code readers cannot be tested using Selenium • Reports can only be generated using third party tools like TestNG or Junit (Unit Testing Framework). • As Selenium is a free tool, thus there is no ready vendor support though the user can find numerous helping communities. • User is expected to possess prior programming language knowledge
1. Selenium-IDE Different Selenium Components: • Selenium Integrated Development Environment (IDE)– Selenium IDE is a record and playback tool. It is distributed as a Firefox Plugin. • Selenium Remote Control (RC) – Selenium RC is a server that allows user to create test scripts in a desired programming language. It also allows executing test scripts. • Selenium WebDriver – WebDriver is a different tool altogether that has various advantages over Selenium RC. WebDriver directly communicates with the web browser and uses its built-in compatibility to automate. • Selenium Grid – Selenium Grid is used to distribute your test execution on multiple platforms and environments concurrently.
2. Apache JMeter: Load and Performance testing. Features of JMeter: • Being an open source software, it is freely available. • It has a simple and natural GUI. • JMeter can conduct load and performance test for many different server types − Web - HTTP, HTTPS, Database via JDBC, LDAP, JMS, Mail - POP3, etc. • It is a platform-independent tool. On Linux/Unix, JMeter can be invoked by clicking on JMeter shell script. On Windows, it can be invoked by starting the JMeter.bat file. • JMeter store its test plans in XML format. This means you can generate a test plan using a text editor. • It is highly extensible. • It can also be used to perform automated and functional testing of the applications.
2. Apache JMeter: JMeter – Environment Setup: • Step 1 − Verify Java Installation using Java -version command • Step 2 − Set Java Environment My Computer- Properties-Advanced tab-Environment variables- c:\Program Files\java\jdk\bin • Step 3 − Download Jmeter • Step 4 − Run Jmeter
2. Apache JMeter: JMeter Test Plan: • A Test Plan can be viewed as a container for running tests. It defines what to test and how to go about it. Some of the test plan elements are: • Thread Group • Controllers • Listeners • Timers • Configuration Elements • Pre-Processor Elements • Post-Processor Elements
2. Apache JMeter: JMeter - Web Test Plan: Follow the steps given below to write a Web Test plan − • Start JMeter • Rename the Test Plan • Add Thread Group • Add Sampler • Add Listener • Run the Test Plan • View the Output
3. QTP (QuickTest Professional): • It is a product of Hewlett Packard (HP). • HP QTP uses Visual Basic Scripting (VBScript). VBScript is NOT a object oriented language but it is object based language. • It need not be installed exclusively as it is available part of the Windows OS. The Current version of VBScript is 5.8 which is available as part of Win 7.
3. QTP (QuickTest Professional): Used for regression testing Why QTP is the best testing tool? • It is an icon based tool that automates the regression and functional testing of an application. • Both technical as well as non-technical tester can use QTP • It provides both features- Record as well as Playback • We can test Desktop (window based) as well as the Web based applications • It supports largest pool of software development environments like SAP, Oracle etc.
3. QTP (QuickTest Professional): Used for regression testing Advantages of QTP: • It helps tester in referring the screen object properties • It supports different add-ins (a device or piece of software that can be added to a computer to give extra features or functions.) like Oracle, Java, SAP, Web Forms etc.. • It supports popular automation frameworks- keyword driven testing approach, modular testing approach, data driven testing approach, etc.. • It comes with an inbuilt IDE • It can be integrated with Test management tools like Quality Center, Test Director, and Winrunner • It supports XML • Test reporting is possible through QTP for analysis purpose • Easy to maintain
3. QTP (QuickTest Professional): Used for regression testing Disadvantages of QTP: • Unlike Selenium, QTP works in Windows operating system only. • Doesn’t supports all versions of browsers and the testers need to wait for the patch to be released for each one of the major versions. • It is a commercial tool, the licensing cost is very high. • Even though scripting time is less, the execution time is relatively higher as it puts load on CPU & RAM.
4. WinRunner: • It is an automated functional GUI testing tool that allowed a user to record and play back user interface (UI) interactions as testscripts. • Automatic RecoveryWinRunner Allows us to continue the test run after an exception event occurs. This functionality is especially useful when errors or crashes could interrupt the testing process. • Silent InstallationNow you can install WinRunner in an unattended mode using previously recorded installation preferences.
4. WinRunner: • Enhanced Integration with TestDirectorWinRunner works with both TestDirector 6.0, which is client/server-based, and TestDirector 7.x, which is Web-based. When reporting defects from WinRunner’s test results window, basic information about the test and any checkpoints can be automatically populated in TestDirector’s defect form. • WinRunner now supports version control, which enables updating and revising test scripts while maintaining old versions of each test. • Support for Terminal ServersSupport for Citrix and Microsoft Terminal Servers makes it possible to open several window clients and run WinRunner on each client as a single user. Also, this can be used with LoadRunner to run multiple WinRunner users.
4. WinRunner: • Support for More EnvironmentsWinRunner 7.5 includes support for Internet Explorer 6.x and Netscape 6.x, Windows XP and Sybase's PowerBuilder 8, in addition to 30+ environments already supported by WinRunner 7. • WinRunner provides the most powerful, productive and cost-effective solution for verifying enterprise application functionality. • Significantly increase power and flexibility of tests without any programming
Use multiple verification types to ensure sound functionalityWinRunner provides checkpoints for text, GUI, bitmaps, URL links and the database, allowing testers to compare expected and actual outcomes and identify potential problems with GUI objects and their functionality. • Verify data integrity in your back-end databaseBuilt-in Database Verification confirms values stored in the database and ensures transaction accuracy and the data integrity of records that have been updated, deleted and added. • Test multiple environments with a single applicationWinRunner supports more than 30 environments, including Web, Java, Visual Basic, etc. In addition, it provides targeted solutions for such leading ERP/CRM applications as SAP, Siebel, PeopleSoft and a number of others.
Limitations of WinRunner in testing: • It should not support Dot net applications. • It should not support XML. • It should not support Multimedia. • It's twice more expensive than the others products!!
Advantage of QTP over WinRunner Advantages:1. Lot easier than winrunner to record a script.2. Records mouse over functionality.3. Identifies double clicks4. Uses programming language "VBScript".5. Check points and data driven tests can be implemented easily.6. Can enhance the script without the Applicaion under test being opened using Active window functionlity.7. Integrates with winrunner and testdirector.8. Supports .NET environment.9. Supports XML based web sites. 10. Support mouse drag funcitonality.
Disadvantage of QTP over WinRunner • Disadvantages:1. We do not have sufficient resources on QT pro.2. Must know VBscipt in order to program.3. In order to implement advanced futures of QT pro you must be a VBScript developer.4. the "Object Repository" is not user friendly. You cannot work with object repository as you do with Winrunner.
ISO 9000 Standards • Define the required elements of an effective quality management system • Can be applied to any company • ISO 9000 is a generic standard - means that the standard can be applied to any organization, large or small, whatever its product in any sector of activity • Policy and measurable quality objectives are set and renewed. • Processes are identified, analyzed, and managed. • Customer satisfaction is measured. • Data are collected, analyzed, and used. • System effectiveness is constantly improved.
elements of the standards: • Management responsibility • Resource management • Quality System • Contract Review • Design Control • Document Control • Purchasing • Purchaser-Supplied Product • Product Identification and Traceability • Process Control • Management responsibility • Resource management • Quality System • Contract Review • Design Control • Document Control • Purchasing • Purchaser-Supplied Product • Product Identification and Traceability • Process Control
CMM: Capability Maturity Model • Developed by the Software Engineering Institute of the Carnegie Mellon University to assist dept. of defense in assessing quality of its Vendor (Contractor) • Framework that describes the key elements of an effective software process. • Provides guidance on how to gain control of processes for developing and maintaining software
Level 1: Measurement t provides bassline to improve the process & productLevel 2: Focus on Project Management Level 3: Measures intermediate & final products during developmentLevel 4: Allows to control individual activities of processLevel 5: Allows to provide feedback foe dynamically changing process during project development Maturity level indicates level of process capability: • Initial • Repeatable • Defined • Managed • Optimizing