Вы находитесь на странице: 1из 99

Computer Terminology and Software Testing.

Terminology and abbreviations that is necessary to know during the interview. (Including some historical information on PC, Programming Languages and other media) Regular expressions are patterns of characters that match, or fail to match, sequences of characters in text. Regular expressions, at the most basic level, allow computer users and developers to find desired pieces of text and, often, to replace those pieces of text with something that is preferred. ASCII The American Standard Code for Information Interchange defines the code assignments for text in nearly all computers today. It was first defined in 1967. ASCII defines code positions 0-127. adaptive software development A software development process created by Jim Highsmith and Sam Bayer. Continuous adaptation of the iteration software delivery process is done using speculate, collaborate, and learn phases. agile An iterative and incremental approach to developing software that adheres to the Agile Manifesto and its associated principles. Ideally this is done using small, dedicated, co-located, self-organizing teams who work in close collaboration with a business customer. Agile is value-driven both in the focus on delivering the most important features first and in the ways the teams choose to work together to develop the software. agile manifesto A statement of principles and values that define agile software development. algorithm as a tool for solving a well-specified computational problem. The statement of the problem specifies in general terms the desired input/output relationship. The algorithm describes a specific computational procedure for achieving that input/output relationship. ATAPI (ATA Packet Interface) ATA or AT Attachment was the successor to the ST506 and ESDI hard disk interfaces for small hard drives. This was extended in the early 1990s to allow CD-ROM drives to be connected to the same parallel data bus as hard drives thus eliminating the requirement for a separate interface card. BSD Berkley Software Distribution. This is one of the original contributors to the UNIX operating system. BIOS The software in a Windows computer which controls the startup. BMP The most basic, uncompressed bitmap representation used by Microsoft Windows. checksum errors If data structures in a UDF file system are not constructed properly or are corrupted it is likely that the checksum will be incorrect. This is detected and reported on in the Analysis report. Cluster A group of sectors allocated to a file together to reduce fragmentation. cryptography The branch of cryptology dealing with the design of algorithms for encryption and decryption, intended to ensure the secrecy and/or authenticity of messages. decryption The translation of encrypted text or data (called ciphertext) into original text or data (called plaintext). Also called deciphering. digital signature An authentication mechanism that enables the creator of a message to attach a code that acts as a signature. The signature is formed by taking the hash of the message and encrypting the message with the creator's private key. The signature guarantees the source and integrity of the message. DMA Direct Memory Access, a technique which allows devices to directly write to the computers memory without requiring the processor to be involved. This significantly speeds up data transfer to and from CD and DVD devices. DVD Originally,DVD was an acronym for Digital Video Disc and then later Digital Versatile Disc. Today it is generally agreed that DVD is not an acronym for anything. ECMA Ecma International is an industry association founded in 1961 and dedicated to the standardization of Information and Communication Technology (ICT) and Consumer Electronics(CE). They can be found at www.ecma-international.org encryption The conversion of plaintext or data into unintelligible form by means of a reversible translation, based on a translation table or algorithm. Also called enciphering. extreme programming (also referred to as eXtreme Programming and abbreviated as XP) A software engineering methodology that focuses on a set of specific engineering practices that lead to a higher quality of software and the ability to be more responsive to the customer's needs. FTP Acronym for File Transfer Protocol, a common technique for transferring files over the Internet. FAT Generically, the format of the original file system used on the IBM PC. firewall A dedicated computer that interfaces with computers outside a network and has special security precautions built into it in order to protect sensitive files on computers within the network. It is used to service outside network, especially Internet, connections and dial-in lines. GIF A graphics file format defined by CompuServe in the 1980s. It is restricted to a total of 256 separate colors in an image. It is used today primarily for non-photographic web graphics and can include animation.

HFS file system The file system which was used on the first Macintosh computers, later replaced by HFS+. CDs and DVDs can be written with either HFS or HFS+ file systems. IMAPI Acronym for Image Mastering API, a component of Windows XP. This is the writing software that comes with Windows XP. intruder An individual who gains, or attempts to gain, unauthorized access to a computer system or to gain unauthorized privileges on that system. ISO International Standards Organization, a body which oversees the creation and distribution of standards worldwide. ISO 9660 The standard that defines the most common CD file system. ISO image file A quasi-standard format which supports a single session, single track data disc being described by a binary file. iteration A block of time, typically between one and six weeks long, in which a team plans, implements, and delivers a set of functionality. JPEG A graphic file format that uses lossy compression to achieve greater compression than would otherwise be possible. This is designed for photographic images rather than computer graphics. This is defined by and named for the Joint Photographic Experts Group. Linux A alternative operating system that was developed by the Finnish professor Linus Torvalds. It is popular in many areas today because it is free and in some respects more reliable than Microsoft Windows. MS-DOS 2.0 In 1983 Microsoft began distributing MS-DOS 2.0 which defined partition tables for hard disks and the subdirectory structure. This was the operating system that enabled the IBM PC XT to make effective use of the 10MB hard disk it was sold with. NTFS - Acronym for New Technology File System. This was introduced by Microsoft for Windows NT 3.1 in 1993. OSX The current operating system for Apple Macintosh computers. This operating system is built on a UNIX-like base. PERL Acronym for Practical and Easy Reporting Language. This is an interpreted language that has many features for processing strings. It has become the de facto standard for Regular Expression processing. POSIX A set of application programming interface standards defined by IEEE. This is currently implemented by Linux and other UNIX and UNIX-like system vendors. Windows NT at one time had a POSIX subsystem but this has been abandoned. private key One of the two keys used in an asymmetric encryption system. For secure communication, the private key should only be known to its creator. public key One of the two keys used in an asymmetric encryption system. The public key is made public, to be used in conjunction with a corresponding private key. (PKI) public-key infrastructure The set of hardware, software, people, policies, and procedures needed to create, manage, store, distribute, and revoke digital certificates based on asymmetric cryptography. RSA algorithm A public-key encryption algorithm based on exponentiation in modular arithmetic. It is the only algorithm generally accepted as practical and secure for public-key encryption. TIFF Acronym for Tagged Image File Format. This graphic file format is a generic container for a variety of formats with and without compression. Trojan horse A computer program that appears to have a useful function, but also has a hidden and potentially malicious function that evades security mechanisms, sometimes by exploiting legitimate authorizations of a system entity that invokes the program. UDF file system A file system derived from the ISO 13346/ECMA 167 specification. UDF is capable of storing files larger than 2GB and is therefore often used with DVD media. UDF is required for DVD Video and DVD Audio discs. UNIX An operating system developed at Bell Laboratories in the early 1970s. It serves as the basis for most microcomputer and minicomputer operating systems today. For example, Linux and Solaris are both derived from UNIX. UNIX file names UNIX file names are allowed to be any length and in general restricted to printable ASCII characters. virus Code embedded within a program that causes a copy of itself to be inserted in one or more other programs. In addition to propagation, the virus usually performs some unwanted function. wiki An editable intranet site where details of stories and tracking information may be recorded during development. worm Program that can replicate itself and send copies from computer to computer across network connections. Upon arrival, the worm may be activated to replicate and propagate again. In addition to propagation, the worm usually performs some unwanted function. .ZIP The file extension for a ZIP archive. The ZIP archive format was originally defined by PKWare but is now supported by various libraries. zombie A program that secretly takes over another Internet-attached computer and then uses that computer to launch attacks that are difficult to trace to the zombie's creato Quality Center, HP Quality Center.

Software testing - Quality Center Web-based test management tool. What types of attachments that you can attach to a cycle in Quality Center? How many types of attachments that you can attach to a cycle in Quality Center? Answer: 5 types What are the components of a release tree? What is the difference between tying requirements to a release and tying them to a cycle in Quality Center? Answer: Release is a parent to a cycle so all requirements applied to release automatically applied to all cycles in Quality Center. Why do you assign a requirement to a release in Quality Center? What is the purpose of adding traceability links between requirements in Quality Center? Answer: Traceability enables you to identify other requirements in Quality Center that the change might affect. What does a live analyses graph display in Quality Center? Answer: Quality Center live analyses graph provides a visual overview of all tests within a folder in test plan tree. What is a test sets tree? Answer: Quality Center test sets tree design to achieve specific testing goals and organizes and displays the test sets hierarchically What are the rules that you can use to define dependency between test executions? When you run a test on remote host group is the test executed on all the hosts available in the group? Answer: It runs only on the first available host in the group What are the different entities with which defect can be directly associated in Quality Center? If you log in Quality Center a defect for a child requirement, is the defect associated to the parent requirement? Which Quality Center options enables you to generate graphs? How many different Quality Center graph types do you know? Answer: There are five Quality Center graph types. This is the online Test for Software Testers! If you have a good QA question from the professional test engineer's common body of knowledge, please e-mail it to me and I will add it. I would like to cover the following topics: Software Quality Principles and Software Quality management. Software Metrics, Measurement and Analytical methods. Software Process ( SDLC ) and change management. Software Quality control. Software inspection, validation, verification and audit. Software Testing principles and concepts. Software Test planning, test coverage and test metrics. Software Defect tracking, correction and reporting. Software Configuration Management. Check your knowledge.

1. Who mention that 'Quality is free '? (a) Philip Crosby (b) Genichi Taguchi (c) Edwards Deming (d) Joseph M. Juran 2. QC is? (a) Preventive (b) Detective (c) Validation (d) Verification 3.How many maturity levels that indicate process capability CMM has? (a) 5 (b) 4

(c) 6 4.How many KPA (key process areas) CMM has? (a) 18 (b) 20 (c) 14 5. What UML diagram is useful for black box testing? (a) Class Diagram (b) Sequence diagram (c) Object Diagram 6. What type of tests is performed early in a software testing process? (a) White-box (b) Black-box (c) Grey-box 7. Who mention "Top management is in charge of quality"? (a) Edwards Deming (b) Joseph M. Juran (c) Genichi Taguchi 8. The program according requirements expects the uppercase letters from A to Z. Analyze the following inputs and choose one that can cause the failure with greater probability. Help > character set is ASCII (a) 1, 0 (b) @, [ (c) B, W 9. What kind of tools would you suggest to use for the automation of regression tests? (a) Static analysis tools (b) Capture and playback (c) Debugging tools 10. Equivalence class partitioning is: (a) A black-box method that divides the inputs to a program into classes from which test cases can be derived (b) A white-box method that divides control paths into dependent and independent categories for testing (c) A black-box method that divides program functions into related groups for testing 11. Which of the following best defines testing? (a) Testing is the process of proving that a system works according to specifications. (b) Testing is the process of proving that a system is error-free. (c) Testing is the process of locating errors. (d)Testing is the process of confirming that a system meets its objectives. 12. Which of the following best defines walkthrough ? (a) A walkthrough as attesting technique whereby the system is subjected to huge loads of data over a short time (b)A walkthrough is a technique whereby a system is timed to see how long it takes the computer to walk through it to produce a result. (c) A walkthrough is a session during which the participants act out the role of the computer in order to find flaws in the system. (d)A walkthrough is a technique whereby a number of testers are given the system for black box testing. 13.Which unit testing technique eliminates the need for writing drivers? (a) Top down testing (b) Bottom up testing (c) Big bang testing (d) Non incremental testing 14.Which unit testing technique eliminates the need for writing stubs? (a) Top down testing (b) Bottom up testing (c) Big bang testing (d) Non incremental testing 15. Who of the following is the least reliable person to test a program?

(a) The developer who wrote the code (b) An independent agency (c) The testing department in the company that created the application (d) The developer who design the system 16. Which of the following is non - incremental test? (a) Top-down testing (b) Bottom-up testing (c) Big bang testing (d) Stab testing 17. What type of high order test subjects the system to large loads over a short period of time? (a) Volume testing (b) Stress testing (c) Usability testing (d) Security testing 18. Which testing technique involves installing a system at a large number of user sites? (a) Alpha testing (b) Volume testing (c) Beta testing (d) Boundary value analysis 19. At what stage of software development life cycle (SDLC) software errors are least costly to correct? (a) Requirements (b) Detail specification (c) Acceptance test (d) Maintenance 20. What is the relationship between (QA) quality assurance and software testing? (a) QA is part of software testing process (b) Testing and QA are two different processes (c) Testing is part of QA process (d) Testing and QA are all the same thing 21. Which of the following categories of costs associated with cost of quality? (1) Preventive, (2) Failure, and (3) Appraisal (a) Preventive only (b) All three from the above (c) Preventive and Appraisal (d) Preventive and Failure 22. Identify which participant roles are used during a formal inspection? (1) Moderator, (2) Author/producer, (3) Reader, (4) Inspector, (5) Recorder (a) 1, 2 and 3 (b) 2, 3 and 4 (c) All 5 from the above (d) 4 and 5 only 23.If you found during testing in the software project 70 bugs, you would state: (a) The code was poorly implemented. (b) You do not have enough information to make an opinion. (c) There is no statistical control for this project. (d) The software testing for this project was done. 24. What are some of the common misconceptions during implementation of an automated testing tools for the first time? (a) Regression testing phase will be shortened. (b) Existing testing processes can be used and all testers will have the skills to learn the new tool (c) During a ramp-up period, testing will take longer. 25. User acceptance testing demonstrates that a system meets customer and end user requirements. Is it true or false? (a) True (b) False

26. Identify types of static testing. (a) assessment (b) walkthrough (c) acceptance testing (d) gap analysis I would like to cover the following topics: Software Quality Principles and Software Quality management. Software Metrics, Measurement and Analytical methods. Software Process ( SDLC ) and change management. Software Quality control. Software inspection, validation, verification and audit. Software Testing principles and concepts. Software Test planning, test coverage and test metrics. Software Defect tracking, correction and reporting. Software Configuration Management. QTP Interview Questions QTP Interview Questions and Answers 1. Explain the purpose of QTP. Quick Test Professional or QTP is a record-playback test automation tool for graphical interfaces. QTP aids in testing web objects as well as ActiveX controls and can be used with any Java, Java applets, windows client, .NET framework, and Visual Basic web applications. 2. How can the recovery scenario manager be used to handle exceptions in QTP? If unexpected errors and events occur during a test run, QTP provides a wizard through the Recovery Scenario Manger that can recover them. A recovery scenario can be activated during 4 specific trigger events. They include the following: Appearance of a pop up window during test execution The value or state change of an objects properties A failed test step A failed test run in the application 3. When creating functions, what should be done to allow optional arguments? Since optional arguments are not supported a more indirect method must be employed. If an argument is not required, a blank string should be passed with a default value. 4. When running a script, is it possible to turn off the results? The window that displays the results can be suppressed but results will still appear in the log. To do this, you must make sure that View Results When Run Session Ends is deselected in the Run tab of the options under the Tools menu. 5. What is the Test Fusion Report? The Test Fusion Report contains the details of the test run. This includes a high-level overview, the data used, application screenshots of discrepancies, a tree view of the failure points, and detailed explanations of each checkpoint. 6. What testing environments are supported by QTP? All enterprise environments are supported for functional testing including .NET, J2EE, Java, Windows, Oracle, Siebel, SAP, Visual Basic, PeopleSoft, ActiveX, mainframe terminal emulators, and Web services.

7. How does one go about changing an objects run-time value? During a test run the SetToProperty function can be used to change the property values that identify an object. This is only possible for properties that are included in the test object description. 8. What task does checkpoints perform? Checkpoints are used to verify that the information that is expected is displayed while the test is running. There are eight types of checkpoints available: Page checks application characteristics Text verifies that text strings are show in the proper locations in the application Object checks the values of application objects Image checks the values of application images Table verifies information in an application table Accessibility checks the web page for compliance with Section 508 XML verifies that the contents of XML data files or documents that are part of the application Database verifies the contents of databases accessed by your web site Some more QTP Interview Questions 9. Are object repositories required to for test case script?

An object repository is not required but you must know the window handlers. 10. Name two ways that checkpoints can be added to an application?

One way is to add them while the application is recording. The other is to use the Active screen (while it is active) to add them after recording is finished. 11. How you add a run-time parameter to a datasheet? This can be achieved by using LocalSheet property. For example, the following is an example of how to return the local sheet of the run-time data table so that a parameter can be added: YourParam=DataTable.LocalSheet.AddParameter(Date, 6:30) 12. What does QTP use to identify application objects?

Objects are identified by class and by logical name. 13. What does parameterize mean?

When a tester wants to verify how an application performs a certain operation, they will often run it several times using different sets of data. Instead of running the test several separate times, they can create a parameterized test that runs the operation several times using a different set of data each time. 14. Describe the QTP test object model?

The test object model is a set of object classes and types that are used to represent application objects. Each object class contains a list of properties that identify objects of that class as well as a set of methods that can be recorded for it. 15. What are the object repositories modes? There is two object repository modes: per-action mode and shared mode. The per-action mode is best to use when creating simple record and run tests when there is only one or very few tests that correspond to the interface, objects, or application, when test object properties will not be modified frequently, and when creating single-action tests. The shared mode is best

used when there are several tests that correspond to the interface, objects, or application, when test object properties are expected to be modified frequently, and with multi-action tests. 16. Describe the Object Spy.

Object Spy is a feature that can be used to view the properties of any of the application objects. When the pointer is used to select and object, the hierarchy tree, values, and properties of the object are displayed in the Properties tab of the Object Spy dialog box. 17. How is batch testing performed in QTP?

Batch testing is performed by running the entire test set. All automated test scripts are executed one at a time by keeping the other scripts in waiting mode. 18. Provide an example of how to use a COM interface in QTP?

A COM interface appears in the front and back end of a scenario. If Oracle is being as the back end and Visual Basic as the front end, COM will create a more compatible interface. Manual Testing Interview Questions Manual Testing Interview Questions Normally Manual testing interview questions are asked in all types of testing job interviews. Whether it is Manual, Automated or even database testing. Because in Manual testing, all kind of basic and mandatory skills a tester needs to have will be covered. 1. How do drivers and stubs relate to manual testing? Drivers and stubs are a part of incremental testing. The two approaches used in incremental testing are the top down and the bottom up methods. Drivers are used for the bottom up approach. They are modules that run the components that are being tested. A stub is used for the top down approach and is a replacement of sorts for a component, which is used to test (and even develop) a component that it calls. 2. What is the Waterfall Model? The Waterfall model is one of the first models to be used for software testing. In this approach, the software development process is divided into separate phases. These phases typically include requirements specification, software design, Integration and test, and maintenance. Each phase cascades to the next. That is, one phase doesnt begin until the main goals of the previous phase is completed or signed-off. 3. What is the V model? The V model of the software development life cycle integrates testing into each phase of the model. The phases of this includes user requirements specification, system requirements specification, global design, detailed design, implementation, and testing of the system as a whole. In this model the phases are performed in parallel with development activities. There are four test levels in this model: component, integration, system and acceptance. 4. Explain regression testing. Regression testing checks either a specific component of the application or the full application after revisions have been made. The purpose of regression testing is to guarantee that new defects have not been introduced in the application. It is especially important to make sure that bugs have not been introduced into areas where no changes were made. 5. What is stress testing?

Stress testing checks how robust the application is and involves verifying that that application consistently provides satisfying performance under unfavorable and extreme conditions. This included, heavy user traffic, heavy process loads, irregular hardware clocking, and heavy utilization of resources. It is also used to verify effectiveness of error handling under extreme conditions. 6. What is sanity testing? Sanity testing is a basic test that is used to ensure that there are not multiple or conflicting functions or variables. Basically, it verifies that the components of the application can be compiled without a problem. This is conduction on all parts of the application. 7. What is ad hoc testing? Ad hoc testing software testing that is performed without the use of planning and/or documentation. They are typically run only one time unless a defect is found. In these cases, testing may be repeated. Ad hoc testing is considered to be a part of exploratory testing. 8. What is smoke testing? Smoke testing covers all of the basic functionality of the application. It does not explore the finer details of the application and is considered to be the main test geared towards checking the functionality of the application. 9. Explain boundary value analysis. Boundary value analysis is a black box testing method in which tests are based on boundary values in the application. A boundary value is an input/output value that is on the border of an equivalence partition. Or more simply put, the maximum or minimum value allowed. Few More Manual Testing Interview Questions and Answers. 10. What is the difference between priority and severity in regards to defects found in software testing? In software testing, the priority of a defect is the level of importance from a business standpoint. Severity, however, is determined by the level of impact the defect will have on the system. This impact can involve the development or the operation of a component or the whole system. 11. Explain compatibility testing. Compatibility testing is a non-functional test performed on a software system or component for the purpose of evaluating its compatibility the other parts of the computing environment. This includes the hardware, servers, operating system, web browsers, other software, etc. 12. Explain integration testing. Integration testing is testing that is performed to verify the interfaces between system components, interactions between the application and the hardware, file system, and other software. A developer can perform it, but ideally a different integration tester team should perform it. 13. What is equivalence class partitioning? Equivalence partitioning is a testing technique that is used to minimize the occurrences of combinations and permutations of input data used for testing. With this method, input possibilities are sorted into equivalence classes in which data that have the same or similar affects are placed into the same class. It assumes that the utility of the program will not change for any value of data from the same class. The tester assumes that it is adequate to choose one test case from every segment to verify system or component behavior. This reduces the effort required for testing by minimizing the number of test cases to be tested.

14. Provide and example that explains difference between usability and functional defects? And example of the difference between usability and functional defect will be that of a Login window. A usability defect would be when a user enters a valid user name, but invalid password, and the application gives an error message of Please enter a valid user name when it should have been Please enter a valid password. A functionality defect would be if in the same scenario, the application accepts the name and the password, though one is incorrect. 15. Explain pilot testing. Pilot testing is verifying a component of the system or the entire system under real time operating conditions. Using a real time environment helps to locate bugs in the system at an earlier time since the later a bug is found, the more costly it can be. Pilot testing often involves allowing a group of users access the system and implementing their feedback before it is completed and deployed to the public. Few Tricky Manual Testing Interview Questions: Interviewer may as well ask you some of the below questions for which you can get answers in the same blog. How can you write a test scenario? How do you make test cases from test scenario? How to make test scenarios from a requirements/functional specs? What are the important deliverable of a Manual Tester? You must also get prepared for: Quality Center Interview Questions And Answers Quality Center Interview Questions

Quality center is a Defect tracking tool, where you can view existing defects, create a new defect that you found from your manual testing, you can edit, close defects. remember that Test director was the previous version to Quality center. Now-adays every where HP quality center or IBM Clear quest is used for defect management. Quality Center Interview Questions can be normally focused by the interview panel along with manual testing interview questions. Though the interview mostly targeted to Quality center skills, then need a guy with common testing skills as well. Because with out manual testing knowledge, there is not use if quality center as this tool is only used for defect tracking. 1. What is the relationship between Quality Center and TestDirector? TestDirector is the tool that was later renamed to Quality Center. The last version of TestDirector was version 8.2. 2. What is the purpose of Quality Center? TestDirector is a web-enabled tool used for the management of tests. It supports cross-team communication and helps to improve the efficiency and effectiveness of collaboration in the process of testing global applications. It is capable of generating reports and graphs that can be used for test analysis, planning, and the tracking of defects. 3. What is the purpose of linking test cases to requirements? Test cases are linked to requirement so verify test coverage. This ensures that all requirements are being verified by at least one test case. 4. What types of requirement options can be added to test cases? There are two types of requirements: Parent Requirement High level functions Child requirements. Low level (sub-requirements of parents)

5. What are the main advantages of Quality Center? It is capable of performing manual and automated testing It takes all parts of the testing process into account, from test planning through defect tracking It ensures test coverage by linking requirements to the test cases It allows for test plans and requirements to be imported from Microsoft Excel 6. What do you have to use to upload test cases from Microsoft Excel? This can be done using the MS Excel add-in. This option can be installed from the Quality Center Add-In menu. Once this is completed, there will be a new menu option in MS Excel for exporting to Quality Center. 7. How are filters be used? Filters are used to sort the test results. A tester can easily find all pass or fail results using a filter. 8. What is the Test Lab? The Quality Centre Test Lab where tests are executed. Tests from the test plan can be added to test trees that run in various test cycles. 9. How can the defect management cycle be tailored in Quality Center? Once all of the defect attributes that will be tracked (i.e. version, details, etc.) are determined, use the Modify Options feature of Quality Center to customize. 10. Does Quality Center allow defect to be mapped directly to requirements? No, defects are mapped indirectly to requirements through test cases. Few more Quality center Interview Questions.

11. Can test data be stored in TestDirector? Test data can be stored by attaching it to the matching test cases. It can also be saved into a separate folder in test plan. 12. Will test data be lost if you choose to upgrade from TestDirector to QC? If the instructions are followed, test data will not be lost when migrating from TestDirector to Quality Center. 13. How are test cases grouped? The tested decides how to group test cases. The tester has the option of creating several folders in the test plan to represent the test modules. They also have the option of creating sub-modules from there. 14. How does Quality Center compare to Bugzilla? Quality Center has much more functionality than Bugzilla. Bugzilla is a defect logging and tracking tool while Quality Center is a test management tool. In addition to being able to track defects, Quality Center is capable of managing requirements and test cases for both manual and automated tests and much more. 15. What reports are available in Quality Center?

Some of the test reports that are available include those for requirements, test cases, defect tracking and more. They can be generated from any module and can also be customized using filters to include summaries, coverage, progress, and more. Customized report setting can be saved and reloaded for future testing. 16. Can one defect be mapped to more than one test script? A defect can be mapped to several different test scripts using the option called associate defect. 17. Do scripts have to be recorded in QTP or WinRunner before importing them into Quality Center? No, scripts can be recorded directly to Quality Center by first specifying the URL, user ID, password, project, etc and connecting to Quality Center. The recording tool has to be opened when doing this. The script can be saved to Quality Center rather than the local machine. 18. How can you be sure that bugs are not duplicated? The Find Similar Defect feature searches for defect duplication. 19. What information is in the test grid? The test grid contains all tests that are related to a project as well as a toolbar with controls that are frequently used when creating and modifying the tests. Filters used in the grid and test history are also displayed. 20. What views are available in TestDirector? There are three views available in TD: Plan Test for preparation of test cases Run Test for test execution Track Defects for logging bugs 21. What are the Quality Center tabs? There are four tabs: requirements, test plan, Test Lab, and defects. 22. How can Quality Center be used in real-time projects? For real-time project, when the test cases are completed, they should be imported into Quality Center and loaded into a test plan. When test execution begins, test cases are moved to Test Lab. Test Lab executes the cases and assigns pass/fail/incomplete statuses. Graphs can be generated and defects attached. 23. What is the difference between Not run and Not covered statuses? The Not Run status indicates that the test cases associated with the requirements exist but have not been executed. The Not Covered status indicates that the test cases associated with the requirements do not exist yet. 24. What is the difference between QA Inspect and Web Inspect? The QA Inspect feature searched the full web application for vulnerabilities in security, prioritizes them, and provided detailed information and solution suggestions. Web Inspect, on the other hand, is often used as a security assessment for vulnerabilities in security for critical data. Web inspect is use the most by security experts and compliance auditors. Above are the important and very commonly asked Quality Center Interview Questions, along with some below imp notes:

Normally the flow of quality center is like this: First you will encounter few errors/suggestions in your testing of the application. Now you will raise a defect for this error you found in quality center and assign that defect to a developer. The developer will then resolve the issue in his programming/coding and then will re assign to a tester. Now the tester will re test the application (Also called regression testing) and then if he is not seeing that error any more, then he will close the defect. For creating a defect, you need to enter the title of the defect, summary of the defect, screen shots if available etc.. You may also be interested in Database Testing Interview Questions. quality center interview questions quality center interview questions and answers qc intervie . What is software quality assurance? 2. What is the value of a testing group? How do you justify your work and budget? 3. What is the role of the test group vis-is documentation, tech support, and so forth? 4. How much interaction with users should testers have, and why? 5. How should you learn about problems discovered in the field, and what should you learn from those problems? 6. What are the roles of glass-box and black-box testing tools? 7. What issues come up in test automation, and how do you manage them? 8. What development model should programmers and the test group use? 9. How do you get programmers to build testability support into their code? 10. What is the role of a bug tracking system? 11. What are the key challenges of software testing? 12. Have you ever completely tested any part of a product? How? 13. Have you done exploratory or specification-driven testing? 14. Should every business test its software the same way? 15. Discuss the economics of automation and the role of metrics in testing. 16. Describe components of a typical test plan, such as tools for interactive products and for database products, as well as cause-and-effect graphs and data-flow diagrams. 17. When have you had to focus on data integrity? 18. What are some of the typical bugs you encountered in your last assignment? 19. How do you prioritize testing tasks within a project? 20. How do you develop a test plan and schedule? Describe bottom-up and top-down approaches. 21. When should you begin test planning? 22. When should you begin testing? 23. Do you know of metrics that help you estimate the size of the testing effort? 24. How do you scope out the size of the testing effort? 25. How many hours a week should a tester work? 26. How should your staff be managed? How about your overtime? 27. How do you estimate staff requirements? 28. What do you do (with the project tasks) when the schedule fails? 29. How do you handle conflict with programmers? 30. How do you know when the product is tested well enough? 31. What characteristics would you seek in a candidate for test-group manager? 32. What do you think the role of test-group manager should be? Relative to senior management? Relative to other technical groups in the company? Relative to your staff? 33. How do your characteristics compare to the profile of the ideal manager that you just described? 34. How does your preferred work style work with the ideal test-manager role that you just described? What is different between the way you work and the role you described? 35. Who should you hire in a testing group and why? 36. What is the role of metrics in comparing staff performance in human resources management? 37. How do you estimate staff requirements? 38. What do you do (with the project staff) when the schedule fails? 39. Describe some staff conflicts you ve handled. [Interview Questions QA Back to Top]

Here are some interview questions you might be asked on a job interviewfor a testing opening: (sample from MU COSC 198 Software Testing by Dr. Corliss) Why did you ever become involved in QA/software testing? What is the software testing lifecycle and explain each of its phases? What is the difference between testing and QA (Quality Assurance)? What is Negative testing? What was a problem you had in your previous assignment (testing if possible)? How did you resolve it? What are two of your strengths that you will bring to our QA/testing team? How would you define (QA) Quality Assurance? What do you like most about Quality Assurance/Software Testing? What do you like least about Quality Assurance/Testing? What is the Waterfall Development Method and do you agree with all the steps? What is the V-Model Development Method and do you agree with this model? What is the Capability Maturity Model (CMM)? At what CMM level were the last few companies you worked? What is a "Good Software Tester"? Could you tell me two things you did in your previous assignment (QA/Testing related hopefully) that you are proud of? List 5 words that best describe your strengths. What are two of your weaknesses? What methodologies have you used to develop test cases? In an application currently in production, one module of code is being modified. Is it necessary to re- test the whole application or is it enough to just test functionality associated with that module? Define each of the following and explain how each relates to the other: Unit, System, and Integration testing. Define Verification and Validation. Explain the differences between the two. Explain the differences between White-box, Gray-box, and Black-box testing. How do you go about going into a new organization? How do you assimilate? Define the following and explain their usefulness: Change Management, Configuration Management, Version Control, and Defect Tracking. What is ISO 9000? Have you ever been in an ISO shop? When are you done testing? What is the difference between a test strategy and a test plan? What is ISO 9003? Why is it important What are ISO standards? Why are they important? What is IEEE 829? (This standard is important for Software Test Documentation-Why?) What is IEEE? Why is it important? Do you support automated testing? Why? We have a testing assignment that is time-driven. Do you think automated tests are the best solution? What is your experience with change control? Our development team has only 10 members. Do you think managing change is such a big deal for us? Are reusable test cases a big plus of automated testing and explain why. Can you build a good audit trail using Compuware's QA Center products. Explain why. How important is Change Management in today's computing environments? Do you think tools are required for managing change. Explain and please list some tools/practices which can help you managing change. We believe in ad-hoc software processes for projects. Do you agree with this? Please explain your answer. When is a good time for system testing? Are regression tests required or do you feel there is a better use for resources? Our software designers use UML for modeling applications. Based on their use cases, we would like to plan a test strategy. Do you agree with this approach or would this mean more effort for the testers. Tell me about a difficult time you had at work and how you worked through it. Give me an example of something you tried at work but did not work out so you had to go at things another way. How can one file compare future dated output files from a program which has change, against the baseline run which used current date for input. The client does not want to mask dates on the output files to allow compares. - Answer-Rerun baseline and future date input files same # of days as future dated run of program with change. Now run a file compare against the baseline future dated output and the changed programs' future dated output.

[Interview Questions QA Back to Top] Questions to ask during an interview What is the structure of the company? Who is going to do the interview-possible background information of interviewer? What kinds of assignments might I expect in the first six months of the job? What do you like best about your company? What is the employer's environment (platforms, tools, etc.)? What are the employer's methods and processes used in software arena? What is the employer's philosophy? What is the project all about you are interviewing for-as much information as possible. Any terminologies that the company may use. What is the structure of the software testing team? What are the responsibilities of the software testing team members? How many computers are in the software testing lab? What kinds of software testing tools are installed in the software testing lab? What is the ratio between software developers and testers in the company? What development and QA methodologies is the company using? What are your growth projections for next year? Have you cut your staff in the last three years? Is this a new position or am I replacing someone LoadRunner Interview Questions LoadRunner Interview Questions and Answers

Load Runner is HP tool used to test the performance of a software application. Even though there are many other tools to find testing performance of an application, Loadrunner got its own share of advantage due to its unique features and ease of the tool navigation easy to understand the tool functionality. So, in the interviews when ever you get questions about performance testing, you need answer more about how you have used the loadrunner using its functionality and what kind of different testing you have done such as load testing, benchmark testing, stress testing, endurance testing etc And also please compare how you have compared and used existing benchmark test results with previous and new results. For example, we normally conduct a benchmark test for the application initially and take all the measurements in a excel sheet. Examples of measurements will be like below: Sign-in module with 1000 users at a time 10 sec execution time. Sales category module time with 10 users : 5 sec So, after a while you have implemented one more new module, then you need to do benchmark testing again to see if there is any impact on existing module performances. For this we conduct once again the same benchmark test and take measures and compare with the previous results (above). If any existing module taking more time after this new module implementation, we will investigate why??

1. What components are available in LoadRunner? The components available in LoadRunner are the following: Controller, Virtual User Generator (VuGen), Agent processor, Analysis, Monitoring, and books online. 2. Which LoadRunner component is used for recording scripts? The Virtual User Generator (VuGen) is used for script recording. It can be used to create Vuser scripts for a broad range of communication protocols and application types.

3. Which LoadRunner component is used for the playback of a script in the multi-user mode? The Controller can be utilized for script playback in the multi-user mode. Script playback is usually performed during scenario testing where multiple Vuser scripts are executed in a group. 4. How can a LoadRunner script be debugged? Breakpoints and the Run Step-by-Step features of VuGen can be used for debugging and this information is written in the output window. There are debug settings in the Options area that allow the user to set the specifics about the trace that is performed during the execution of the scenario. 5. How does one write a user defined function in LoadRunner? When creating a user-defined function, one must first create the external library that contains the function. This library must then be added to the bin directory of VuGen. Next, the user-defined function can be assigned as a parameter. 6. What is the process for load testing? 1. Test Planning Create a clear test plan in order to be certain that the scenarios that will be developed for testing the application will fulfill the objectives for load testing. 2. Vuser Creation Create scripts for Vusers that have tasks that will be completed by each individual Vuser, by all Vusers together, and those that will be examined as transactions. 3. Scenario Creation Scenarios explain the actions that will occur during testing and include lists of scripts, machines, Vusers, etc. that run in that time period. LoadRunner can automatically build scenarios. The LoadRunner Controller is used for this and it is capable of creating both goal-oriented and manual scenarios. For goal-oriented scenarios, the goal that the test has to achieve is defined. For manual scenarios, the scripts, load generators, volume of Vusers, and amount of Vusers that are to be appointed to each script has to be defined. 4. Scenario Runs Before running the test, the configuration and scheduling of the scenario is set. Running the test will involve instructing several Vusers to execute tasks at the same time, which emulates the load on a server. 5. Scenario monitoring The scenario is monitored using some or all of the many performance monitors offered by LoadRunner. These monitors include the following: system, ERP, web, web application server resource, streaming media, firewall, and database server resources, transaction, online runtime, network delay, and Java performance. 6. Results Analysis LoadRunner records data from the test and provides various reports and graphs that can be used to evaluate the performance of the application. 7. Define rendezvous point. Rendezvous points are places in the test execution that command Vusers to wait for other Vusers so that a task(s) can be performed simultaneously. This is done to simulate heavy user traffic on a server. For example, the peak load for a bank server can be simulated by inserting a rendezvous point that instructs 1000 Vusers to withdraw cash from accounts simultaneously. 8. Why is it useful to establish parameters? Parameters can be thought of as script variables and are used to simulate real users and alter input to the server. It allows the tester to use a single script to emulate a variety of system users by allowing multiple sets of data to be sent to the server with each script run. 9. Which function is used to capture dynamic data in the web Vuser script?

Web_reg_save_param is the function that saves dynamic data to a parameter. 10. What are the changes that can be made to run-time settings?

There are four run-time settings that can be made: Pacing: This contains iteration count. Log: This is where logging can be set to standard or disabled. Extended Think Time: Capable of setting think time to be ignored or replayed. General: Allows the setting of Vusers for processes or multithreading. 11. How can web server related issues be found?

Web resource monitors can be used to find server related issues. These monitors are capable of analyzing web server throughput, volume of hits per second during the execution of the scenario, the number of pages downloaded per second, and the volume of responses per second. 12. How can database related issues be found?

Monitors and the Data Resource Graph can be used to find database related issues. LoadRunner allow the tester to specify the resource that is to be measured before the controller is run. Some more Loadrunner Interview Questions. 13. What are the types of options are available for goal-oriented scenarios?

There are five goal options available: Number of Vusers (concurrent) Number of transactions/second Number of hits/second Number of pages/minute Transaction response time 14. How many types of graphs are available in LoadRunner and what are they?

There are 5 types of graphs: Network delay time graph displays the time the elapses between request and response Two transaction response time graphs one for load and one for percentile Hits/second graph Shows application traffic volume. Pages download/second graph shows the rate that download processes are performed 15. How can performance bottlenecks be identified?

LoadRunner has monitors that can be used to detect performance bottlenecks. These include network, web server, application server, and database server monitors. These monitors can be used to locate trouble spots in scenarios that cause increases response time and they track throughput, network delays, performance response time, hits/sec, etc. 16. When should load and performance testing be performed?

Load testing should be performed when the user interface is completed and tested. User interface testing typically focuses on functionality of a system component, whereas load and performance testing focuses on the whole system. For example, a typical scenario will check reliability when 1000 users are logged in at the same time and will examine system response time, operation on various platforms, whether the system crashes, etc.

17.

How can one tell when correlation can be performed?

There are two ways to do this. One is to use the scan function to search for correlations and select a value from the resulting list. The second is to record a pair of scripts and then compare them to each other. 18. Where are automatic correlation options set?

The automatic correlation is set in recording options area on the correlation tab. From here, correlation can be enabled for the full script and rules for correlation can be defined. Automatic correlation can be performed on a database by viewing the output window, scanning for correlation, and selecting the value that will be used. 19. Where is the number of iterations set for testing with Vuser scripts?

The number of iterations is set in the VuGen pacing tab in the Run-time settings area. 20. What is ramp up and how can it be set?

Ramp up is gradually increasing the load on a server. This is simulated by gradually increasing the number of Vusers. This feature can be found in the Scenario Scheduling Options. When used, the initial value and the time to wait between periods are specified. 21. What is the benefit of running a Vuser script as a thread?

The advantage of running a Vuser script as a thread is that it allows more Vusers to be used for one load generator. Running Vuser scripts as processes utilizes a lot of memory because all of the loaded scripts use the same driver. This limits the number of Vuser scripts that can be run on one generator. 22. How do you set LoadRunner to stop script execution when an error occurs?

Execution of Vuser scripts can be stopped on error using LoadRunners lr_abort function. The Continue on error option must not be checked in the Run-Time Setting menu. It is helpful when it is necessary to abort execution when a certain error condition occurs. This function instructs the Vuser to stop performing what is in the Actions section, and to begin performing the vuser_end functions. When execution is terminated, the Vuser status is changed to Stopped. 23. How are throughput and response time related?

The graph for throughput displays the quantity of data that the server sent to the Vusers in one second. When throughput is compared to the response time of transaction, it decreased as the response time decreased. In addition to this, the highest throughput and response times occur at approximately the same time. 24. Define think time and explain how do you change the threshold for it.

Think time is the interval of time that a user must wait between actions. An example of this is the time that a user takes to review data after receiving it from the server before responding to it. The threshold is the maximum level at which this time will be ignored. The default threshold value is five seconds but this can be modified in the VuGen Recording options. 25. Explain the difference between standard and extended log.

The standard log contains a subset of functions and messages, which vary based on the type of Vuser, that are generated during the execution of a script. The extended log creates a more detailed listing of functions and messages. WinRunner Interview Questions WinRunner Interview Questions and Answers

1. What information does a GUI map contain? A GUI map contains the information that WinRunner learns about an object or a window. When a test is executed, the GUI map is used to locate object by reading physical description and logical names in the map and searching the application for objects with the same properties. There are two types of GUI map files: Global file for the whole application File per Test for each individual test 2. What language is used to create test scripts in WinRunner? WinRunner test scripts are created in the Mercury Interactive Test Script Language (TSL). The Function Generator, WinRunners visual programming tool can be used to modify a recorded test script in TSL. 3. What are the recording modes? There are two type of recording modes: context sensitive and analog. Context Sensitive identifies GUI objects and records operations performed in the application Analog recording records peripheral inputs from the keyboard and mouse (including cursor position in the x-y coordinate plane) 4. How are WinRunner add-ins used? WinRunner add-ins is used to load a particular set of functions into memory. Only functions for selected add-ins are shown in the function generator for script execution. 5. What is used to view GUI maps? The GUI Map Editor is used to view GUI maps and is located in the Tools menu within WinRunner. It displays all of the GUI Map files including their objects with physical descriptions and logical name. 6. Is there a disadvantage in using a startup script to load a GUI map? There are two possible disadvantages of using a startup script to load a GUI map. First, when one GUI map file is sued for a large application, a large amount of memory is often required. Second, object changes may not be recognized if the GUI map file is not loaded into memory at the time so objects may need to be re-learned, and the GUI file may need to be updated and reloaded. 7. What happens when GUI maps are loaded? When a GUI map is loaded, all object logical names, physical descriptions, and window information of the information is loaded into memory. When a script for a particular window is executed, the objects can be identified by the information that is loaded.

8. When is it appropriate to modify the logical name of an object in a GUI map? Modifying the logical name of an object is appropriate when the existing name is too long or does not provide a sufficient description. 9. When it is appropriate to modify the physical description of an object in a GUI map? Modifying the physical description is appropriate when an objects property value changes. 10. Is it possible to suppress a regular expression?

Yes, the regular expression of a window can be suppressed by replacing the regexp_label property with a label property. 11. How can you filter GUI map objects?

GUI objects can be filtered using the Filter option within GUI Map Editor. There are three filtering options: class, physical description, and logical name. 12. When are GUI mappings and configuration setups permanent?

The mapping and the configuration setups are typically valid for the current session within WinRunner but configuration statements can be added to the test startup script to make them permanent. 13. Explain the function of GUI spy.

GUI Spy allows the user to examine the properties of GUI objects on their desktop. It is possible to view all object properties or a specific set of properties. The Spy pointer is used to select the object, and the properties and their values are displayed in the dialog box. 14. Explain optional and obligatory properties of objects?

Default properties learned in WinRunner are classified as either obligatory or optional. Obligatory properties are learned each time, while optional properties are only learned when the obligatory properties do not provide unique object identification. Optional properties are saved in a list which WinRunner uses to select enough properties that will adequately and uniquely identify the object. 15. What is a custom GUI object?

A custom GUI object is one that is not part of one of the standard classes used by WinRunner and it is learned under the generic object class. If a custom object is similar to a standard object, it can be mapped to one of the standard classes. WinRunner can also be configured to recognize a custom object during Context Sensitive testing. 16. What is the purpose of checkpoints?

Checkpoints can be used to compare the current application behavior to its behavior in a previous version. WinRunner has four types of checkpoints: text, bit Map, GUI, and database. Text reads and displays the text contents of GUI objects and bit map and in bitmaps Bitmap compares application window or area snapshots to earlier versions of the same window or area GUI validates GUI object information (i.e. whether a button is enabled, an item is selected in a list, etc.) Database verifies the contents and size of a set of results (based on a database query) 17. How do you maintain test script document information?

Test information can be documented in the Test Properties dialog box on the General and Description tabs. It is typical to include the test authors name, the functionality being tested, detailed test description, and references to specifications in the test documentation. 18. Are expected results in the checklist file?

Information about object properties is located in the checklist file. Expected results information is located in the gui*.chk file. 19. What do you check with a custom database checkpoint?

The custom database checkpoint allows you to specify the properties that are reviewed in a set of results. Part or all of the contents of the results can be viewed and edited. This can be done using Data Junction, Microsoft Query, or ODBC.

20.

When can you edit an objects expected value?

And objects expected value can be edited manually in the gui*.check file. I can also be edited when the script is run in the Update mode. 21. When can you change a GUI checkpoint expected result?

The expected results of a GUI checkpoint can be modified when the script containing the checkpoint is executed in the Update mode. 22. What is used to handle Visual Basic and ActiveX objects?

WinRunner is capable of handling Visual Basic and ActiveX objects when the add-ins for each are selected. Add-ins can be selected when WinRunner is being loaded. 23. How is an ODBC query created?

An ODBC query can be created by using the Database Checkpoint wizard. This includes an option to create an SQL file that contains a connection string and an SQL statement necessary to use an ODBC DSN to connect to the database. 24. How can a data driven test be recorded?

There are three ways to create a data-driven test: use data from a flat file, use data from a data table, or use data from a database. Flat File Data must be saved in a pre-determined format and is read from the file using file manipulation commands and assigned to variables. Data Table Similar to the flat file method but data is usually stored in a Microsoft Excel file. Database Similar to the previous methods except test data is saved in the database. 25. Can parameters be added to database check points?

Parameters can be added to an SQL statement to parameterize a checkpoint using ODBC. This can be helpful in creating a database checkpoint with a query when the SQL statement that defines the query is expected to change. 26. Define compiled module?

A compiled module is a script that contains a library of functions defined by the user that will frequently be called from other tests. When a compiled module is loaded, the functions that it contains are compiled automatically and remain in memory. Using compiled modules can greatly improve test performance and organization because they are debugged before using so less error-checking is required. Also, calling a pre-compiled function is usually faster than interpreting one in a test script. 27. Explain the difference between a compile module and a script.

A compiled module is not executable and is used to store reusable functions while a test script contains the executable file. Compiled modules are loaded into memory and are referenced from the TSL code within a module. 28. Where is the search path set for calling a test?

The search path is used to set the directories that WinRunner will explore when searching for a test. This path is set in the Settings tab of the General options. Under Setting, there is a box labeled Search Path for Called Tests Several paths can be listed. WinRunner will search in the order that the directories are listed and the search paths defined are saved and active for future testing sessions. 29. What are the classes of a function?

There are two function classes: static and public. A static function is one that is only available in the test module where it is defined. Public functions on the other hand are available for all other tests once it is executed and as long as it is kept open. If it is desired to have a function available even when not opened, then the tester should consider using a compiled module. If a function definition does not declare a class, the default setting is public. 30. Why might WinRunner fail to identify an object on a GUI?

WinRunner might fail to recognize an object in a GUI if it is not a standard windows object or if the browser that is used is not compatible with the version of WinRunner that is being used for testing. In these cases, the GUI Map Editor may not be able to learn the objects. 31. Explain the relationship between GUI map files and GUI maps?

A GUI map is in reality the compilation of one or more GUI map files. winrunner interview questions 2 how winrunner recognize gui objects? winrunner technical interview questions

Winrunner real time Interview questions Many people are asking me to post Winrunner Interview questions and answers. I have received these real time interview questions from one of the visitor of my website. So I thought it may be helpful to all job seekers if I post it here. Q. What databases can Test Director reside on? Oracle, Access, Sybase, MsSQL Q. What is TSL? What other language is it similar too? And in what way is it similar to it? A. Test Script Language B. C. C It combines functions with features such as variables, control-flow statements, arrays, and user defined functions.

Q. Difference between WinRunner and Test Director? WinRunner handles automation test scripts TestDirector manages test scripts, defects and test plan

Q. Name 3 approaches to provide data from an external source for a data driven test. A. B. C. CSV Data Table Database

Q. What function is used to call your customized compiled module? Load or Reload function

Q. Whats the purpose of the wrun.ini file? Configuration set up for WinRunner

Q. Explain the project tree in Test Director? Used to coordinate and manage test cases

Q. Explain data parameterization in WinRunner. Data is written multiple times, while WinRunner has a repeated loop to process the data.

Q. Name a couple of standard web function found in the function generator? And explain their purpose. Web_**** web_obj_get_text returns a string from an object web_file_browse clicks a browse button web_link_valid checks whether a URL name if a link is valid (not broken) web_obj_get_info returns the value of an object property

Q. What is the WinRunner utility that gives the user easy access to built in Web and TSL functions? Function Generator

**First you have to find out if they are familiar with data driven scripts, if so -

Q. What are the initial and end conditions that are necessary when setting up a new script with data driven data?

ddt_open and ddt_close. These two statements MUST be in data driven test in order for it to run properly, otherwise the data tables will not open and close.

Q. What information do you need to get during Planning to aid you in creating an automated test? Testing Requirements; Business Requirements; Software Requirements; User actions and expected results; Data to use

Q. Describe the ideal test to be automated. Of the various features of tests, she or he should be able to list the parameters which make a test a good (or bad) candidate to be automated. A. B. C. D. E. data driveable useful across multiple builds run frequently amount of human interpretation Cross browser testing

Q. Why do you automate tests? If they say to save money, say thanks and good bye. We automate tests to produce better software, speed, repeatablity, reliability and reusability.

Q. What is the GUI map used for? Serves as a translator between the scripts and the browser

Q. How are object identified in the GUI map? By the objects description and the parent frame of the object.

Q. What is the basic structure of a User defined function? [class] function name([mode]parameter..) {

declarations; statements; }

There are a some important concepts with WinRunner but these change depending on what application that you are testing.

Advanced Topics. 1. GUI Maps and GUI Map Configuration. 2. Data Driven Tests. 3. GUI Checkpoints. 4. Creating User defined functions. 5. Compiled Modules. 6. Customizing WinRunner with libraries. 7. Implementing DLLs with WinRunner. real time manual testing interview questions real time software testing interview questions software testing real time questions

Bug Tracking Interview Questions 1. Explain the difference between test case, use case, test plan, and scenario. Test Case contains test data Use case designed before the project starts Test plan detailed plan to outline testing (beginning, ending, resources, constraints for automation or manual testing, etc.) Scenario designed during testing phase

2. Explain the difference between a bug and a defect. While similar to each other and tracked using the same tools, a bug is considered to be an error in satisfying requirements while a defect is missing a requirement altogether.

3. How do you post a bug? There are tools to post and track bugs such as Bugzilla, BugAware, BugZero, Rational Clear Quest, TrackStudio, BugSentry, etc.

4. How do you track bugs? There are many different bug tracking tools available. Some popular ones are: Rational Clear Quest, Bugzilla, BugSentry, QuickBugs, etc.

5. What are common types of bugs and indicate their severity level. There are 5 common types of bugs. The types and severity levels are: Boundary Related Medium Calculation High Control Flow/Inappropriate Service Levels High Error Handling Medium User Interface Low

6. What are important things to remember for tracking bugs? It is helpful to the programmers that have to find bugs for the tester to reduce the number of steps taken to reproduce a bug. It should be a rule that the only person that can close a bug is the one that created it. Any developer can be assigned to fix it, but to truly verify that the problem has been fixed, only the person that found it should be able to close out the item. bugzilla interview questions and answers bug tracking interview questions and answers bugzilla interview questions What is Unit Testing Unit Testing An insight of Unit testing reasons to employ unit testing Unit testing is a method of testing each source code at individual level. The source codes are determined whether they can be freely used or not. Unit testing comes under software development phase that has all small testable portions for applications. Each of these codes are individually scrutinized and made for proper operation. Unit testing can be done manually as well as automated. Characteristics of unit testing: 1) 1) 2) 3) 4) Unit testing involves is vital to tests that are under unit test. Source code could be modified easily for functioning of program or source code, in unit testing. Unit testing may be time consuming and tedious. Patience and thoroughness is required to be with you when you use unit testing. Documentation need to be maintained in unit testing.

Steps for conducting unit testing

Main purpose of unit testing is to find any errors by conducting tests in program unit test plan. There are several steps required in conducting unit tests: 1) Review program unit: You can use several techniques to carry on review of program unit. It is a necessary step before you start with unit testing. This can be done using static analysis technique like desk check, inspection or structured walk through. You can even use automated static analysis tools to get in to this process. 2) Conducting code execution tests: There are dynamic analysis techniques that you can use in conducting code execution tests. To assist with this process, you can also use automated dynamic tools such as coverage monitors, memory analysis tools etc. In unit testing, test programs are performed one at a time. This helps in identifying errors very easily. This is because you look at all little errors one by one. As soon as coding is complete, program units are tested immediately. It may be necessary to use temporary modules that may be simulating with real modules. 3) Use of drivers and stubs: In unit testing, you need to write drivers and stubs. These driver modules are used to simulate a calling module and then call a unit program that is being tested. They are passed with specific input arguments. Drivers could be written in many ways. You can either prompt them interactively for input arguments or let it accept input programs from a file. Now, when you want to test the ability of unit that is being tested to another module, it is necessary to make use of another module that is called stub. You may use more than one stub at a time. It depends on total number of program units that are participating in testing. Now, you have many ways of writing stubs too. You can either return control immediately or return a message that indicates its calling and then write back the received inputs. 4) Identification and resolving power of any discrepancies: Here is the step where you compare the actual result to the expected result. If there is no bug then that is recorded as non-discrepant program unit test plan. If there is any kind of error then you need to find them and fix them. if you find error in code then you can use following methods: 1 2 3 Isolating cause of error Correction and then recompiling the program Retesting the program again

If there is some error in expected result, then you need to correct that error. Further, re runs the test. As you correct all bugs and errors in unit testing, you must re execute the full unit program. There may be any unit metrics required while checking these and you must list them individually. Later on with use of evaluating test metrics, you can identify methods for gathering these test metrics. 5) 1 2 3 4 Determining completion of test: You find the unit test to be complete when : You have finished executing tests that are itemised in program unit test plan. You are satisfied that the code is able to match the required design. You have finished correcting and re testing of errors. You are documenting the test results in the program unit test plan.

unit testing

Benefits of unit testing

Main aim of unit testing is to isolate all small units of codes and then show that each small part is error free. There are many benefits of unit testing. 1)Simplifies integration: As testing is done in each small unit of code, all similar codes are found to be integrated. At this step, it becomes ready for integration testing. 2)Helps in facilitating change: With the help of unit testing, you can even re factor code at later stage. This will help you to make sure that the code works properly. In this way, there is facilitation in writing test cases. Now, even you can make changes accordingly. With the help of unit testing, you can make changes in code easily. 3)Good documentation: Immediately after doing the unit testing, there is good documentation that is being needed. With unit testing, you are able to identify the characteristics that are making your application to have success. 4)Designing: Unit test plays the role of a rough and formal design that is necessary. This is because each unit test determines design element that is being used for specifying classes, methods and observable behavior. Application of Unit Testing 1)Unit testing could be used in extreme programming and this relies on unit testing framework. 2)Techniques: With the use of automation techniques, you can help to find the correctness of unit testing. 3)Language level support: Unit testing also help in providing language level unit testing support. 4)Framework supports: Unit testing provides good unit test frameworks that uses assertions, exception handling and all other major things to carry on unit testing.

what-is-unit-testing

Fig: separating database layer in unit testing Unit testing is the first step of testing and if this is carried out well, it opens your application to move further level of testing and then to success of your application. Difference between Manual and Automated Testing Difference between Manual testing and Automated Testing Before we start to know about manual testing and automated testing, let us know some concepts on software testing. Software testing can be defined as task from planning to execution. These software programs help you to easily identify any bugs or errors in the program. Test plan is first step to software testing Planning is most appropriate step when you have to start the testing. You need to carry on with manual testing or automated testing easily. Whether you go for any one of the types of testing, you need to follow the following things: 1. 1. 2. Test planning Writing test cases Executing test cases

3.

Reporting results of test cases

Let us know about both the tests in details. Manual testing: Any test engineers who test the software manually use this testing technique. The test engineer is responsible for carrying out all test cases and executing the application manually. When he carries all test cases systematically, he can identify whether any particular step has been successful or failed. One basic information that is required while doing manual testing in test cases, how to implement those manually. In this way when the test completed, it gives you an opportunity to easily create and manage manual testing while testing your application. When you add manual testing project item to your project then it helps you to create a collection of steps that can be performed when application is being tested. According to test strategy of test plan, you can write test cases for all kinds of testing. Generally, test engineers write test cases according to design document of software. Whenever any testing is performed, manual testing is its part. It is the initial phase of testing that is useful for software development. Advantages of manual testing 1) 2) 3) 4) It is used in both big and small projects According to project movement, test cases can be added or removed. Within a limited cost budget, it is covered. Manual testing is better than automated testing in terms of reliability.

5) Tester is able to perform more adhoc. You will find that more bugs and errors are found with adhoc than the automation.

Disadvantages of manual testing 1) 2) 3) In manual testing, you cannot find GUI object size difference and color combination easily. In this type of testing, for large number of fusers you cannot cover actual load and performance. Manual testing is time consuming.

Automated testing: Automated testing is a type of testing where test engineers are responsible for running script on any testing tool for testing. This process of using tools to test software using scripts is not so easy. It requires good programming knowledge by the engineer. This would be helpful for them to write any script for any test case. Here they make good plans and scripts for various test cases. Here complete time is devoted to write scripts. There is a set environment on tool to run the test cases, and these are important as any kind of small errors may cause failure in test result. All detailed information is good even GUI small objects of screen are key information in it. Advantages of automated testing 1) 2) 3) 4) Within a limited time, you cover all major test cases. Using tools, you can check all kind of case like load and performance of software. It is best choice in case of regression testing Sometimes certain website requires immediate evaluation, and this testing is the best choice during this time.

5) 6) 7)

This testing can be performed on different operating systems within same time For volume testing, this kind of testing is used as easier tools Within short period, you can obtain test results of many test cases.

Disadvantages of automated testing 1) Initially it is a time taking work, as it requires test cases to be resolved in to scripts. 2) When you compare it to manual testing, this testing is expensive. 3) Not all tools support all languages, as there is much software for different language testing. 4) This kind of testing is not able to detect color related issues. 5) As it cannot read tags, hence automated testing is not able to identify missing heading tags. 6) This test cannot identify the descriptive attributes. 7) To determine whether a website is comprehensible or functional if browsers do not support style sheets and scripts or even if user disable these, are not easily identified by automated testing. This testing does not support any video or mp3 file.

There are specific situation where you should use either manual testing or automation testing. However, in some situation, you can make use of both the tests. Here are those situations: 1) Functional: Functionality test is something that must be done manually as well as in automated.

2) Use cases or user scenarios. Here you can string together functional tests in to overflow and this can create realistic user scenarios whether you use it manually or automatically. If the workflow involves human intervention, then trick is here is that automated testing must be avoided. 3) User interface: You can test the user interface using automated testing but you have to keep track of costs as changes required frequently may result in high costs. 4) Date and time handle: If test cases can easily reset computers clock then you can automate these tests.

Both of these testing will help you to test application with specific technique. On one side testing manually is based on concepts and functions of project and automated testing is based on tool support for specific languages. Manual testing is preferred for small projects and automated for big projects to save money and time respectively. With so many automation testing tools available in market, you can easily get rid of all errors and bugs in program with easy means. Both of these testing tools have their own respective share of responsibilities in testing projects. With best of tools available in market, you can get ahead of competitors easily. difference between manual and automation testing difference between manual testing and automation testing difference between manual testing and automated testing

What is a Test case What is a Test case?

Test case definition A test case is defined as a set of variables or conditions used to determine the proper functionality of a software application or system. Test cases typically describe inputs, actions/events, and the expected response(s). The main purpose of writing test cases is to verify the testing coverage of the software. Because of this, several test cases may be necessary to prove that a piece of software is functioning properly.

Formal and Informal Test Cases The best way to completely verify that all software application requirements are met; there must at the least be one positive and one negative test case for each requirement. This rule carries through to each sub-requirement if they exist. A traceability matrix is often used to track the link between the requirement and the test. Written test cases must also include a description of the feature being tested, and the setup required in order for the test to be performed. A formal test-case is distinguished by an input and an expected output, which should test a pre-condition and a post-condition, respectively. If formal requirements do not exist, test cases should be written based on the accepted operation of a program that is similar in class.

Test Case Format In addition to providing the results, test cases may also include the following information: Case ID Description Related requirement(s) Depth Category Author Indication of automation. Pass/Fail Status (after execution) Remarks (after execution) Designing Test Cases While the test plan explains what is to be tested, a test case explains how to perform the test. A test case must be developed for all tests indicated in the test plan. Test cases should be written by someone who understands the function that is being tested, and should also be peer reviewed. It should include: Purpose of the test. Special requirements (hardware and software). Setup or configuration requirements. Description of how to test is to be performed. Expected results of test. It is typical for organizations to generate detailed test cases because it is easier to determine pass or fail criteria, they are easy to reproduce, and automate. These benefits are especially important in organizations that compare test results over

time. Detailed test cases can be time-consuming but test cases that leave too much open for interpretation are not repeatable and can consume even more time in the future.

What is Test Plan Test Plan Explain the process of test Plan document: A test plan is a document that describes the approach that will be taken in order to test a product or system. This product/system can consist of hardware, software, or any combination of the two. The main purpose of the test plan is to document the strategy that will be used to verify that a product or system satisfies all design requirements and specifications so before a test plan can be prepared, it is necessary to obtain all requirements and specification documents used in the design of the product or system. The test plan describes the testing objectives, the testing scope, the testing approach, and the methodology used to conduct testing. It is also important to identify all of the resources required to perform testing. So any hardware, software, and other tools required for testing should be included in the document. It will also indicate the functions and features that are going to be investigated and any known risk factors. In addition to all of this key information, a good test plan will go a step further and establish a testing schedule for the audience. Depending on the size and complexity of the product or system being tested, it is common practice for some business groups to create a high level test plan to provide an overview of all requirements and supplement it with supporting test plans that detail the elements of the subsystem. For example, if a system consists of both hardware and software, an organization may choose to have one plan for the hardware and another for the software. The formatting for test plan documents usually varies depending on the products and the organizations product them. That is, the format for a plan detailing testing for a hardware product may be very different from a plan detailing a software system. And Organization A may require a different format than one required by Organization B. Despite these differences, most test plans share three basic elements: coverage, methods, and responsibilities. Coverage refers to the identification of which requirements will be verified during testing. This also includes identification of the phases of the product life in which it will be tested. Product life phases are used because coverage for some phases may overlap, but may not be the same for all stages being tested. In order to determine the test coverage, the design requirements and specifications must be closely examined. Other items such as safety standards or regulatory codes should be reviewed as well. It is a good idea for the design team to keep test coverage in mind during the design process because the product may need to be designed in a manner that allows certain accesses for testing. Test methods simply states how the test coverage will be implemented. These methods can range from something as simple as a visual inspection to an elaborate series of steps to be performed. Test methods always specify the resources required to perform testing and detail the pass/fail criteria that the tester must adhere to. Sometimes the organization has complete freedom in designating test methods but they are often driven by contractual agreements, industry standards, and/or regulatory agencies. Test plans also indicate which group or groups within the organization will be responsible for performing the test. Responsibilities may be assigned to different people or groups for different methods and at different phases of the product life. This allows test organizations to schedule resources (people, equipment, space, etc.) and plan necessary equipment acquisitions in order to implement the test methods for which they are responsible. The deliverables are also detailed in the test plan responsibilities. Deliverables consist of the data that is to be collected, method of data reporting, and method of data storage. Going through the process of preparing test plans help organizations to think through the efforts needed to validate the acceptability of the product that the produce and may provide some insight for future product design. The document itself will help people outside the organization understand what was done to validate the product.

Test Case and Test Script Test cases and its briefly explanation and the most allocated test scripts What is Test Case? This question can hardly be answered in two words. Nevertheless, we try to give a brief description of that concept. Therefore, in order to give a particular bug is necessary to make certain actions, to compare the results with the expected and concluded that there is a bug or not. All of this is the Test Case. Each Test Case is made after the development of a common test plan, in fact, even before the program itself will be written. However, in the absence of the necessary documentation accompanying the software during its life cycle, Test Case can be prepared directly by the testing. The first option is preferable because it provides the highest quality for the minimum period. Writing documentation software developer, of course require a lot of time, especially in the absence of a technical writer, as well as drawing on the tester Test Case, in the absence of a test analyst, but total period of development, including testing, will be significantly lower, by saving time at later stages. Description of Test Case. As an example, describe the Test Case can recommend a free utility Test Case Manager (Pierce Business Systems). We offer the following description of the plan: Test name (briefly reflects its essence). Steps to play (the description of the actions produced by the tester during the test) followed by numbering each step. Expected results (what you actually expect from the program during your actions). The results (what happened in reality). Evaluation of the passage and the date of the test. Perhaps this is the minimum list, which should follow the description of Test Case. Test scripts Test Script a set of instructions to automatically check for a certain piece of software. This test scripts are grouped in a certain trait (egg test functionality). They can be as dependent on the sequence of execution (the result of the preceding is a prerequisite for the next (Test script)), and independent (Test suite). The most frequently allocated sets are as follows: A set of test scenarios for Smoke-test plan and acceptance testing. Test scripts are no different. How do we generate huge amounts of testers and script should be able to reuse. It seems strange in a way that both scenarios are often stored against the project. There may be a unit within the project structure for each of the applications being tested, perhaps even determine what version of the script were written against him. Indeed, if the testers constant from one project phase to the next, scripts can be reused. test script vs test case test case vs test script test scripts vs test cases

What is Test Scenario Test Scenario Test Scenario and software test scenario templates Test scenarios are used to ensure that all process flows are tested from end to end. The term test scenario is often used interchangeably with the term test case. However test scenarios are different from test cases because they usually have several steps whereas test cases are single steps. When viewed in this sense, test scenarios are test cases, but they usually includes several test cases and the sequence that they should be executed. In addition to this, each test is usually dependent upon output from the test that preceded it.

Test scenario are created by examining the functional requirements of the software/system, and preparing rational collections of functions that can be split into test procedures. They should be designed in a manner that represents both typical and atypical conditions that could possibly occur within the application. Test scenario are based on a hypothetical story that is supposed to help the tester make sense of a complex application. An ideal test scenario is motivating, credible, complex, and easy to evaluate. Test procedures and/or test scripts are used to execute test scenarios. These procedures and/or scripts generally define a chain of steps that are needed to perform one or more test scenarios. Test scenario template Inputs: Test scenario Name Version control Test cases Test scripts use case diagrams Test components user requirements and all these above points have to be explained in a word document or excel sheet. Load Testing What is Load Testing Load testing is the process of determining the ability like computer, network and device to maintain the level of effectiveness in the unfavorable conditions. Measuring the qualitative test to check and identify the error frequencies to resist the denial of services.

load-testing

Figure: Load Testing Analyzing the load test In the current situation, many companies are working with load test to analyze the products effectively. In order to handle and implement them with our software products, we should understand and analyze what we need and how to go about? Analyzing the test load can be carried through various steps to set the goal for your applications. Identifying the objectives can be done by defining the key areas to with certain parameters like response time, message delivering through the proper communication channel, utilization of resources like human, device, cost, time and the user needs to run the hardware configuration. Utilization of scenario can be used to identify the multiple paths for the multiple activities. This can be identified with the key resource to perform the goal to reduce the impact mostly used in the business aspect. Identifying the workload is to define the ratio of work in numbers to execute the scenario. The existing applications are logged through IIS log and the new applications are worked based on the market research to identify the prototypes and through data. Calculations are used to distribute the concurrent users to share the work. Identifying metrics are derived based on performance and real time comparison to recover the bottlenecks of your application. Several types are available network metrics gives you the overall health and efficiency includes routers, switches

and gateways. System metrics identify the resources to set the CPU, memory and disk. Platform metrics relates the software and host application. Application metrics counters the custom embedding and application code that monitors the concurrent threads to lock the request number. Service metrics measures the overall latency and the output. Analyze what type of features you are going to include to valid your business to the customers sufficiently. Understand the errors and analyze the weakness lies in that, identify the proper iterative to test and improve the techniques more efficiently. Designing the load test The load test can be designed and performed to launch and to control the module. The overview of designing can be designed to perform the module part and the performance part to allow the real conditions with the reliable test results. The prerequisite of designing specifics are based on the scenarios, metrics and workload. Designing the exact script to run the load testing is the significant factor to plan and module the documentation. Designing the test script can be done with the identified modules by creating the new project to configure the properties that are set and referred for later use. Action groups are set to combine the logical actions that are created for various actions like starting, action and ending. Based on your desired behavior you can set the initialization for the order execution of test. By selecting the project node and the tree, you can select the add group and select the descriptive name for the application and command the web applications to run. Creating the functional module for every groups of your application represents the module test by structuring and designing the testing life cycle to increase the reusability of groups across the test scripts. Some of the necessary points need to be considered to evaluate the designing by ensuring the documents before designing the apt one. Actual designing modules should hold the supplementary data to perform the actual test. Design the invalid data to perform the alternative course of action, if someone has performed the mistype. Assign as such all the data should be collected and retrieved from the database file. Setup the status update orders to perform the users activities to accept the batch process. Pass the scenario to test as such to start and execute the test to enhance the design by collecting the results. By assigning all these testing patterns you will be sure enough to pre-check with all the needed documents. After assigning and developed the resource, never attempt to change the pattern as it is difficult to change, even the one particular design. Implementing load testing The next stage and the hard part is the implementation stage. Even though companies design and performed the test scripts, many fails during the implementation stage. This may be due to the ignorance of actual fact and the poor designing strategy pattern for the load testing. The quality analyst knows better than the others whether this particular application goes well with the application areas or not by performing the traditional testing life cycle experiments. For every project the timelines are fixed and kept ready for the execution, through this the testing scripts are identified to test the level of acceptance. The parallel usage of testing lifecycle used to identify the development along with the scope and date of completion are prefixed. Products performance is the highlighting issues in the industry. The load testing life cycle is the continuous process where the work never ends. Identifying the issues even at the final stage has to be reviewed until the issues are solved; this brings in the positive impact by optimizing the performance and also receiving the complementary from the customer end. Final stage Identifying and solving all the issues helps us to degrade the bottlenecks and improvise the performance. Performing the critical scenarios will help to eliminate the order process by creating the new cases to solve the problem now and then. Verify all the metrics you enabled with the integration helps to identify the objectives to stimulate the load testing and captured the tools to perform the system wise evaluation to adjust the traffic with the infrastructure performance to perform the scalability and reliability to validate the output to record and reused to cover more features with the affordable time and cost. Recognition and acceptance of successful integration of testing cycle confirms the date of releasing the product for the customers usage. You must also learn Performance testing interview questions interview questions on performance testing performance testing life cycle performance testing faqs with answers Software Testing Life Cycle

The software testing life cycle is a series of different stages in which software is tested and implemented. There are six different phases of the software testing life cycle: Test Planning, Test Analysis, Test Design, Construction and Verification, Testing Cycles, Final Testing and Implementation and Post Implementation. The software testing life cycle is carried out by the project manager, and the manager lists out the faults in the current system before setting to design new software that would clear out the flaws of the previous system. Once the software has been properly designed, it is then tested to check for any further problems. If there are any issues, they are solved before the software is implemented and a briefing is given to the users as to how they can use the software to its best effect. Once all the stages of the software testing life cycle are complete, it then moves in to the post implementation stage, in which any problems that might arise once the software has been implemented are solved out to make sure that the software keeps functioning smoothly and does not cause any issues for the users in the future.

Deliverables in testing Deliverables are items that are provide in order to fulfill a contract or a task. In a software development project, there may be several different types of deliverables for every phase of the software development life cycle (SDLC). I the testing phase, some are delivered before a phase begins while other test deliverables are provided later in the testing process. While the required test deliverables vary from organization to organization, the test plan, test cases, defect documents, and status reports are considered to be the core test deliverables for most organizations. This is because they cover the spectrum of testing from planning to execution to status reporting. The following list contains some of the other commonly required test deliverables: Test Trace-ability Matrix Testing Strategy Test Scenarios (for non-functional testing) Test Scripts Test Data Test Results Test Summary Report Release Notes Tested Build

Roles and Responsibilities of a Tester The roles and responsibilities of a tester often vary from organization to organization. In general, a testers main purpose is to design, develop, and conduct system tests and supports acceptance testing. The roles and responsibilities of a tester include the core activities associated with the test effort. This usually involves identifying the most appropriate implementation approach specific tests, performing test preparations, executing the tests, logging outcomes, and administering the defect tracking system. More detailed aspects of the roles and responsibilities of a tester is included in the following: Analyzing client requirements Understand the software application being tested Prepare test strategy Participating in test plan preparation Preparing test scenarios Preparing test cases (used for module, integration, and system testing Preparing test data (used for test cases) Preparing test environment Analyzing test cases (those prepared by others) Write necessary test scripts Executing the test cases

Defect tracking Perform necessary retesting Providing defect information (for developers) Preparing report summaries Preparing lesson learnt documents Conducting review meetings within the team

Software SDLC Phases SDLC Phases and Software development Life cycle & SDLC Interview Questions and Answers The Software Development Life Cycle, or Systems Development Life Cycle (SDLC) is the process of creating or modifying a software system. It typically refers to information and computer systems and includes the models and methodologies use to develop these systems. This includes requirements, validation, training, and user ownership. Using the SDLC should ensure a high quality system that fulfills customer expectations, completion within time and cost limitations, and reasonable maintenance and enhancement costs. SDLC Phases Overview in software development The SDLC consists phases in which each progressive step utilizes the results of the previous phase. These phases include planning, analysis, design, and implementation. Several SDLC models have been created (i.e. waterfall, spiral, etc.) The waterfall model is the oldest and most commonly used. The SDLC phases for this model is characterized by a sequence of stages in which the output of one stage is the input for the next. The way these stages are divided up varies from organization to organization but a common way to layout the SDLC The SDLC phases are depicted in the diagram below.

phases-of-testing SDLC Phase Details Project Planning A high-level view of project is established, and project goals are set. Some organizations create preliminary project schedules in this phase. System/Requirements Analysis The purpose of system analysis is to examine the system in pieces in order to investigate project goals and determining what should be done to fulfill them. Requirements analysis is usually more effective when it involves all stakeholders (developers, client representatives, service providers, etc.). Communication between these groups can help foster deeper understanding and to develop more accurate requirements. Communication gaps in this phase can lead to errors and bugs in later SDLC phases. Design In this phase, software functions are described in detail. This includes interface screen layouts, process diagrams, business rules, etc. This phase utilizes requirements defined in the requirements document produced in the previous phase as the initial input. Design elements are developed from each requirement and describe the features of the software in detail. The completion of this stage should yield a description of the system as a compilation of modules and subsystems. Implementation programmers use the modules and subsystems produced in the previous SDLC phase in order to produce code. The developers also and perform unit testing. Since some level of testing is done during implementation, this stage is often overlaps with the next phase. Integration and Testing Put all pieces together and check for errors/bugs. During this phase, code modules are integrated to ensure that they function together in the expected manner. Several different types of testing such as unit, systems, and user acceptance testing, etc. performed. Operation- In the operation phase of the SDLC, the system is deployed.

Maintenance Maintaining the software is an important part of SDLC. System updates are often required to fix bugs and provide enhancements. Sequential execution of SDLC Phases is not required for every project. The phases are, however, interdependent. Depending upon the complexity and size of the project, SDLC phases may overlap or may be combined. Final Note: SDLC phases are very important to followin any software development life cycle and this is a must interview questions to explain in detail what is SDLC and you need to explain each steps and their inputs and outputs and among these the important things to know are implementation stage in sdlc and cost analysis software bugs and fix and the

Different Documents in Testing Testing Documents The strategy and testing approach used by software development organizations to validate the quality and functionality of their products is shown in a variety of testing documents. In addition to strategy and approach, most organizations also produce documents to report test results and defect tracking information. Some of these testing documents are created by developers but it is more common for the quality assurance (QA) group to generate them. Towards the end of the testing process, the QA team typically compiles a release package, which is the compilation of testing documents created throughout the process. This package often includes a recommendation as to whether and how the software application should be released. These documents include but are not limited to the following: Test Strategy Requirements Analysis Functional Specification Test Plan Test Case Test Results Issues and Defects Project Overview Test Strategy For most organizations, the Test Strategy is the first document prepared for a project by QA. Since it should be updated throughout the lifecycle of the project, it is considered to be a living document. This testing document provides details on the approach that QA intends to follow for testing the product that is being developed. It specified the test methodology used, the testing types that will be executed (functions, interface, etc.), priority of testing, product configurations to be tested, as well as the risk associated with testing. Another important part of the test strategy is details of the testing setup. This section identifies the hardware, software, and personnel required for testing. The test strategy document also contains a schedule for the project that includes completion dates for all other documents, delivery dates, release dates, etc. as well as defines the criteria for project completion. Requirements Analysis The Requirements Analysis Document defines the functionality that was included in the project. It basically describes what the product is and what it is supposed to do. Developers use this document to create the functional specification and it is often prepared or reviewed by sales and marketing teams, and product managers. The QA team should use it as part of preparation of the test strategy. As vital as it is, some projects do not have requirements documents and this could have dire consequences to development. If it does not exist, this fact should be indicated in the project overview. Functional Specification The Functional Specification testing document explains how the project requirements will be implemented. It outlines how new product features will be implemented and any database queries that are required as part of the project. The QA team

usually uses the functional specification to create the test plan and business rules. Though it is a very important part of the SDLC, some projects do not have functional specification documents and this could have dire consequences to development. If it does not exist, this fact should be indicated in the project overview. Test Plan The Test Plan document is typically created after the testing strategy and functional specification documents are completed and it provides the testing approach to testing that QA will employ to validate the functionality and quality of the product before it is released. Though the exact content may vary from organization to organization, most test plans provide the following information: General project description Project objectives Schedule of testing Resource requirements (hardware, software and personnel) Listing of features being tested (also those that are not being tested) Details of test approach Lists of deliverable items (test cases and scripts) Test dependencies Risks of testing Description of defect tracking process Milestone criteria Test Case The Test Case document provides a specific set of steps that QA testers must perform for each test category in order to validate the feature. It is prioritized, includes the expected results, and should be limited to one function. A test case must provide details of the test setup, describe the test environment, provide details of the test steps/procedure, specify pass/fail criteria, and reference the results of the test. Most test case formats include the following details: ID number Number identifying the test case Priority Assigned order if precedence Purpose Basis for the test case Steps Sequence of steps that the tester must follow to perform test case Expected Results What the tester should see when test case is executed Actual Result What the tester actually witnesses when test case is executed Status Indicates whether the test case passed, failed, etc. Test Results The Test Results document simply reports the results of the executed test cases. Test results documents should at least include the following: Software version checked Scope of test Database version used (if applicable) Installation paths (If applicable) Name of tester(s) Date test performed Results of test Issues/Defects (if applicable) Issues and Defects The Issues and Defects testing document is most often used to aid technical support. It outlines all known application problems and defects. It details existing workarounds to problems, and lists bugs in the various stages of the defect tracking process. Though this document varies from organization to organization, most include the following:

Known Issues- This part of the issues and defects document identifies issues that the organization is aware of but have decided to delay correction or ignore. If any exist, workarounds are included. This information is used primarily for technical support. Open Defects This includes a list of defects that are either in-work or are expected to be fixed at some point. Deferred Defects Deferred defects are problems that will not be addressed in the current release but are expected to be addressed later. Pending Defects Pending defects are waiting a decision from management before being addressed by a developer. Fixed Defects These are defects that have been fixed but are awaiting QA verification. Closed Defects These are defects that QA has verified as fixed. Project Overview The Project Overview document provides a synopsis and scope of the project, problems encountered during testing, and whether release of the product is recommended or not. The project overview document can be thought of as a response to the test strategy document and should indicate the areas of the strategy that was successful as well as those that required revision. It can also include suggestions for improvements to the process for the next project cycle. functional specification document in testing various testing documents different documents in testing

How to crack Testing Interview? How to get my testing resume to be noticed by recruiters? How to Crack the testing interview? Well, I have been receiving many emails every day with a common question that even though they are applying for almost all jobs that they see in the job sites, they are hardly getting any response from the consultancies for these testing jobs. And even if they get a call from vendors, I am not getting client call for interview. And even if they get client call, they are not cracking the testing interviews. Candidates who are emailing me are under frustration and some are even ready to change their technology. Some important tips to get Testing job soon: We all know that there is a heavy competition among testers if it is a manual testing especially. Because every other guy we meet are interested in starting a career as a tester because there is no coding or no hassles with hard core development. So here I am coming up with few techniques for all of you to follow in order to get interview call. Dedicate at least 7 days for learning SQL Queries. You dont have to spend time on much complex queries or pl/sql stuff, just concentrate full 7 days on SQL queries such as inner join, outer join, primary, unique keys, constraints, how to delete duplicate records from a table, how to find Nth highest salary from a table etc.. Just google for sql queries you can find multiple websites where you can get these tutorials. And in the interview you should take a chance to tell them that you are well versed with SQl queries. Even though most of the time you do not get a chance to use sql queries in real time, but it is likely to help you for getting a job if you say you are good at SQl. Along with Basic SQl, Dedicate 2nd week for learning BASIC UNIX commands. Basic unix commands such as who, grep, ls etc.. If you tell the interviewer that you used unix commands in your previous job in order to do some file operations, they will be impressed. Believe me, you will not get selected if you simply prepare your resume with just manual testing, and no other skills. You need to mention SQL, Unix, MS office, Operating systems etc.. One more important thing to remember is please read the job description clearly and see that every technical word from the job description to be included in your resume 1 or 2 times min. Because many recruiters, blindly search for the typical keywords in your resume using ctrl+f etc.. Make your resume in a unique style, so that it should grasp the attention of the recruiter as soon as they see your resume. Add some boarders, some decent colors(mostly blue), just give a unique touch.

Test case template elements What are the elements in a typical test case template? Test Case Template 1 Introduction 1.1 Purpose This section should provide the purpose of the document and should be adapted to fit the particular needs of the project. 2 Test Case Specification The subsections of this area will describe the test case that the tester(s) will perform. 2.1 Test Case Description This subsection should be used to provide a detailed description of the test case and specify the individuals that will be involved in testing. Diagrams that depict the interaction between individuals and the elements being tested can be placed in this area if they are available. 2.2 Required Resources This subsection should describe the hardware, software, and personnel that will be involved in the testing. Testing responsibilities should be assigned to individuals named in this area. 2.3 Conditions This subsection should describe the preconditions and post conditions thast should exist for performing the test case. A precondition indicates the state of the application/system before the test case is performed and a post condition is the possible state(s) that the application/system can be in following the performance of the test case. 2.4 Test Flow This subsection should be used to describe the flow of events that make up the test case under normal conditions. Alternate event flow as well as potential errors and exceptions should also be included in this area. If this test case is to be performed in conjunction with other test cases, they should be listed here as well. 2.5 Expected Results This section should indicate the expected results of the test case. This includes specifics about any changes in the interface, messages, etc. est Case and Test Script Test cases and its briefly explanation and the most allocated test scripts What is Test Case? This question can hardly be answered in two words. Nevertheless, we try to give a brief description of that concept. Therefore, in order to give a particular bug is necessary to make certain actions, to compare the results with the expected and concluded that there is a bug or not. All of this is the Test Case. Each Test Case is made after the development of a common test plan, in fact, even before the program itself will be written. However, in the absence of the necessary documentation accompanying the software during its life cycle, Test Case can be prepared directly by the testing. The first option is preferable because it provides the highest quality for the minimum period. Writing documentation software developer, of course require a lot of time, especially in the absence of a technical writer, as well as drawing on the tester Test Case, in the absence of a test analyst, but total period of development, including testing, will be significantly lower, by saving time at later stages. Description of Test Case. As an example, describe the Test Case can recommend a free utility Test Case Manager (Pierce Business Systems). We offer the following description of the plan:

Test name (briefly reflects its essence). Steps to play (the description of the actions produced by the tester during the test) followed by numbering each step. Expected results (what you actually expect from the program during your actions). The results (what happened in reality). Evaluation of the passage and the date of the test. Perhaps this is the minimum list, which should follow the description of Test Case. Test scripts Test Script a set of instructions to automatically check for a certain piece of software. This test scripts are grouped in a certain trait (egg test functionality). They can be as dependent on the sequence of execution (the result of the preceding is a prerequisite for the next (Test script)), and independent (Test suite). The most frequently allocated sets are as follows: A set of test scenarios for Smoke-test plan and acceptance testing. Test scripts are no different. How do we generate huge amounts of testers and script should be able to reuse. It seems strange in a way that both scenarios are often stored against the project. There may be a unit within the project structure for each of the applications being tested, perhaps even determine what version of the script were written against him. Indeed, if the testers constant from one project phase to the next, scripts can be reused. Testing Tools Summary of Testing Tools Automated testing can be a fast and cost effective way to perform software testing. More and more companies are adopting this method as software systems and applications are becoming more and more complex. Because of this there are many testing tools available to choose from. Below you will find a summary of some of these testing tools. Quality Center Quality Center is a grouping of web-based test management software created by the Software and Solutions division of Hewlett-Packard. Quality Center supports the needs of software quality assurance by provided product for requirements and testing management and business process testing in information technology environments. Some of these testing tool offerings are the following: Change Impact Testing module for SAP Applications Change management and impact, business risk evaluation, etc.) QuickTest Professional Functional and regression testing Service Test Functional testing for service oriented architecture applications Test Data Management Management of data driven testing QuickTest Professional QuickTest Professional (QTP) is a software test package made by Hewlett Packard (HP). It provides for the automation of regression and functional and regression testing through a user interface and is often used for quality assurance at the enterprise level. QTP utilizes the VBScript scripting language in order to define the test procedure and drive the objects and controls of the application being tested. QTP is most typically uses for the automation of user interface based test cases but it can perform testing for operations for file systems and databases. Users of QTP are able to setup checkpoints to validate that the application being tested functions as expected. In addition to this, QTP supports data-driven testing, a method which uses tables that contain condition of inputs, outputs, etc. rather than hard coded data. Add-ins is also available for QTP that allow for the support of .NET, Dephi, Java, SAP, Oracle, SOAP, and other desirable testing options. QTP provides test results that provide pass/fail information, error messages, and any other

information that may help the user to diagnose any problems. Test reports are provided using the XML schema. One of the drawbacks to QTP is that it is only available for Windows environments. LoadRunner LoadRunner is another automated testing software tool from Hewlett-Packard and is used for performance and load testing. LoadRunner can simulate putting an application through hundreds or more of concurrent users in order to check its ability to handle real life user loads. It can do this while collecting information from key components such as data and web servers. The results of these tests are available for analysis. The LoadRunner software package supports over 50 protocols including Oracle and web services, web HTTPS/HTTP, etc. and actually consists of several different tools. The Virtual User Generator or VuGen is used to emulate the actions of a human user and also to run debugging scripts. VuGen is also capable of recording and playback functions of testing. These recorded test scripts can be modified as needed. The Controller is what manages and maintains the scenarios that are to be run and it also allows for monitoring of network and server resources during test runs and assigns load generators and virtual users to test scenarios. The load generators are used to generate virtual users in the scenarios. Results of testing can be viewed in the Analysis tool, which is capable of preparing both reports and graphs to correlate information about the system, and identify performance problems. Test Complete TestComplete is an automated testing tool that utilizes a script-free keyword driven methodology. It allows users to create and run tests for any web, Windows, or Rich Client software. TestComplete is capable of verifying business logic, measuring performance of software and servers, analyzing databases, and assessing experience of the users. If a large amount of testing is required, TestComplete allows for the addition of another workstation to run even more tests. It is capable of performing unit testing, function testing, load testing, regression testing, and more. TestComplete includes the following features: Open APIs Script testing Script-free keyword testing Web and Windows testing Windows, Windows Server, Windows Mobile, Smartphone, Pocket PC and emulator support Internet Explorer and Firefox support Java, JavaFX, Flash, and Flex support .NET, AJAX, and Silverlight support Support for both 32- and 64-bit applications

Load2Test This testing tool from Enteros Inc. provides performances, stress, and load testing. It is capable of capturing actual production workload to be used for playback simulation of thousands of users, which is handy back-end and top down testing. It has an integrated performance management system and a root cause analysis system that collects performance metrics and uses correlation to identify bottlenecks and other performance issues. It is available for Windows, Linux, HP/UX, SUN Solaris. Xceptance LoadTest This software tool is a load testing and regression-testing tool from Xceptance Software Technologies, Inc. It is used for web, Java, and more. It has recording capabilities and is available with XLT Cloud Service. A browser that can emulate both Mozilla Firefox and Windows Explorer is available for web-based tests. Xceptance LoadTest is also capable of executing client-side JavaScript in order to simplify the creation of test cases for Web 2.0 applications. Test scripting for this tool is performed in either Java or Ruby. SiteBlaster

SiteBlaster is a shareware web site load and stress-testing tool. It is capable of simulation user behavior by varying the submission rate of requests to a website. It is capable of emulating Microsoft Internet Explorer functionality and is best used to test sites that use URL query strings to pass data to other web pages. It is available only for Microsoft Windows. Avalanche Avalanche is a load-testing tool from Spirent Communications. It can be used to stress test network, security, and Web applications by generating large amounts of network and user traffic. It is capable of simulating up to two million users with unique IP addresses, emulating multiple Web browsers, and supporting HTTP 1.0/1.1, FTP, SSL, RTSP/ RTP, SMTP, DNA, POP3, Microsoft Win Media, Telnet, and Video on Demand over Multicast protocols. NeoLoad NeoLoad is a load-testing tool for web applications made by Neotys. It has an intuitive and clear graphical interface, does not require scripting, and provides comprehensive test results and reports. Users of NeoLoad are able to design complex test scenarios that imitate real world applications. Some of the features that it includes are data extraction and replacement, system monitoring, SOAP support, SSL recording, and HTML/PDF/Word reporting. It also supports Microsoft Windows, Linux, and Solaris platforms. Apache JMeter This testing tool is a Java application created by Apache Software Foundation. It was designed to test functional behavior and measure software performance. It was originally intended solely for testing web applications but it is now capable of performing more test function such as both on static and dynamic resources (Java objects, serverlets, Perl scripts, etc). Apache JMeter can also be used to simulate heavy loads on servers, networks. SilkPerformer SilkPerformer is an enterprise-level load-testing tool provided by Microfocus. It can emulate thousands of users who are working with several different protocols and computing environments. SilkPerformer helps the tester to predict the behavior of software in an e-business environment before it is deployed no matter how large or complex it may be. SilkTest SilkTest is a functional test tool provided by Microfocus. It is used for web, Java, and/or client/server-based applications. SilkTest features include test design and customization, test planning, test management, direct access to databases, recovery for unsupervised testing, and an integrated development environment that can be used for writing, editing, compiling, running, and debugging test scripts, plans, and more. performance testing interview questions and answers pdf silkperformer interview questions testing tools interview questions and answers pdf

What are different testing types Types of Software Testing Software testing is a process of verifying whether a software program or system is performing according to requirements and specifications. The program is executed in a controlled manner in order to identify defects and flaws so they can be fixed by the development team before it is delivered to the client. There are various kinds of software testing and the type used depends on the types of defects that the test team is trying to locate. For example, performance testing is done to find defects when the system does not perform as expected, while usability testing is used to locate flaws while using the system. Testing Mechanism vs. Testing Type

When considering the various types of software testing, many people make the mistake of thinking of the testing mechanism with the type of software testing. The testing mechanism refers to whether the tester is using manual software testing or automated software testing. The testing type refers to performance testing, functional testing, etc. So a functional test can be performed using manual testing or automated testing. While there are several different kinds of software testing, the most common testing types used by organizations are: functional testing, performance testing, compatibility testing, usability testing, scalability testing, accessibility testing, security testing, and regulatory-compliance testing. Descriptions of these testing types and more are listed below. Types of Software Testing Acceptance testing This type of testing is done in order to verify that a piece of software or a system meets the requirements specified by the customer. It is usually either performed by the customer or in the presence of the customer to determine whether to accept the application. Alpha testing This type of testing is performed in-house and usually at the end of development. Sometimes a virtual user environment is created to support this testing. The results of this testing may indicate the need for minor changes. Beta testing This type of testing is typically performed either by outside organizations or by the end-users. This is usually the final round of testing before the software is released to the end customers. Black box testing In this type of testing, requirements and functionality are the main focus. The internal design of the system is not considered. This means that an input is given and the output is checked. Another name for this type of testing is Behavioral Testing. Comparison testing This type of testing us used to compare the strengths and weaknesses of a software product with previous versions or with other similar products. Compatibility testing This type of testing is performed to determine how well the software behaves with the hardware, operating system, other software, and/or the network environment. Compliance Testing - This type of testing verifies that the software or system was developed in keeping with the necessary standards, guidelines, and procedures. Configuration Testing This type of testing is similar to the compatibility testing and is done to determine the optimal hardware and software configuration. It also is used to determine the effect of changing certain resources such as the CPU, memory, disk drives, etc. Conformance Testing This type of testing is used to verify that the software implementation conforms to industry standards. This is important when a product requires portability, compatibility, and/or interoperability in order to fulfill the needs of the end user. End-to-end testing This type of testing involves testing of a total application environment in a scenario that imitates realworld use. An example of this is interacting with a database, hardware, and other applications or systems. In a sense it is similar to system testing. Error-Handling Testing This type of test determines whether the software system is capable of properly processing errors and erroneous transactions. Exploratory Testing This testing type simply explores the features of the software. Functional testing This kind of software testing validates that the software meets specifications and flawlessly performs all of the required functions. This typically requires a series of tests which checks all features and uses a variety of normal and abnormal input data. This type of testing can be performed with both manual and automated testing and using black or white box methodologies.

Incremental Integration Testing This type of testing is considered to be a bottom up approach for testing. It may simply be continuously testing an application as new functions are added. It also means that some modules and functions must be independent of each other and should be able to be tested separately. Install/Uninstall Testing This kind of testing verifies that the install and uninstall processes work for all of the intended hardware and operating systems. This usually applies to both partial and full installations/removals as well as upgrades. Integration Testing This type of testing is used to integrate modules of software for the purpose of verifying combined functionality. In this case, code modules are combined and tested as a group to confirm that they function together as expected. There are two variations of integration testing. In bottom-up integration, lower level functions are tested first in order to eliminate some of the testing required for higher level components. In top-down integration testing, the top-level modules are tested in order to alleviate the need for testing the lower level modules. Inter-Systems Testing This kind of software testing verifies that the interface between two or more software applications or systems operates as anticipated. Load testing This is basically performance testing used to verify how a system behaves under load. This helps to determine the point at which the response time of a system either degrades or fails. Mutation Testing For this kind of testing, code that was modified to fix a defect is checked. Performance Testing This type of testing simply verifies that a software system meets the performance requirements. The term for this testing is often used interchangeably with stress testing and load testing. Recovery Testing This kind of software testing is used to determine how well a software system recovers from hardware failures, system crashes, and any other catastrophic issues. Regression Testing This type of testing is considered to be one of the most important. It checks whether small changes in any components cause defects in the system for each new release. Previous versions of the software are tested repeatedly in order to determine if new quality problems have been introduced into the software. Since it is very difficult to thoroughly check the entire system, regression testing is often automated. Scenario Testing This kind of software testing is used to provide more realistic and meaningful combinations of functions of the software. Security Testing This type of testing is used to evaluate how well a system is able to protect itself from unauthorized internal or external access. This also includes willful damage to the code. Smoke Testing This type of testing is sometimes called build verification testing, link testing, and turn it on and see if it catches fire testing. It is used to verify the general testability of the software. It simply checks whether the application is ready to proceed to major testing. Stress Testing In this type of testing the software is checked to see how far it can perform beyond its specifications before it fails. Tester may perform actions such as inputting larger values, complex database queries, and adding data beyond storage capacity. System Testing For this kind of software testing, the entire systems is tested to confirm compliance with requirements. It verifies that the system meets both functional and non-functional specifications. Unit testing This type of testing is usually performed during the development phase and it checks the individual software components or modules. It is usually performed by the developers and not by the testers so it requires detailed familiarity of the inner workings of the software. It ensures proper software behavior prior to the integration of the system.

Usability Testing This type of testing verifies that the software application is user-friendly. The flow of the navigation of the application is evaluated as well as how easy it is for the user to understand. White box testing This kind of software testing is also known as Glass Box testing. It is performed based on knowledge of the internal working of the software so tests usually check code statements, conditions, paths, and branches. name a kind of test different types of manual testing different types manual testing What is Regression Testing Regression Testing Explained Regression testing is the process to ensure the data are working properly with the existing software. The main aim is to fix the bugs and to make sure the problems are solved. Regression testing is acting as the control measure for maintaining the quality of the product with its specified requirements and the code. Verifying the application works by changing the code to test whether the product needs any enhancement methods to be used. Few cases the end user rise the request to change the methodological aspects through the incremental programming that implies more and meet the project goals.

regression-testing Figure: Regression Testing Difference between Manual and Automated Testing types Manual Testing vs. Automated Testing A key step in the software development process is testing. It is important to ensure that the software product behaves as designed before releasing it to the end users. While no software is defect free, reducing the number of bugs in a piece of software is critical to a companys profit and reputation. In the battle to decrease the number of bugs found in their software and systems, many company struggle with the decision of whether to utilize manual software testing or automated software testing. When contemplating manual testing vs. automated testing, one form of testing may be more appropriate than another and a company and its development team must understand what each form of testing entails and the strengths and weaknesses of each. Manual Testing Manual testing is the process of manually checking software for defects. In this method, a tester performs checks as if they are the end-user. All features of the software under test are exercised to ensure that it behaves according to design and customer expectation. A test plan, which may involve the use of test cases, is used in the implementation of this type of testing. Manual testing is often considered to be a labor-intensive activity that could simply be automated. Manual Testing of Small and Large Projects The extent of testing required for manual testing may vary based on the size of the project. For small-scale projects, exploratory testing may be adequate. This is an informal approach where the tester does not follow a rigorous testing procedure, but explores the applications user interface. The point of the exercise is to use as many features as possible and to use information gained in prior tests to instinctively derive additional tests. The success of this type of manual testing relies greatly on the knowledge of the tester because a lack of expertise will lead to the test being incomplete. In addition to being simple, another advantage of this informal approach is the acquisition of intuitive insight to how it feels to use the product.

Large-scale projects that use manual software testing have to follow a more rigorous methodology in order to find more defects. It has to be a more systematic approach that typically focuses on predetermined test cases. Though each company creates its own process, the process often involves the following steps: 1. Select a high-level test plan. In this test plan, methodology is selected, and resources (i.e. people, equipment, space) are identified and acquired. 2. Write test cases. These test cases are very detailed and identify clear and concise steps to be taken by the tester including expected outcomes. 3. Assign test cases. The test cases are assigned to testers, who are expected to follow the given steps and record results. 4. Report the finding. A test report is created that provides details of the findings of the testers. It is used to determine whether the software can be released or if corrective action is required.

Phases of Manual Testing Most teams that utilize manual testing go through four phases. These phases include the following:

Unit Testing In the first phase of testing, the developer writing the code usually tests the units of the code that they are writing. In some cases, a peer may also test the code.

Integration Testing - The second phase is where several pieces of code are integrated to form a larger block of code. In this phase, black box testing technique is used most of the time. Sometimes white box testing is used as well.

System Testing - In the third phase, the software is tested as a system. It is examined from all possible dimensions as well as for all intended platforms and purposes. This is done in order to observe any abnormalities in the system. Black box testing technique is typically used in this phase.

User Acceptance Testing - The final phase is performed in order to get customer approval of the finished product. There are two types of acceptance testing: alpha testing and beta testing. Automated Testing Automated testing involves a process of using a computer program to perform testing. It is common for an automated test to involve a manual process that is already in place and can be more effective in identifying certain types of defects. In this type of testing, software is used to control the execution of tests, compare and predict outcomes, setup testing preconditions, and any other necessary control and reporting functions. Automated testing can usually be run quickly and is often a very cost effective method of testing software products. This is especially true for products that have a long maintenance life, where software patches alter the function of previous features. Automated testing tools can usually be used to automatically perform tasks such as product installation, generation of test data, GUI interaction, problem detection, defect logging, and more. It is unique because these things can be done without having to be performed end-to-end. There are several requirements that must continuously be satisfied when automating tests. They are the following: Operating system and platform independence Data driven capability (i.e. Input, Output, and Meta Data)

Report customization (i.e. database access and crystal reports) Simplified debugging and logging Ease of version control (minimize use of binary files) Customizability & Extensibility (i.e. ability to integrate with other tools) Common Driver (For example, in the Java development ecosystem, that Ability to support unattended test runs for integration (using build processes and batch runs) Automated notification upon failure or reaching of threshold levels Support if distributed applications There are basically two approaches to automated testing: code-driven testing and graphical user interface (GUI) testing. Code-Driven Testing In code-driven testing, the interfaces to classes, modules, and/or libraries are tested using variety of input arguments in order to validate that the outputs that are returned are correct. In some cases, unit tests are written to define the functionality before the actual code is written. The code considered complete when all tests pass. It is believed that this method of testing produces more reliable and less costly software because code coverage is better, and it is run constantly throughout the development phase rather than a few times at the end. This helps the developer to instantly discover defects caused by changes. The earlier a defect is detected, the less expensive it is to fix. Another benefit is that code complexity decreases because code duplication is minimized. GUI Testing The GUI testing approach can be applied to any application that has a graphical user interface. The advantage of this approach is that it does not require a lot of software development. In order to confirm that the visible behavior of a program is correct, GUI testing is a framework that generates user interface events such as keystrokes and mouse clicks, so that the changes that result in the user interface can be observed. Several of the tools used for automated testing have record and playback features that allow users to record user actions and replay them repeatedly for the purposes of comparing expected results with actual outcomes. However, these features can introduce some reliability and maintainability issues because modifications to the GUI such as button name changes and relocations require that the test be recorded again. There are several variations of GUI testing. One is used to test web sites. In these cases, the interface is the web page and it observes HTML rather than window events. Another variation is called script-less test automation. It does not use record/playback, but builds a model of the application being tested and enables the tester to create test cases by editing in test parameters and conditions. Despite the name, this does not require scripting skills, but has the flexibility and power of scripting. Comparison: Manual Testing vs. Automated Testing A common message when weighing manual testing vs. automated testing, automated software testing is often thought to be the best way to increase the effectiveness, efficiency and coverage of your software testing because they usually save time and money, improve accuracy, and assist developers and tester in doing things that manual tests simply cannot. A computer can follow a sequence of steps faster than a person, and can run continuously overnight if necessary.

However, there are some that believe that while manual tests are indeed labor- intensive, it is incorrect to underplay the importance of human intelligence and assume that all manual testing can be replaced by automated tools. Also, one must consider that sometimes the time spent creating the automated test can sometimes match the time saved by the testing. As a matter of fact, depending on the type of system being tested and the tools that are chosen for test automation, some automated testing may require more labor than a manual testing approach. In addition to this, sometimes interpreting the results of the large amount of data produced by automated testing tools can present a challenge of its own. This means that automated testing becomes more cost effective in cases of regression testing and test-driven development, when the same tests can be reused many times over the results can be interpreted quickly. So if test software is not likely to be used in the future, then a manual approach is more favorable. Items such as device drivers and software libraries should be tested using the automated testing approach. In addition to this, for performance testing and load testing (testing large numbers of users) it is better to simulate with automated testing rather than manual testing. On the other hand, GUIs where the layout changes frequently are extremely difficult to check using automated testing. There are test frameworks that may be useful for regression testing of GUIs but they rely on recording sequences of keystrokes and mouse movements, followed by playback and observation of user interface response. If these buttons are moved or changed in any other way in subsequent releases, these recordings may not work properly. In these cases, manual testing may be more effective then automated testing. When making decisions regarding manual testing vs. automated testing, one should take into account the items being tested. In some instances, one form of testing may be more useful than the other, but neither is ideal for all cases. difference between automation and manual operation in the library difference between different manual testing types manual testing types ifference between Manual and Automated Testing Difference between Manual testing and Automated Testing Before we start to know about manual testing and automated testing, let us know some concepts on software testing. Software testing can be defined as task from planning to execution. These software programs help you to easily identify any bugs or errors in the program. Test plan is first step to software testing Planning is most appropriate step when you have to start the testing. You need to carry on with manual testing or automated testing easily. Whether you go for any one of the types of testing, you need to follow the following things: 1. 1. 2. 3. Test planning Writing test cases Executing test cases Reporting results of test cases

Let us know about both the tests in details. Manual testing: Any test engineers who test the software manually use this testing technique. The test engineer is responsible for carrying out all test cases and executing the application manually. When he carries all test cases systematically, he can identify whether any particular step has been successful or failed. One basic information that is required while doing manual testing in test cases, how to implement those manually. In this way when the test completed, it gives you an opportunity to easily create and manage manual testing while testing your application. When you add manual testing project item to your project then it helps you to create a collection of steps that can be performed when application is being tested. According to test strategy of test plan, you can write test cases for all kinds of testing. Generally, test engineers

write test cases according to design document of software. Whenever any testing is performed, manual testing is its part. It is the initial phase of testing that is useful for software development. Advantages of manual testing 1) 2) 3) 4) It is used in both big and small projects According to project movement, test cases can be added or removed. Within a limited cost budget, it is covered. Manual testing is better than automated testing in terms of reliability.

5) Tester is able to perform more adhoc. You will find that more bugs and errors are found with adhoc than the automation.

Disadvantages of manual testing 1) 2) 3) In manual testing, you cannot find GUI object size difference and color combination easily. In this type of testing, for large number of fusers you cannot cover actual load and performance. Manual testing is time consuming.

Automated testing: Automated testing is a type of testing where test engineers are responsible for running script on any testing tool for testing. This process of using tools to test software using scripts is not so easy. It requires good programming knowledge by the engineer. This would be helpful for them to write any script for any test case. Here they make good plans and scripts for various test cases. Here complete time is devoted to write scripts. There is a set environment on tool to run the test cases, and these are important as any kind of small errors may cause failure in test result. All detailed information is good even GUI small objects of screen are key information in it. Advantages of automated testing 1) 2) 3) 4) 5) 6) 7) Within a limited time, you cover all major test cases. Using tools, you can check all kind of case like load and performance of software. It is best choice in case of regression testing Sometimes certain website requires immediate evaluation, and this testing is the best choice during this time. This testing can be performed on different operating systems within same time For volume testing, this kind of testing is used as easier tools Within short period, you can obtain test results of many test cases.

Disadvantages of automated testing 1) Initially it is a time taking work, as it requires test cases to be resolved in to scripts.

2) When you compare it to manual testing, this testing is expensive. 3) Not all tools support all languages, as there is much software for different language testing. 4) This kind of testing is not able to detect color related issues. 5) As it cannot read tags, hence automated testing is not able to identify missing heading tags. 6) This test cannot identify the descriptive attributes. 7) To determine whether a website is comprehensible or functional if browsers do not support style sheets and scripts or even if user disable these, are not easily identified by automated testing. This testing does not support any video or mp3 file.

There are specific situation where you should use either manual testing or automation testing. However, in some situation, you can make use of both the tests. Here are those situations: 1) Functional: Functionality test is something that must be done manually as well as in automated.

2) Use cases or user scenarios. Here you can string together functional tests in to overflow and this can create realistic user scenarios whether you use it manually or automatically. If the workflow involves human intervention, then trick is here is that automated testing must be avoided. 3) User interface: You can test the user interface using automated testing but you have to keep track of costs as changes required frequently may result in high costs. 4) Date and time handle: If test cases can easily reset computers clock then you can automate these tests.

Both of these testing will help you to test application with specific technique. On one side testing manually is based on concepts and functions of project and automated testing is based on tool support for specific languages. Manual testing is preferred for small projects and automated for big projects to save money and time respectively. With so many automation testing tools available in market, you can easily get rid of all errors and bugs in program with easy means. Both of these testing tools have their own respective share of responsibilities in testing projects. With best of tools available in market, you can get ahead of competitors easily. difference between manual and automation testing difference between manual testing and automation testing difference between manual testing and My recent testing interview questions with wal-mart client. Hi friends, recently I have attended interview for wal-mart client and below are the few of many interview questions and how I answered them. Please comment your experiences , questions and answers to know more similar questions.. 1) Can you explain about your experience in the recent project? Ans: Well, in the recent project I have worked as a Quality Analyst which includes both manual testing functionalities and as well as business analyst responsibilities. As for as Business Analyst roles, I have participated in ZAD sessions in order to gather the business requirements fro end users. From the requirements gathering meetings, I used to collect the requirements and business needs from the stake holders and use them to prepare functional specifications and give the to developers.

Then as a Quality Analyst, I used to prepare test cases from the same requirements that I have collected, and write all the possible test cases and put them in the test case template. The test case template has some standard fields such as : Testcase no, Testcase description input values or test data expected results actual results. Once I get approval from my team leader for the testcases I have written, I used to start working on functional testing. Most of the time test data is created by the developers so I used to do functional testing manually by following the test cases that were written. If test data is not there in some situaltions, then I used to create test data and then work on the testcases. Since my recent project was in healthcare industry, I got an opportunity to work on different modules such as claims, membership and enrollment. In the recent project I worked on FACETS 4.5 application in claims and member enrollment modules. I prepared any test cases to determine if the claims are processed as desired. If any claims are failed then I used to report the incident in defect tracking tool, in our case it is quality center 9.0. I used to create the defect and assign them to development team. Once they are fixed, I used to re test and if it is working perfectly, then used to close the defect ticket that I have created. In the member enrollment module also, I used to create some test data by creating memebrs and assigning them to some groups in the FACETS application. This data I used to work on differen test cases which I have written in testcase template. 2) Which environment you have worked in your recent project? Ans: The environment I have worked is quite big as the client used to have many legasy systems as well. But to be precise, the mian environment I worked consists of databases Oracle, DB2, operating systems both unix for server side tools, and windows for client side tools. And for testing related I worked in the environment of Quality center, QTP, Loadrunner, Subversion (which is a version control tool). 3) What are the typical components of a testcase document? Ans: Testcase document have testcase no, testcase description, test data or input data, expected results, actual results, pass/fail, comments.. client interview questions for testing walmart interview questions and answers tell me about yourself in software testing Test results documentation Test Results Documentation Test results documentation is usually based on an existing test plan. It shows and discusses the results that the system under test produced when the test plan was executed and reports whether the system satisfied the validation process. This is important to show whether the system satisfies the requirements and indicates any requirements that are not satisfied. In addition to showing how requirements are being fulfilled, the test results documentation can be used to expose unexpected system behavior. Test procedures and cases indicate what is being tested so they should either be restated or referenced in the test results documentation. Though the format varies from one organization to the next, most test results documentation includes the following: Functionality being verified Software version used Name of QA tester(s) Date test performed Results of test Issues and other Defects found Integration Testing

What is Integration Testing Software testing is done primarily to assess and evaluate the quality of a program, application, or product. It is an important part of software development and is an effective way to ensure that the software works as it is supposed to. Software testing also helps determine whether the software is able to meet the requirements that served as a basis for its development and design. Software can fail in a number of ways. Softwares bugs are unavoidable because of the complexity of software modules. Defects in design are not uncommon when it comes to software and software testing can help find errors in the program. However, it is basically infeasible to conduct a complete and thorough test on software because of its intricate and dynamic nature. Software testing is critical in each phase of software development. Testing is usually done to improve the software, to verify and validate product specifications, and to measure the softwares reliability. Software testing can be quite expensive but it is essential part of software development and certainly cannot be overlooked. It does not only reduce the cost of development but it can also decrease the cost of ownership. It also helps engage customers if a quality software program is provided. There are different levels of software testing. These are unit testing, integration testing, and system testing. UNIT TESTING Unit testing involves taking the smallest part of testable software in the application. This is then separated from the rest of the code and testing is done to see if it works exactly as expected. Every unit is tested individually and a large number of defects and errors are actually detected in this testing level. After each unit is tested, these are then integrated into sections. INTEGRATION TESTING Integration testing follows unit testing. This involves combining and testing different units of the program. This level of testing is important because even if a unit has successfully passed the unit testing, this is useless if the unit cannot be incorporated into the program. Two units are usually combined then the interface of this combination is tested. Different combinations of units are tested and these sections are eventually tested together.A lot of problems are actually discovered during integration testing. This is one of the reasons why testing teams usually focus more on this level of testing. Before integration testing can be done, it is imperative that all units have been tested. Integration testing involves creating a test plan, making test cases and test data, creating scripts to run the test cases, running the test cases, fixing any errors and retesting the code, and repeating the entire cycle until all the units have been combined effectively. There are different ways to do an integration testing. The four most common approaches are top-down approach, bottom-up approach, big bang approach, and umbrella approach. TOP-DOWN APPROACH The modules belonging to the top levels are tested and combined first in the top-down approach. This enables early testing of high-level logic as well as of data flow. There is also a decreased need for drivers. However, it tends to make test management difficult and utilities in the lower levels are tested belatedly. BOTTOM-UP APPROACH In the bottom-up approach, units in the lower levels are first to be tested and combined. These units are also known as utility modules. Utility modules are tested early in the process and there is a decrease in the need for stubs. One disadvantage of a bottom-up approach is that data flow and high-level logic are analyzed late in the development process. Its need for drivers also makes test management more complicated. BIG BANG APPROACH

Another common approach to integration testing is the big bang approach. In this approach, individual sections of the software are not combined until the point when everything is set. No formal integration testing is utilized and the software is combined then run. The big bang approach is a less controlled controlled method to integration testing. Among its many disadvantages include difficulty in isolating errors, late detection of defects in component interfaces, and large possibility of missing several major bugs. UMBRELLA APPROACH The last common integration testing method is the umbrella approach. This involves testing the control flow paths and the functional data. Initially, the inputs for the different functions are combined using the bottom-up approach. The outputs are then combined utilizing the top-down approach. This approach offers a high degree of support for early detection of limitations in function. There is also a decreased need for drivers and stubs. The umbrella approach, however, is less systematic compared to the other integrating testing methods. Integration testing is considered to be complete when when all the interfaces of the components have been successfully tested. This testing level is crucial to the software development process and it is important to document the entire process of integration to reduce omission errors. Failure to run required scripts can lead to inaccurate integration test results. Figure: Customer Investing Phases. SYSTEM TESTING System testing is the next level of software testing. This involves testing the program as a whole. This is important to ensure that the software meets standards of quality. System testing is a crucial part of the process of quality management. The product specifications, including the functional and technical requirements, are checked to ascertain adherence to standards. In this testing level, the application or program is tested in an environment that is similar to the actual production environment. In order to conduct a system testing, all units should have undergone unit testing and integrating testing. The test environment should also resemble the actual production environment where the software will be used. The steps involved in system testing are the same with unit testing. Software testing is truly important to ensure quality. It can take forever to identify the errors in the software and bugs cannot be totally discounted due to the complexity of software. There are other ways to improve the quality of software aside from software testing. Other methods such as inspection and walkthroughs are also effective and may even work better so these should also be considered. integration testing interview questions integration testing interview questions and answers integration testing in manual testing A Life Cycle QA Life Cycle Tutorial QA Testing life cycle of a newly developed Software On the completion of the development of software, it is essential that the team runs a QA testing life cycle to ensure that the programs are all free of bugs and that there is no loop holes left in it. This helps in eradicating problems that might arise in future if the problems are not rectified before the software is finally implemented. The QA testing life cycle starts with creating a test plan where the programmer designs the testing process for the developed software. This usually involves the creation of a flowchart diagram that facilitates with step by step instructions to follow. Once the plan is in place, the product is finally put to test. Every program of the software is tested for correct logical execution and intended output. This process helps in identifying the bugs present in the system. These bugs are very often logical errors and systematic loop holes that need to be modified for the program to run smoothly.

The bugs are then reported to the developer who starts the rectification process. Once the developer is satisfied, the software is forwarded to the Quality Assurance department to run a comprehensive test on it. Upon successful completion of the test, a verification report is published which states that the software has been cleared of all possible bugs and loop holes. In case of failure, a report is sent back to the developer stating the problems found and possible rectification measures. Once the software is completely debugged and verified, it is passed fit for implementation. The bugs that were found out are reported for future references and avoidance of repetition in future projects. This makes the final step of the testing life cycle. The implementation process involves either parallel installation where the old and the new system is used simultaneously until the staff gets acquainted with the new features or it can be an instant implementation where the old system is completely eliminated. This decision is upon the discretion of the client. The testing life cycle is vital as it saves you a lot of trouble shooting costs and also ensures that your client remains satisfied with your softwares performance. Database Testing Interview Questions Database / SQL Testing Interview Questions

Database testing or sql testing is mostly treated as back end testing where the tester performs a different kind of role here. He will write and execute test cases as usual, but in his test cases he writes the sql queries and the results of sql query in the test case template. He will manually go to database by using Toad/sql developer or any other database client tool, and then write sql queries to check if the application is giving the same data as required by the user. Basically he will double check the application results by manually writing sql queries. 1. Which SQL statements have you used for testing databases? This is a basic interview question used to determine your experience with using SQL and databases. Simply provide enough information to adequately display your knowledge of these items. 2. What is used to check data loading during database testing? Query analyzer can be used to check data loading. 3. How should test cases be written for database testing? Test cases for database testing should include the following information: project name, module name, bug ID number, test objective, steps/actions, expected results, actual results, status, priority of defect, and severity of defect. 4. What is typically checked during database testing? The following items are typically checked during database testing: Validation of field size (application matches what resides in database) Constraints Indexes (associated with performance related issues) Stored procedures 5. Provide an example of what can be manually tested in a database. Non-editable fields through the database can be tested manually. For example, a field that is non-editable through the front end, should not allow a user to add a record to the database.

6. What are the different types of Join conditions in SQL? Inner join, Outer Join, Left outer join, Right outer join. And try to explain each of them if he gives time. 7. How can you retrieve unique rows from a table? I can do that by using a DISTINCT keyword in my sql query. eg: select DISTINCT * from products where product_category = Electronics; 8. How do SQL queries will effect the performance of the application? Yes, sql queries make a lot of impact on the whole performance of application. A poorly written sql query by a developer can take long time to generate a report or retrieve data from data base. So, we need to take few precautions while writing queries, as a database tester I will also review the queries written by a developer. For example: get rid of nested sql queries as much as possible and make use of joins. The above are few of many database testing interview questions. I will keep updating this page as and when I get time. please book mark this page (Ctrl + D) in your favorites for quick access. You must also know the important 100 sql query samples and Important SQL interview questions. QL top Interview Questions

TABLE SALESPEOPLE

SNUM 1001 1002 1004 1007 1003

SNAME Peel Serres Motika Rafkin Axelrod

CITY London San Jose London Barcelona New york

COMM .12 .13 .11 .15 .1

TABLE CUST

CNUM 2001 2002 2003 2004

CNAME Hoffman Giovanne Liu Grass

CITY London Rome San Jose Brelin

RATING 100 200 300 100

SNUM 1001 1003 1002 1002

2006 2007

Clemens Pereira

London Rome

300 100

1007 1004

ORDERS

ONUM 3001 3003 3002 3005 3006 3009 3007 3008 3010 3011

AMT 18.69 767.19 1900.10 5160.45 1098.16 1713.23 75.75 4723.00 1309.95 9891.88

ODATE 03-OCT-94

CNUM 2008 2001 2007 2003 2008 2002

SNUM 1007 1001 1004 1002 1007 1003 1002 1001 2004 2006 1002 1001

03-OCT-94 03-OCT-94 03-OCT-94 04-OCT-94 04-OCT-94 05-OCT-94 05-OCT-94 2004 2006

06-OCT-94 06-OCT-94

Problems : 1. Display snum,sname,city and comm of all salespeople.

Select snum, sname, city, comm from salespeople; 2. Display all snum without duplicates from all orders. Select distinct snum from orders; 3. Display names and commissions of all salespeople in london. Select sname,comm

from salespeople where city = London; 4. All customers with rating of 100. Select cname from cust where rating = 100;

5.

Produce orderno, amount and date form all rows in the order table.

Select ordno, amt, odate from orders; 6. All customers in San Jose, who have rating more than 200. Select cname from cust where rating > 200; 7. All customers who were either located in San Jose or had a rating above 200. Select cname from cust where city = San Jose or rating > 200; 8. All orders for more than $1000. Select * from orders where amt > 1000; 9. Names and citires of all salespeople in london with commission above 0.10. Select sname, city from salepeople where comm > 0.10 and city = London; 10. All customers excluding those with rating <= 100 unless they are located in Rome.

Select cname from cust where rating <= 100 or city = Rome; 11. All salespeople either in Barcelona or in london. Select sname, city from salespeople where city in (Barcelona,London); 12. All salespeople with commission between 0.10 and 0.12. (Boundary values should be excluded) Select sname, comm from salespeople where comm > 0.10 and comm < 0.12; 13. All customers with NULL values in city column. Select cname from cust where city is null; 14. All orders taken on Oct 3Rd and Oct 4th 1994. Select * from orders where odate in (03-OCT-94,04-OCT-94);

15. All customers serviced by peel or Motika. Select cname from cust, orders where orders.cnum = cust.cnum and

orders.snum in ( select snum from salespeople where sname in Peel,'Motika)); 16. All customers whose names begin with a letter from A to B. Select cname from cust where cname like A% or cname like B%; 17. All orders except those with 0 or NULL value in amt field. Select onum from orders where amt != 0 or amt is not null; 18. Count the number of salespeople currently listing orders in the order table. Select count(distinct snum) from orders; 19. Largest order taken by each salesperson, datewise. Select odate, snum, max(amt) from orders group by odate, snum order by odate,snum; 20. Largest order taken by each salesperson with order value more than $3000. Select odate, snum, max(amt) from orders where amt > 3000 group by odate, snum order by odate,snum; 21. Which day had the hightest total amount ordered.

Select odate, amt, snum, cnum from orders where amt = (select max(amt) from orders) 22. Count all orders for Oct 3rd. Select count(*) from orders where odate = 03-OCT-94; 23. Count the number of different non NULL city values in customers table. Select count(distinct city) from cust;

24. Select each customers smallest order. Select cnum, min(amt) from orders group by cnum; 25. First customer in alphabetical order whose name begins with G. Select min(cname) from cust where cname like G%; 26. Get the output like For dd/mm/yy there are ___ orders. Select For || to_char(odate,dd/mm/yy) || there are || count(*) || Orders from orders group by odate; 27. Assume that each salesperson has a 12% commission. Produce order no., salesperson no., and amount of salespersons commission for that order.

Select onum, snum, amt, amt * 0.12 from orders order by snum; 28. Find highest rating in each city. Put the output in this form. For the city (city), the highest rating is : (rating). Select For the city ( || city || ), the highest rating is : ( || max(rating) || ) from cust group by city; 29. Display the totals of orders for each day and place the results in descending order. Select odate, count(onum) from orders group by odate order by count(onum); 30. All combinations of salespeople and customers who shared a city. (ie same city). Select sname, cname from salespeople, cust where salespeople.city = cust.city; 31. Name of all customers matched with the salespeople serving them. Select cname, sname from cust, salespeople where cust.snum = salespeople.snum; 32. List each order number followed by the name of the customer who made the order. Select onum, cname from orders, cust where orders.cnum = cust.cnum;

33. Names of salesperson and customer for each order after the order number. Select onum, sname, cname from orders, cust, salespeople where orders.cnum = cust.cnum and orders.snum = salespeople.snum; 34. Produce all customer serviced by salespeople with a commission above 12%. Select cname, sname, comm from cust, salespeople where comm > 0.12 and cust.snum = salespeople.snum; 35. Calculate the amount of the salespersons commission on each order with a rating above 100. Select sname, amt * comm from orders, cust, salespeople where rating > 100 and salespeople.snum = cust.snum and salespeople.snum = orders.snum and cust.cnum = orders.cnum 36. Find all pairs of customers having the same rating. Select a.cname, b.cname,a.rating from cust a, cust b where a.rating = b.rating and a.cnum != b.cnum 37. Find all pairs of customers having the same rating, each pair coming once only. Select a.cname, b.cname,a.rating from cust a, cust b where a.rating = b.rating and

a.cnum != b.cnum and a.cnum < b.cnum; 38. Policy is to assign three salesperson to each customers. Display all such combinations. Select cname, sname from salespeople, cust where sname in ( select sname from salespeople where rownum <= 3) order by cname; 39. Display all customers located in cities where salesman serres has customer. Select cname from cust where city = ( select city from cust, salespeople where cust.snum = salespeople.snum and sname = Serres);

Select cname from cust where city in ( select city from cust, orders where cust.cnum = orders.cnum and orders.snum in ( select snum from salespeople where sname = Serres)); 40. Find all pairs of customers served by single salesperson.

Select cname from cust where snum in (select snum from cust group by snum having count(snum) > 1);

Select distinct a.cname from cust a ,cust b where a.snum = b.snum and a.rowid != b.rowid; 41. Produce all pairs of salespeople which are living in the same city. Exclude combinations of salespeople with themselves as well as duplicates with the order reversed. Select a.sname, b.sname from salespeople a, salespeople b where a.snum > b.snum and a.city = b.city; 42. Produce all pairs of orders by given customer, names that customers and eliminates duplicates. Select c.cname, a.onum, b.onum from orders a, orders b, cust c where a.cnum = b.cnum and a.onum > b.onum and c.cnum = a.cnum; 43. Produce names and cities of all customers with the same rating as Hoffman. Select cname, city from cust where rating = (select rating from cust where cname = Hoffman) and cname != Hoffman; 44. Extract all the orders of Motika.

Select Onum from orders where snum = ( select snum from salespeople where sname = Motika);

45. All orders credited to the same salesperson who services Hoffman. Select onum, sname, cname, amt from orders a, salespeople b, cust c where a.snum = b.snum and a.cnum = c.cnum and a.snum = ( select snum from orders where cnum = ( select cnum from cust where cname = Hoffman)); 46. All orders that are greater than the average for Oct 4. Select * from orders where amt > ( select avg(amt) from orders where odate = 03-OCT-94); 47. Find average commission of salespeople in london. Select avg(comm) from salespeople

where city = London; 48. Find all orders attributed to salespeople servicing customers in london. Select snum, cnum from orders where cnum in (select cnum from cust where city = London); 49. Extract commissions of all salespeople servicing customers in London. Select comm from salespeople where snum in (select snum from cust where city = London); 50. Find all customers whose cnum is 1000 above the snum of serres. Select cnum, cname from cust where cnum > ( select snum+1000 from salespeople where sname = Serres); 51. Count the customers with rating above San Joses average. Select cnum, rating from cust where rating > ( select avg(rating) from cust where city = San Jose); 52. Obtain all orders for the customer named Cisnerous. (Assume you dont know his customer no. (cnum)). Select onum, odate from orders

where cnum = ( select cnum from cust where cname = Cisnerous); 53. Produce the names and rating of all customers who have above average orders. Select max(b.cname), max(b.rating), a.cnum from orders a, cust b where a.cnum = b.cnum group by a.cnum having count(a.cnum) > ( select avg(count(cnum)) from orders group by cnum); 54. Find total amount in orders for each salesperson for whom this total is greater than the amount of the largest order in the table. Select snum,sum(amt) from orders group by snum having sum(amt) > ( select max(amt) from orders); 55. Find all customers with order on 3rd Oct. Select cname from cust a, orders b where a.cnum = b.cnum and odate = 03-OCT-94; 56. Find names and numbers of all salesperson who have more than one customer. Select sname, snum from salespeople where snum in ( select snum

from cust group by snum having count(snum) > 1 ); 57. Check if the correct salesperson was credited with each sale. Select onum, a.cnum, a.snum, b.snum from orders a, cust b where a.cnum = b.cnum and a.snum != b.snum; 58. Find all orders with above average amounts for their customers. select onum, cnum, amt from orders a where amt > ( select avg(amt) from orders b where a.cnum = b.cnum group by cnum); 59. Find the sums of the amounts from order table grouped by date, eliminating all those dates where the sum was not at least 2000 above the maximum amount.

Select odate, sum(amt) from orders a group by odate having sum(amt) > ( select max(amt) from orders b where a.odate = b.odate group by odate); 60. Find names and numbers of all customers with ratings equal to the maximum for their city. Select a.cnum, a.cname from cust a

where a.rating = ( select max(rating) from cust b where a.city = b.city); 61. Find all salespeople who have customers in their cities who they dont service. ( Both way using Join and Correlated subquery.) Select distinct cname from cust a, salespeople b where a.city = b.city and a.snum != b.snum;

Select cname from cust where cname in ( select cname from cust a, salespeople b where a.city = b.city and a.snum != b.snum ); 62. Extract cnum,cname and city from customer table if and only if one or more of the customers in the table are located in San Jose. Select * from cust where 2 < (select count(*) from cust where city = San Jose); 63. Find salespeople no. who have multiple customers. Select snum from cust group by snum having count(*) > 1;

64. Find salespeople number, name and city who have multiple customers.

Select snum, sname, city from salespeople where snum in ( select snum from cust group by snum having count(*) > 1);

65. Find salespeople who serve only one customer. Select snum from cust group by snum having count(*) = 1; 66. Extract rows of all salespeople with more than one current order. Select snum, count(snum) from orders group by snum having count(snum) > 1; 67. Find all salespeople who have customers with a rating of 300. (use EXISTS) Select a.snum from salespeople a where exists ( select b.snum from cust b where b.rating = 300 and a.snum = b.snum) 68. Find all salespeople who have customers with a rating of 300. (use Join). Select a.snum from salespeople a, cust b

where b.rating = 300 and a.snum = b.snum; 69. Select all salespeople with customers located in their cities who are not assigned to them. (use EXISTS). Select snum, sname from salespeople where exists ( select cnum from cust where salespeople.city = cust.city and salespeople.snum != cust.snum); 70. Extract from customers table every customer assigned the a salesperson who currently has at least one other customer ( besides the customer being selected) with orders in order table. Select a.cnum, max(c.cname) from orders a, cust c where a.cnum = c.cnum group by a.cnum,a.snum having count(*) < ( select count(*) from orders b where a.snum = b.snum) order by a.cnum; 71. Find salespeople with customers located in their cities ( using both ANY and IN). Select sname from salespeople where snum in ( select snum from cust

where salespeople.city = cust.city and salespeople.snum = cust.snum);

Select sname

from salespeople where snum = any ( select snum from cust where salespeople.city = cust.city and salespeople.snum = cust.snum); 72. Find all salespeople for whom there are customers that follow them in alphabetical order. (Using ANY and EXISTS) Select sname from salespeople where sname < any ( select cname from cust where salespeople.snum = cust.snum);

Select sname from salespeople where exists ( select cname from cust where salespeople.snum = cust.snum and salespeople.sname < cust.cname); 73. Select customers who have a greater rating than any customer in rome. Select a.cname from cust a where city = Rome and rating > ( select max(rating) from cust where city != Rome); 74. Select all orders that had amounts that were greater that atleast one of the orders from Oct 6th. Select onum, amt from orders

where odate != 06-oct-94 and amt > ( select min(amt) from orders where odate = 06-oct-94); 75. Find all orders with amounts smaller than any amount for a customer in San Jose. (Both using ANY and without ANY) Select onum, amt from orders where amt < any ( select amt from orders, cust where city = San Jose and orders.cnum = cust.cnum);

Select onum, amt from orders where amt < ( select max(amt) from orders, cust where city = San Jose and orders.cnum = cust.cnum); 76. Select those customers whose ratings are higher than every customer in Paris. ( Using both ALL and NOT EXISTS). Select * from cust where rating > any (select rating from cust where city = Paris);

Select *

from cust a where not exists ( select b.rating from cust b where b.city != Paris and b.rating > a.rating); 77. Select all customers whose ratings are equal to or greater than ANY of the Seeres. Select cname, sname from cust, salespeople where rating >= any ( select rating from cust where snum = (select snum from salespeople where sname = Serres)) and sname != Serres and salespeople.snum(+) = cust.snum; 78. Find all salespeople who have no customers located in their city. ( Both using ANY and ALL) Select sname from salespeople where snum in ( select snum from cust where salespeople.city != cust.city and salespeople.snum = cust.snum);

Select sname from salespeople where snum = any ( select snum from cust where salespeople.city != cust.city and salespeople.snum = cust.snum);

79. Find all orders for amounts greater than any for the customers in London. Select onum, amt from orders

where amt > any ( select amt from orders, cust where city = London and orders.cnum = cust.cnum); 80. Find all salespeople and customers located in london. Select sname, cname from cust, salespeople where cust.city = London and salespeople.city = London and cust.snum = salespeople.snum; 81. For every salesperson, dates on which highest and lowest orders were brought. Select a.amt, a.odate, b.amt, b.odate from orders a, orders b where (a.amt, b.amt) in (select max(amt), min(amt) from orders group by snum); 82. List all of the salespeople and indicate those who dont have customers in their cities as well as those who do have. Select snum, city, Customer Present from salespeople a where exists ( select snum from cust where a.snum = cust.snum and a.city = cust.city) UNION

select snum, city, Customer Not Present from salespeople a where exists ( select snum from cust c where a.snum = c.snum and a.city != c.city and c.snum not in ( select snum from cust where a.snum = cust.snum and a.city = cust.city)); 83. Append strings to the selected fields, indicating weather or not a given salesperson was matched to a customer in his city. Select a.cname, decode(a.city,b.city,Matched,'Not Matched) from cust a, salespeople b where a.snum = b.snum; 84. Create a union of two queries that shows the names, cities and ratings of all customers. Those with a rating of 200 or greater will also have the words High Rating, while the others will have the words Low Rating.

Select cname, cities, rating, Higher Rating from cust where rating >= 200 UNION

Select cname, cities, rating, Lower Rating from cust where rating < 200; 85. Write command that produces the name and number of each salesperson and each customer with more than one current order. Put the result in alphabetical order. Select Customer Number || cnum Code ,count(*) from orders

group by cnum having count(*) > 1 UNION select Salesperson Number ||snum,count(*) from orders group by snum having count(*) > 1; 86. Form a union of three queries. Have the first select the snums of all salespeople in San Jose, then second the cnums of all customers in San Jose and the third the onums of all orders on Oct. 3. Retain duplicates between the last two queries, but eliminates and redundancies between either of them and the first. Select Customer Number || cnum Code from cust where city = San Jose UNION select Salesperson Number ||snum from salespeople where city = San Jose UNION ALL select Order Number || onum from Orders where odate = 03-OCT-94; 87. Produce all the salesperson in London who had at least one customer there. Select snum, sname from salespeople where snum in ( select snum from cust where cust.snum = salespeople.snum and cust.city = London)

and city = London; 88. Produce all the salesperson in London who did not have customers there. Select snum, sname from salespeople where snum in ( select snum from cust where cust.snum = salespeople.snum and cust.city = London) and city = London;

89. We want to see salespeople matched to their customers without excluding those salesperson who were not currently assigned to any customers. (User OUTER join and UNION) Select sname, cname from cust, salespeople where cust.snum(+) = salespeople.snum;

Select sname, cname from cust, salespeople where cust.snum = salespeople.snum UNION select distinct sname, No Customer from cust, salespeople where 0 = ( select count(*) from cust where cust.snum = salespeople.snum);

90. Insert into table emp1 empno, sal and deptno from emp table. If table emp1 is created then insert into emp1 ( select empno,sal,deptno

from emp);

IF table is not created then Create table emp1 as ( select empno,sal,deptno from emp); 91. Update Salary of all employees by 10%. Update emp set sal = sal + 0.10 * sal; 92. Delete all rows from emp for deptno = 10. Delete from emp where deptno = 10; 93. Select list of all jobs which have an annual average salary greater than that managers. Select job,avg(sal) from emp group by job having avg(sal) > ( select avg(sal) from emp where job = MANAGER); 94. Select list of all employees who have atleast one other employee reporting to them. Select a.job, a.ename, a.empno, a.deptno from emp a where exists ( select * from emp b where a.empno = b.mgr);

95. Select all employees with correponding level numbers. Column orgn_chart format a21 Select lpad( ,3*level)|| ename orgn_charts,level,empno,job,mgr

from emp connect by prior empno = mgr start with name = KING; 96. Select average salary for employee at each level. Select level,avg(sal) from emp connect by prior empno = mgr start with name = KING group by level order by level; 97. Display organization chart for only those employee who work under JONES. Column orgn_chart format a21 Select lpad( ,3*level)|| ename orgn_charts,level,empno,job,mgr from emp connect by prior empno = mgr start with name = JONES; 98. Display organization chart for only those employee who work under JONES and BLAKE. Column orgn_chart format a21 Select lpad( ,3*level)|| ename orgn_charts,level,empno,job,mgr from emp connect by prior empno = mgr start with name in (JONES,BLAKE); 99. List information about all the people in the organization above ADAMS. Column orgn_chart format a21 Select lpad( ,3*level)|| ename orgn_charts,empno,job,mgr from emp connect by empno = prior mgr

start with name = ADAMS; 100. List all the people who work under BLAKE except JAMES. Column orgn_chart format a21 Select lpad( ,3*level)|| ename orgn_chart,level,empno,job,mgr from emp where ename != JAMES connect by prior empno = mgr start with ename = BLAKE; 101. List all the people who work under KING except all employees working under BLAKE. Select lpad( ,3*level)|| ename orgn_chart,level,empno,job,mgr from emp connect by prior empno = mgr and ename != BLAKE start with ename = KING

102. List all the people who work under KING except ADAMS and BLAKE and all employees working under BLAKE. Select lpad( ,3*level)|| ename orgn_chart,level,empno,job,mgr from emp where ename != ADAMS connect by prior empno = mgr and ename != BLAKE start with ename = KING 103. Select max salarys of deptno 10,20 and 30 in single row. Select min(decode(deptno,10,max(sal))) Dept No 10, min(decode(deptno,20,max(sal))) Dept No 20, min(decode(deptno,30,max(sal))) Dept No 30 from emp

group by deptno; 104. If supply table has three fields vendor, job, part. Find list of vendor who are supplying all part for given job. Select a.vendor,a.job,count(*) from supply a group by a.vendor,a.job having count(*) = ( select count(*) from supply b where a.job = b.job); 105. List all pairs of orders having same item and qty. Select a.ordid, b.ordid from item a, item b where not exists ( select itemid,qty from item c where c.ordid = a.ordid minus select itemid,qty from item d where d.ordid = b.ordid ) and not exists ( select itemid,qty from item c where c.ordid = b.ordid minus select itemid,qty from item d where d.ordid = a.ordid ) and a.ordid < b.ordid

group by a.ordid,b.ordid

Table name: lot_mas t Structure: lot_no a a b d d . . . lot_desc Pentium 486 Pentium Pentium Pentium . . . . . . storage fabrication fabrication fabrication fabrication fabrication

I want to display the out put like lot_no a d . . 2 3 . . times

select lot_no,count(lot_no) from lot_mast group by lot_no having count(lot_no) > 1;

There are twelve records for each employee in a year. The table structure is as follow.

Empno 1000 1000 1000 . . 1000 2000 2000 . . 2000 3000 3000 . .

month_no 01 02 03 .. .. 12 01 02 .. .. 12 01 02 .. ..

salary 2000 3500 2500 . . 3450 1900 5000 . . 5450 1900 5000 . .

The output should be as follows

empno Jan

Feb

Mar

Apr

May . . . . . . . . .

Dec 3450 5450 . . . .

1000 2000 3500 2500 . 2000 1900 5000 . 3000 1900 5000 . . . . . . . . . . . . . . . . . .

select a.empno,a.salary,b.salary,c.salary,d.salary,e.salary,

f.salary,g.salary,h.salary,i.salary,j.salary,k.salary,l.salary from emp a,emp b,emp c,emp d,emp e,emp f,emp g,emp h,emp i,emp j,emp,k.emp,emp l where a.month = 1 and a.empno = b.empno and b.month = 2 and b.empno = c.empno and c.month = 3 and c.empno = d.empno and d.month = 4 and d.empno = e.empno and e.month = 5 and d.empno = f.empno and f.month = 6 and d.empno = g.empno and g.month = 7 and d.empno = h.empno and h.month = 8 and d.empno = i.empno and i.month = 9 and d.empno = j.empno and j.month = 10 and d.empno = k.empno and k.month = 11 and d.empno = l.empno and l.month = 12;

The table structure is as follows

start_site_name F1 F2 F3 F5 F6 Fa Fb .. ..

end_site_name F2 F3 F4 F6 F7 Fb Fc .. ..

The out will be

level 1 2 3 1 2 1 2 .. .. ..

start_site_name F1 F2 F3 F5 F6 Fa Fb .. .. ..

end_site_name F2 F3 F4 F6 F7 Fb Fc .. .. ..

select level,start_site_name,end_site_name from table_name connect by prior end_site_name = start_site_name start with start_site_name = F

Home Software Testing QTP Load Runner Quality Center Tests ISTQB CSTE Forum Books Top 100 Software Testing Interview Questions

1. What is the MAIN benefit of designing tests early in the life cycle?

It helps prevent defects from being introduced into the code. 2. What is risk-based testing? Risk-based testing is the term used for an approach to creating a test strategy that is based on prioritizing tests by risk. The basis of the approach is a detailed risk analysis and prioritizing of risks by risk level. Tests to address each risk are then specified, starting with the highest risk first. 3. A wholesaler sells printer cartridges. The minimum order quantity is 5. There is a 20% discount for orders of 100 or more printer cartridges. You have been asked to prepare test cases using various values for the number of printer cartridges ordered. Which of the following groups contain three test inputs that would be generated using Boundary Value Analysis? 4, 5, 99

4. What is the KEY difference between preventative and reactive approaches to testing? Preventative tests are designed early; reactive tests are designed after the software has been produced.

5. What is the purpose of exit criteria? To define when a test level is complete. 6. What determines the level of risk? The likelihood of an adverse event and the impact of the event 7. When is used Decision table testing? Decision table testing is used for testing systems for which the specification takes the form of rules or cause-effect combinations. In a decision table the inputs are listed in a column, with the outputs in the same column but below the inputs. The remainder of the table explores combinations of inputs to define the outputs produced. Learn More About Decision Table Testing Technique in the Video Tutorial here

8. What is the MAIN objective when reviewing a software deliverable? To identify defects in any software work product. 9. Which of the following defines the expected results of a test? Test case specification or test design specification. Test case specification. 10. Which is a benefit of test independence? It avoids author bias in defining effective tests. 11. As part of which test process do you determine the exit criteria? Test planning. 12. What is beta testing?

Testing performed by potential customers at their own locations. 13. Given the following fragment of code, how many tests are required for 100% decision coverage? if width > length then biggest_dimension = width if height > width then biggest_dimension = height end_if else biggest_dimension = length if height > length then biggest_dimension = height end_if end_if

4 14. You have designed test cases to provide 100% statement and 100% decision coverage for the following fragment of code. if width > length then biggest_dimension = width else biggest_dimension = length end_if The following has been added to the bottom of the code fragment above. print "Biggest dimension is " & biggest_dimension print "Width: " & width print "Length: " & length How many more test cases are required? None, existing test cases can be used. 15. Rapid Application Development ? Rapid Application Development (RAD) is formally a parallel development of functions and subsequent integration. Components/functions are developed in parallel as if they were mini projects, the developments are time-boxed, delivered, and then assembled into a working prototype. This can very quickly give the customer something to see and use and to provide feedback regarding the delivery and their requirements. Rapid change and development of the product is possible using this methodology. However the product specification will need to be developed for the product at some point, and the project will need to be placed under more formal controls prior to going into production. 16. What is the difference between Testing Techniques and Testing Tools? Testing technique: Is a process for ensuring that some aspects of the application system or unit functions properly there may be few techniques but many tools. Testing Tools: Is a vehicle for performing a test process. The tool is a resource to the tester, but itself is insufficient to conduct testing Learn More About Testing Tools here

17. We use the output of the requirement analysis, the requirement specification as the input for writing User Acceptance Test Cases 18. Repeated Testing of an already tested program, after modification, to discover any defects introduced or uncovered as a result of the changes in the software being tested or in another related or unrelated software component: Regression Testing 19. What is component testing ? Component testing, also known as unit, module and program testing, searches for defects in, and verifies the functioning of software (e.g. modules, programs, objects, classes, etc.) that are separately testable. Component testing may be done in isolation from the rest of the system depend-ing on the context of the development life cycle and the system. Most often stubs and drivers are used to replace the missing software and simulate the interface between the software components in a simple manner. A stub is called from the software component to be tested; a driver calls a component to be tested. 20. What is functional system testing ? Testing the end to end functionality of the system as a whole. 21. What is the benefits of Independent Testing Independent testers see other and different defects and are unbiased. 22. In a REACTIVE approach to testing when would you expect the bulk of the test design work to be begun? After the software or system has been produced. 23. What are the different Methodologies in Agile Development Model? There are currently seven different Agile methodologies that I am aware of: Extreme Programming (XP) Scrum Lean Software Development Feature-Driven Development Agile Unified Process Crystal Dynamic Systems Development Model (DSDM) 24. Which activity in the fundamental test process includes evaluation of the testability of the requirements and system? A Test analysis and design. 25. What is typically the MOST important reason to use risk to drive testing efforts? Because testing everything is not feasible. 26. Which is the MOST important advantage of independence in testing? An independent tester may be more effective at finding defects missed by the person who wrote the software. 27. Which of the following are valid objectives for incident reports?

i. Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary. ii. Provide ideas for test process improvement. iii. Provide a vehicle for assessing tester competence. iv. Provide testers with a means of tracking the quality of the system under test. i. Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary, ii.Provide ideas for test process improvement, iv.Provide testers with a means of tracking the quality of the system under test

28. Consider the following techniques. Which are static and which are dynamic techniques? i. Equivalence Partitioning. ii. Use Case Testing. iii.Data Flow Analysis. iv.Exploratory Testing. v. Decision Testing. vi. Inspections. Data Flow Analysis and Inspections are static, Equivalence Partitioning, Use Case Testing, Exploratory Testing and Decision Testing are dynamic. 29. Why are static testing and dynamic testing described as complementary? Because they share the aim of identifying defects but differ in the types of defect they find. 30. What are the phases of a formal review ? In contrast to informal reviews, formal reviews follow a formal process. A typical formal review process consists of six main steps: Planning Kick-off Preparation Review meeting Rework Follow-up.

31. What is the role of moderator in review process?

The moderator (or review leader) leads the review process. He or she deter-mines, in co-operation with the author, the type of review, approach and the composition of the review team. The moderator performs the entry check and the follow-up on the rework, in order to control the quality of the input and output of the review process. The moderator also schedules the meeting, disseminates documents before the meeting, coaches other team members, paces the meeting, leads possible discussions and stores the data that is collected. Learn More About Review process in Video Tutorial here

32. What is an equivalence partition (also known as an equivalence class)? An input or output range of values such that only one value in the range becomes a test case. 33. When should configuration management procedures be implemented? During test planning. 34. A Type of functional Testing, which investigates the functions relating to detection of threats, such as virus from malicious outsiders. Security Testing 35. Testing where in we subject the target of the test , to varying workloads to measure and evaluate the performance behaviors and ability of the target and of the test to continue to function properly under these different workloads. Load Testing 36. Testing activity which is performed to expose defects in the interfaces and in the interaction between integrated components is: Integration Level Testing 37. What are the Structure-based (white-box) testing techniques ? Structure-based testing techniques (which are also dynamic rather than static) use the internal structure of the software to derive test cases. They are com-monly called 'white-box' or 'glass-box' techniques (implying you can see into the system) since they require knowledge of how the software is implemented, that is, how it works. For example, a structural technique may be concerned with exercising loops in the software. Different test cases may be derived to exercise the loop once, twice, and many times. This may be done regardless of the func-tionality of the software. 38. When should be performed Regression testing ? After the software has changed or when the environment has changed 39. When should testing be stopped? It depends on the risks for the system being tested 40. What is the purpose of a test completion criterion? To determine when to stop testing 41. What can static analysis NOT find?

For example memory leaks 42. What is the difference between re-testing and regression testing? Re-testing ensures the original fault has been removed; regression testing looks for unexpected sideeffects 43. What are the Experience-based testing techniques ? In experience-based techniques, people's knowledge, skills and background are a prime contributor to the test conditions and test cases. The experience of both technical and business people is important, as they bring different perspectives to the test analysis and design process. Due to previous experience with similar systems, they may have insights into what could go wrong, which is very useful for testing. 44. What type of review requires formal entry and exit criteria, including metrics? Inspection 45. Could reviews or inspections be considered part of testing? Yes, because both help detect faults and improve quality 46. An input field takes the year of birth between 1900 and 2004 What are the boundary values for testing this field ? 1899,1900,2004,2005 47. Which of the following tools would be involved in the automation of regression test? a. Data tester b. Boundary tester c. Capture/Playback d. Output comparator. d. Output comparator 48. To test a function,what has to write a programmer, which calls the function to be tested and passes it test data. Driver 49. What is the one Key reason why developers have difficulty testing their own work? Lack of Objectivity 50.How much testing is enough? The answer depends on the risk for your industry, contract and special requirements. 51. When should testing be stopped? It depends on the risks for the system being tested. 52. Which of the following is the main purpose of the integration strategy for integration testing in the small? To specify which modules to combine when, and how many at once. 53. What is the purpose of a test completion criterion? To determine when to stop testing 54. Given the following code, which statement is true about the minimum number of test cases required for full statement and branch coverage? Read p Read q IF p+q> 100

THEN Print "Large" ENDIF IF p > 50 THEN Print "p Large" ENDIF

1 test for statement coverage, 2 for branch coverage 55. What is the difference between re-testing and regression testing? Re-testing ensures the original fault has been removed; regression testing looks for unexpected side-effects. 56. Which review is normally used to evaluate a product to determine its suitability for intended use and to identify discrepancies? Technical Review. 57. Why we use decision tables?. The techniques of equivalence partitioning and boundary value analysis are often applied to specific situations or inputs. However, if different combinations of inputs result in different actions being taken, this can be more difficult to show using equivalence partitioning and boundary value analysis, which tend to be more focused on the user interface. The other two specification-based tech-niques, decision tables and state transition testing are more focused on business logic or business rules. A decision table is a good way to deal with combinations of things (e.g. inputs). This technique is sometimes also referred to as a 'cause-effect' table. The reason for this is that there is an associated logic diagramming technique called 'cause-effect graphing' which was sometimes used to help derive the decision table 58. Faults found should be originally documented by who? By testers. 59. Which is the current formal world-wide recognized documentation standard? There isnt one. 60. Which of the following is the review participant who has created the item to be reviewed? Author 61. A number of critical bugs are fixed in software. All the bugs are in one module, related to reports. The test manager decides to do regression testing only on the reports module. Regression testing should be done on other modules as well because fixing one module may affect other modules. 62. Why does the boundary value analysis provide good test cases? Because errors are frequently made during programming of the different cases near the edges of the range of values.

63. What makes an inspection different from other review types? It is led by a trained leader, uses formal entry and exit criteria and checklists. 64. Why can be tester dependent on configuration management? Because configuration management assures that we know the exact version of the testware and the test object. 65. What is a V-Model ? A software development model that illustrates how testing activities integrate with software development phases 66. What is maintenance testing? Triggered by modifications, migration or retirement of existing software 67. What is test coverage? Test coverage measures in some specific way the amount of testing performed by a set of tests (derived in some other way, e.g. using specification-based techniques). Wherever we can count things and can tell whether or not each of those things has been tested by some test, then we can measure coverage. 68. Why is incremental integration preferred over big bang integration? Because incremental integration has better early defects screening and isolation ability 69. When do we prepare RTM (Requirement traceability matrix), is it before test case designing or after test case designing? The would be before. Requirements should already be traceable from Review activities since you should have traceability in the Test Plan already. This question also would depend on the organisation. If the organisation do test after development started then requirements must be already traceable to their source. To make life simpler use a tool to manage requirements. 70. What is called the process starting with the terminal modules ? Bottom-up integration 71. During which test activity could faults be found most cost effectively? During test planning 72. The purpose of requirement phase is To freeze requirements, to understand user needs, to define the scope of testing 73. How much testing is enough? The answer depends on the risks for your industry, contract and special requirements 74. Why we split testing into distinct stages? Each test stage has a different purpose. 75. Which of the following is likely to benefit most from the use of test tools providing test capture and replay facilities? a) Regression testing b) Integration testing c) System testing d) User acceptance testing Regression testing

76. How would you estimate the amount of re-testing likely to be required? Metrics from previous similar projects and discussions with the development team 77. What studies data flow analysis ? The use of data on paths through the code. 78. What is Alpha testing? Pre-release testing by end user representatives at the developers site. 79. What is a failure? Failure is a departure from specified behaviour. 80. What are Test comparators ? Is it really a test if you put some inputs into some software, but never look to see whether the software produces the correct result? The essence of testing is to check whether the software produces the correct result, and to do that, we must compare what the software produces to what it should produce. A test comparator helps to automate aspects of that comparison. 81. Who is responsible for document all the issues, problems and open point that were identified during the review meeting Scribe 82. What is the main purpose of Informal review Inexpensive way to get some benefit 83. What is the purpose of test design technique? Identifying test conditions and Identifying test cases 84. When testing a grade calculation system, a tester determines that all scores from 90 to 100 will yield a grade of A, but scores below 90 will not. This analysis is known as: Equivalence partitioning 85. A test manager wants to use the resources available for the automated testing of a web application. The best choice is Tester, test automater, web specialist, DBA 86. During the testing of a module tester X finds a bug and assigned it to developer. But developer rejects the same, saying that its not a bug. What X should do? Send to the detailed information of the bug encountered and check the reproducibility 87. A type of integration testing in which software elements, hardware elements, or both are combined all at once into a component or an overall system, rather than in stages. Big-Bang Testing 88. In practice, which Life Cycle model may have more, fewer or different levels of development and testing, depending on the project and the software product. For example, there may be component integration testing after component testing, and system integration testing after system testing.

V-Model 89. Which technique can be used to achieve input and output coverage? It can be applied to human input, input via interfaces to a system, or interface parameters in integration testing. Equivalence partitioning 90. This life cycle model is basically driven by schedule and budget risks This statement is best suited for V-Model 91. In which order should tests be run? The most important tests first 92. The later in the development life cycle a fault is discovered, the more expensive it is to fix. why? The fault has been built into more documentation,code,tests, etc 93. What is Coverage measurement? It is a partial measure of test thoroughness. 94. What is Boundary value testing? Test boundary conditions on, below and above the edges of input and output equivalence classes. 95. What is Fault Masking ? Error condition hiding another error condition. 96. What does COTS represent? Commercial Off The Shelf. 97.The purpose of wich is allow specific tests to be carried out on a system or network that resembles as closely as possible the environment where the item under test will be used upon release? Test Environment 98. What can be though of as being based on the project plan, but with greater amounts of detail? Phase Test Plan 99. What is exploratory testing? Exploratory testing is a hands-on approach in which testers are involved in minimum planning and maximum test execution. The planning involves the cre-ation of a test charter, a short declaration of the scope of a short (1 to 2 hour) time-boxed test effort, the objectives and possible approaches to be used. The test design and test execution activities are performed in parallel typi-cally without formally documenting the test conditions, test cases or test scripts. This does not mean that other, more formal testing techniques will not be used. For example, the tester may decide to use boundary value analysis but will think through and test the most important boundary values without necessarily writing them down. Some notes will be written during the exploratory-testing session, so that a report can be produced afterwards. 100. What is failure?

Deviation from expected result to actual result

Prep Up For your Job Interview!!! Go through Software Testing Tutorials to be better prepared. Think you are an expert in Software Testing ? Take our Test to find out

1. What is the MAIN benefit of designing tests early in the life cycle? It helps prevent defects from being introduced into the code. 2. What is risk-based testing? Risk-based testing is the term used for an approach to creating a test strategy that is based on prioritizing tests by risk. The basis of the approach is a detailed risk analysis and prioritizing of risks by risk level. Tests to address each risk are then specified, starting with the highest risk first. 3. A wholesaler sells printer cartridges. The minimum order quantity is 5. There is a 20% discount for orders of 100 or more printer cartridges. You have been asked to prepare test cases using various values for the number of printer cartridges ordered. Which of the following groups contain three test inputs that would be generated using Boundary Value Analysis? 4, 5, 99 4. What is the KEY difference between preventative and reactive approaches to testing? Preventative tests are designed early; reactive tests are designed after the software has been produced. 5. What is the purpose of exit criteria? To define when a test level is complete. 6. What determines the level of risk? The likelihood of an adverse event and the impact of the event. 7. When is used Decision table testing? Decision table testing is used for testing systems for which the specification takes the form of rules or cause-effect combinations. In a decision table the inputs are listed in a column, with the outputs in the same column but below the inputs. The remainder of the table explores combinations of inputs to define the outputs produced.

Home___About Us___Advertising___Partners___Sitemap

Вам также может понравиться