<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6962174262008287976</id><updated>2012-01-31T03:20:20.530-08:00</updated><title type='text'>QA Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://h2kqa.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://h2kqa.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>H2K Infosys</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='9' src='http://3.bp.blogspot.com/_MOwoK0SSY5Q/S61REN0TbiI/AAAAAAAAAAU/a6qPyyGT6NQ/S220/H2KLogoFinal.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6962174262008287976.post-8229567135583275614</id><published>2011-03-17T12:02:00.000-07:00</published><updated>2011-03-17T12:03:04.953-07:00</updated><title type='text'>QA - Quality Assurance and Software Testing</title><content type='html'>What is quality assurance? Definitions and types of sw testing&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What is Quality Assurance ?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Quality Assurance makes sure the project will be completed based on the previously agreed specifications, standards and functionality required without defects and possible problems. It monitors and tries to improve the development process from the beginning of the project to ensure this. It is oriented to "prevention".&lt;br /&gt;&lt;br /&gt;When should QA testing start in a project ? Why?&lt;br /&gt;&lt;br /&gt;QA is involved in the project from the beginning. This helps the teams communicate and understand the problems and concerns, also gives time to set up the testing environment and configuration. On the other hand, actual testing starts after the test plans are written, reviewed and approved based on the design documentation.&lt;br /&gt;&lt;br /&gt;What is Software Testing ?&lt;br /&gt;&lt;br /&gt;Software testing is oriented to "detection". It's examining a system or an application under controlled conditions. It's intentionally making things go wrong when they should not and things happen when they should not.&lt;br /&gt;&lt;br /&gt;What is Software Quality ?&lt;br /&gt;&lt;br /&gt;Quality software is reasonably bug free, delivered on time and within budget, meets requirements and/or expectations, and is maintainable.&lt;br /&gt;&lt;br /&gt;What is Software Verification and Validation ?&lt;br /&gt;&lt;br /&gt;Verification is preventing mechanism to detect possible failures before the testing begin. It involves reviews, meetings, evaluating documents, plans, code, inspections, specifications etc. Validation occurs after verification and it's the actual testing to find defects against the functionality or the specifications.&lt;br /&gt;&lt;br /&gt;What is Test Plan ?&lt;br /&gt;&lt;br /&gt;Test Plan is a document that describes the objectives, scope, approach, and focus of a software testing effort.&lt;br /&gt;&lt;br /&gt;What is Test Case ?&lt;br /&gt;&lt;br /&gt;A test case is a document that describes an input, action, or event and an expected response, to determine if a feature of an application is working correctly. A test case should contain particulars such as test case identifier, test case name, objective, test conditions/setup, input data requirements, steps, and expected results.&lt;br /&gt;&lt;br /&gt;What is Good Software Coding ?&lt;br /&gt;&lt;br /&gt;Good code is code that works according to the requirements, bug free, readable, expandable in the future and easily maintainable.&lt;br /&gt;&lt;br /&gt;What is a Good Design ?&lt;br /&gt;&lt;br /&gt;In good design, the overall structure is clear, understandable, easily modifiable, and maintainable. Works correctly when implemented and functionality can be traced back to customer and end user requirements.&lt;br /&gt;&lt;br /&gt;Who is a Good Test Engineer ?&lt;br /&gt;&lt;br /&gt;Good test engineer has the ability to think the unthinkable, has the test to break attitute, strong desire to quality and attention to detail.&lt;br /&gt;&lt;br /&gt;What is Walkthrough ?&lt;br /&gt;&lt;br /&gt;Walkthrough is quick and informal meeting for evaluation purposes.&lt;br /&gt;&lt;br /&gt;What is Software Life Cycle ?&lt;br /&gt;&lt;br /&gt;The Software Life Cycle begins when an application is first conceived and ends when it is no longer in use. It includes aspects such as initial concept, requirements analysis, functional design, internal design, documentation planning, test planning, coding, document preparation, integration, testing, maintenance, updates, retesting, phase-out, and other aspects.&lt;br /&gt;&lt;br /&gt;What is Software Inspection ?&lt;br /&gt;&lt;br /&gt;The purpose of inspection is trying to find defects and problems mostly in documents such as test plans, specifications, test cases, coding etc. It helps to find the problems and report it but not to fix it. It is one of the most cost effective methods of software quality. Many people can join the inspections but normally one moderator, one reader and one note taker are mandatory.&lt;br /&gt;&lt;br /&gt;What are the benefits of Automated Testing ?&lt;br /&gt;&lt;br /&gt;It's very valuable for long term and on going projects. You can automize some or all of the tests which needs to be run from time to time repeatedly or diffucult to test manually. It saves time and effort, also makes testing possible out of working hours and nights. They can be used by different people and many times in the future. By this way, you also standardize the testing process and you can depend on the results.&lt;br /&gt;&lt;br /&gt;What do you imagine are the main problems of working in a geographically distributed team ?&lt;br /&gt;&lt;br /&gt;The main problem is the communication. To know the team members, sharing as much information as possible whenever you need is very valuable to solve the problems and concerns. On the other hand, increasing the wired communication as much as possible, seting up meetings help to reduce the miscommunication problems.&lt;br /&gt;&lt;br /&gt;What are the common problems in Software Development Process ?&lt;br /&gt;&lt;br /&gt;Poor requirements, unrealistic schedule, inadequate testing, miscommunication and additional requirement changes after development begin.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What are Software Testing Types ?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    * Black box testing : You don't need to know the internal design in detail or have a good knowledge about the code for this test. It's mainly based on functionality and specifications, requirements.&lt;br /&gt;    * White box testing : This test is based on detailed knowledged of the internal design and code. Tests are performed for specific code statements and coding styles.&lt;br /&gt;    * Unit testing : The most micro scale of testing to test specific functions or code modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. Not always easily done unless the application has a well-designed architecture with tight code, may require developing test driver modules or test harnesses.&lt;br /&gt;    * Incremental integration testing : Continuous testing of an application as new functionality is added. Requires that various aspects of an application's functionality be independent enough to work separately before all parts of the program are completed, or that test drivers be developed as needed. Done by programmers or by testers.&lt;br /&gt;    * Integration testing : Testing of combined parts of an application to determine if they function together correctly. It can be any type of application which has several independent sub applications, modules.&lt;br /&gt;    * Functional testing : Black box type testing to test the functional requirements of an application. Typically done by software testers but software programmers should also check if their code works before releasing it.&lt;br /&gt;    * System testing : Black box type testing that is based on overall requirements specifications. Covers all combined parts of a system.&lt;br /&gt;    * End to End testing : It's similar to system testing. Involves testing of a complete application environment similar to real world use. May require interacting with a database, using network communications, or interacting with other hardware, applications, or systems.&lt;br /&gt;    * Sanity testing or smoke testing : An initial testing effort to determine if a new sw version is performing well enough to start for a major software testing. For example, if the new software is crashing frequently or corrupting databases then it is not a good idea to start testing before all these problems are solved first.&lt;br /&gt;    * Regression testing : Re-testing after software is updated to fix some problems. The challenge might be to determine what needs to be tested, and all the interactions of the functions, especially near the end of the sofware cycle. Automated testing can be useful for this type of testing.&lt;br /&gt;    * Acceptance testing : This is the final testing done based on the agrements with the customer.&lt;br /&gt;    * Load / stress / performance testing : Testing an application under heavy loads. Such as simulating a very heavy traffic condition in a voice or data network, or a web site to determine at what point the system start causing problems or fails.&lt;br /&gt;    * Usability testing : Testing to determine how user friendly the application is. It depends on the end user or customer. User interviews, surveys, video recording of user sessions, and other techniques can be used. Programmers and testers are usually not appropriate as usability testers.&lt;br /&gt;    * Install / Uninstall testing : Testing of full, partial, or upgrade install / uninstall processes.&lt;br /&gt;    * Recovery / failover testing : Testing to determine how well a system recovers from crashes, failures, or other major problems.&lt;br /&gt;    * Security testing : Testing to determine how well the system protects itself against unauthorized internal or external access and intentional damage. May require sophisticated testing techniques.&lt;br /&gt;    * Compatability testing : Testing how well software performs in different environments. Particular hardware, software, operating system, network environment etc. Like testing a web site in different browsers and browser versions.&lt;br /&gt;    * Exploratory testing : Often taken to mean a creative, informal software test that is not based on formal test plans or test cases; testers may be learning the software as they test it.&lt;br /&gt;    * Ad-hoc testing : Similar to exploratory testing, but often taken to mean that the testers have significant understanding of the software before testing it.&lt;br /&gt;    * Context driven testing : Testing driven by an understanding of the environment, culture, and intended use of software. For example, the testing approach for life critical medical equipment software would be completely different than that for a low cost computer game.&lt;br /&gt;    * Comparison testing : Comparing software weaknesses and strengths to competing products.&lt;br /&gt;    * Alpha testing : Testing of an application when development is nearing completion. Minor design changes may still be made as a result of such testing. Typically done by end users or others, not by programmers or testers.&lt;br /&gt;    * Beta testing : Testing when development and testing are essentially completed and final bugs and problems need to be found before final release. Typically done by end users or others, not by programmers or testers.&lt;br /&gt;    * Mutation testing : A method for determining if a set of test data or test cases is useful, by deliberately introducing various code changes (defects) and retesting with the original test data/cases to determine if the defects are detected. Proper implementation requires large computational resources.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6962174262008287976-8229567135583275614?l=h2kqa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://h2kqa.blogspot.com/feeds/8229567135583275614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://h2kqa.blogspot.com/2011/03/qa-quality-assurance-and-software.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/8229567135583275614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/8229567135583275614'/><link rel='alternate' type='text/html' href='http://h2kqa.blogspot.com/2011/03/qa-quality-assurance-and-software.html' title='QA - Quality Assurance and Software Testing'/><author><name>H2K Infosys</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='9' src='http://3.bp.blogspot.com/_MOwoK0SSY5Q/S61REN0TbiI/AAAAAAAAAAU/a6qPyyGT6NQ/S220/H2KLogoFinal.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6962174262008287976.post-4176999452186492154</id><published>2011-02-24T11:28:00.000-08:00</published><updated>2011-02-24T11:45:05.072-08:00</updated><title type='text'>Actual interview questions</title><content type='html'>Here are some of the actual interview questions for a QA tester and how the person answered them. I thought this will give us some idea on what kind of questions to expect and how to answer them. &lt;br /&gt;&lt;br /&gt;1. Can you tell me about yourself?&lt;br /&gt; &lt;br /&gt;Answer: In my QA career, I have been working on various system platforms and operating systems like Windows 95, Windows 2000, Windows XP and UNIX. I have tested applications developed in Java, C++, Visual Basic and so on. I have tested Web-based applications as well as client server applications.&lt;br /&gt;As a QA person, I have written Test Plans, Test Cases, attended walkthrough meetings with the Business Analysts, Project Managers, Business Managers and QA Leads. I have attended requirement review meetings and provided feedback to the Business Analysts. I have worked in different databases like Oracle and DB2, wrote SQL queries to retrieve data from the database. As far as different types of testing is concerned, I have performed Smoke Testing, Functional Testing, Backend Testing, Black Box Testing, Integration Testing, Regression Testing and UAT (User Acceptance Testing) Testing. I have participated in Load Testing and Stress Testing.&lt;br /&gt;I have written defects as they are found using ClearQuest and TestDirector. Once the defects were fixed, retested them and if the passed, closed them. If the defects were not fixed, then reopened them. I have also attended the defect assessment meetings as necessary.&lt;br /&gt;In the meantime, a continuous interaction with developers was necessary.&lt;br /&gt;This is pretty much what I have been doing as a QA person.&lt;br /&gt; &lt;br /&gt;2. What did you do in your last project?&lt;br /&gt; &lt;br /&gt;Answer: In my last project, the application was a web-based application developed in Java platform. As a QA Person, I wrote Test Plans from the requirement documents and Use Cases. I performed Smoke Testing, Functional Testing, Backend Testing, Black Box Testing, Integration Testing, Regression Testing and UAT (User Acceptance Testing). I have participated in Load Testing and Stress Testing. I attended several walkthrough meetings for requirement reviews and provided feedback to the Business Analysts. Mostly, I was in the backend testing, which required writing SQL queries directly to the database.&lt;br /&gt;Besides these, I wrote defects using ClearQuest. Once the defects were fixed, retested them and if the passed, closed them. If the defects were not fixed, then reopened them.&lt;br /&gt; &lt;br /&gt;3. Have you written Test Plan? What is a Test Plan? What does it include?&lt;br /&gt;Answer: Yes.&lt;br /&gt; &lt;br /&gt;What is a Test Plan?&lt;br /&gt; &lt;br /&gt;Answer: A Test Plan is a document that describes the scope, approach, resources, and schedule of intended testing activities. It identifies test items, the features to be tested, the testing tasks and who will do each task (roles and responsibilities) and any risks and its solutions.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;What does it include?&lt;br /&gt; &lt;br /&gt;Answer: A Test Plan includes Heading, Revision History, Table of Contents, Introduction, Scope, Approach, Overview, different types of testing that will be carried out, what software and hardware will be required, issues, risks, assumptions and sign off section.&lt;br /&gt; &lt;br /&gt;4. Have you written Test Cases? Answer: Yes.&lt;br /&gt;What is a Test Case? What does it include?&lt;br /&gt; &lt;br /&gt;Answer: A Test Case is a document that describes step-by-step process how to test the application. A Test Case includes Test Case ID, Steps Description, Expected Output, Actual Output, Pass/Fail, and Remarks. (Remember, this is NOT a part of Test Plan. It is a separate document written using Excel. In some companies, they use Rational TestManager or TestDirector. But for companies, who do not have these tools, use Excel sheet. In t he example below, it is in the Excel sheet)&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;Did you use any tools to write Test Cases?&lt;br /&gt; &lt;br /&gt;Answer: Yes. I have used TestDirector (now called QualityCenter) and Rational TestManager to write Test Cases. However, in most of the companies, I used Excel sheet.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;How many Test Cases did you write in your last project?&lt;br /&gt;Answer: I wrote about 1100 Test Cases in my last project. (The reasonable number of Test Cases varies from 500 to thousands. The number 1100 test cases can be completed in 6-month project duration).&lt;br /&gt; &lt;br /&gt;What document did you refer to write the Test Cases?&lt;br /&gt; &lt;br /&gt;Answer: Requirement document. (NOTE: It can also be Use Cases, or Design Document. It depends company to company. In some company, they use Use Cases. In some companies, they use Requirement Documents and in companies, they use Design Document. However, in practical scenario, most of the companies have requirement document at least).&lt;br /&gt; &lt;br /&gt;5. Did you have a situation where you did not have any documents (no requirement document, no Use Cases, or no Design Document) and you had to write the Test Cases? How did you write the Test Cases in this situation?&lt;br /&gt; &lt;br /&gt;Answer: Yes. I have been to that kind of scenarios several times. There were companies where they had no documents at all. In that case, I had to discuss the application scenario and functionalities with the Business Analysts or developer. On the basis of that discussion, I prepared a document in consultation with Business Analysts and Developers and then started writing Plans and Test Cases.&lt;br /&gt; &lt;br /&gt;6. What you worked with Use Cases before?&lt;br /&gt; &lt;br /&gt;Answer: Yes. I have written Test Cases using Use Cases.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;Can you tell me what a Use Case is?&lt;br /&gt; &lt;br /&gt;Answer: A use case is a document that describes the user action and system response for a particular functionality. &lt;br /&gt; &lt;br /&gt;7. What is SDLC (Software Development Life Cycle)?&lt;br /&gt; &lt;br /&gt;Answer: SDLC (Software Development Life Cycle) is the process of developing software through business needs, analysis, design, implementation and maintenance. Software has to go through various phases before it is born which are as follows:&lt;br /&gt;&lt;br /&gt;(i)Generating a Concept – A concept comes from the users of the software. For example, a Pizza Hut may need software to sell pizza. An Indian store may need software to sell its newly arrived movies or grocery. The owner of the company feels that he needs software that would help him in tracking his expenses and income as well as enhance the selling process. This is how the concept is generated. The owner will specifically tell the software company what kind of software he would need. In other words, he will specify his requirements.&lt;br /&gt;(ii) Requirements analysis – After the owner (user) knows his requirements, then it is given to a software team (company) who will analyze the requirement and prepare requirement document that will explain every functionality that are needed by the owner. The requirement document will be the main document for developers, testers and database administrators. In other words, this is the main document that will be referred by everyone. After the requirement documents, other detailed documents many be needed. For example, the architectural design which is a blueprint for the design with the necessary specifications for the hardware, software, people and data resources.&lt;br /&gt;(iii) Development: After the detailed requirement documents (some companies have design documents instead of requirement documents), the developers start writing their code (program) for their modules. On the other hand, the testers in the QA (Quality Assurance) Department start writing Test Plans (one module=1 test plan), test cases and get ready for testing.&lt;br /&gt;(iv) Testing: Once the code (programs) are ready, they are compiled together and to make a build. This build is now tested by the software testers (QA Testers)&lt;br /&gt;(v) Production: After testing, the application (software) goes into production (meaning, it will be handed over to the owner).&lt;br /&gt;(vi) End: And one day, the owner will have say bye to the software either because the business grows and this software does not meet the demand or for some reason, the he does not need the software. That’s the end of it.&lt;br /&gt; &lt;br /&gt;8. What is Business Requirement Document (BRD)?&lt;br /&gt; &lt;br /&gt;Answer: It is a document that describes the details of the application functionalities which is required by the user. This document is written by the Business Analysts.&lt;br /&gt; &lt;br /&gt;9. What is Business Design Document?&lt;br /&gt; &lt;br /&gt;Answer: It is the document that describes the application functionalities of the user in detail. This document has the further details of the Business Requirement Document. This is a very crucial step in Software Development Life Cycle (SDLC). Sometimes the Business Requirement Document and Business Design Document can be lumped together to make only one Business Requirement Document.&lt;br /&gt; &lt;br /&gt;10. What is a Module?&lt;br /&gt; &lt;br /&gt;Answer: A ‘Module’ is a software component that has a specific task. It can be a ‘link’, which can go inside to its component detail. (This is NOT a very common question for the interview. This is just for your knowledge, if you don’t know what a module is)&lt;br /&gt;&lt;br /&gt;http://www.portnov.com/data/Prakash_Nepal_interview_questions.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6962174262008287976-4176999452186492154?l=h2kqa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://h2kqa.blogspot.com/feeds/4176999452186492154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://h2kqa.blogspot.com/2011/02/actual-interview-questions.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/4176999452186492154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/4176999452186492154'/><link rel='alternate' type='text/html' href='http://h2kqa.blogspot.com/2011/02/actual-interview-questions.html' title='Actual interview questions'/><author><name>H2K Infosys</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='9' src='http://3.bp.blogspot.com/_MOwoK0SSY5Q/S61REN0TbiI/AAAAAAAAAAU/a6qPyyGT6NQ/S220/H2KLogoFinal.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6962174262008287976.post-8182563839161796610</id><published>2011-02-22T09:33:00.000-08:00</published><updated>2011-02-22T09:36:13.913-08:00</updated><title type='text'>Web Service Interview Questions and Answers</title><content type='html'>&lt;p class="answers"&gt;&lt;b&gt; &lt;span class="for_questions_blue"&gt;What is a Web service?&lt;/span&gt;&lt;br /&gt;&lt;/b&gt;Many people and companies have debated the exact  definition of Web services. At a minimum, however, a Web  service is any piece of software that makes itself  available over the Internet and uses a standardized XML  messaging system.&lt;br /&gt;XML is used to encode all communications to a Web  service. For example, a client invokes a Web service by  sending an XML message, then waits for a corresponding  XML response. Because all communication is in XML, Web  services are not tied to any one operating system or  programming language--Java can talk with Perl; Windows  applications can talk with Unix applications.&lt;br /&gt;Beyond this basic definition, a Web service may also  have two additional (and desirable) properties:&lt;br /&gt;First, a Web service can have a public interface,  defined in a common XML grammar. The interface describes  all the methods available to clients and specifies the  signature for each method. Currently, interface  definition is accomplished via the Web Service  Description Language (WSDL). (See FAQ number 7.)&lt;br /&gt;Second, if you create a Web service, there should be  some relatively simple mechanism for you to publish this  fact. Likewise, there should be some simple mechanism  for interested parties to locate the service and locate  its public interface. The most prominent directory of  Web services is currently available via UDDI, or  Universal Description, Discovery, and Integration. (See  FAQ number 8.)&lt;br /&gt;Web services currently run a wide gamut from news  syndication and stock-market data to weather reports and  package-tracking systems. For a quick look at the range  of Web services currently available, check out the  XMethods directory of Web services. &lt;/p&gt; &lt;p class="answers"&gt;&lt;b class="for_questions_blue"&gt;What is new about Web services?   &lt;/b&gt;&lt;br /&gt;People have been using Remote Procedure Calls (RPC) for  some time now, and they long ago discovered how to send  such calls over HTTP.&lt;br /&gt;So, what is really new about Web services? The answer is  XML.&lt;br /&gt;XML lies at the core of Web services, and provides a  common language for describing Remote Procedure Calls,  Web services, and Web service directories.&lt;br /&gt;Prior to XML, one could share data among different  applications, but XML makes this so much easier to do.  In the same vein, one can share services and code  without Web services, but XML makes it easier to do  these as well.&lt;br /&gt;By standardizing on XML, different applications can more  easily talk to one another, and this makes software a  whole lot more interesting. &lt;/p&gt; &lt;p class="answers"&gt;&lt;b class="for_questions_blue"&gt;I keep reading about Web services, but I have never  actually seen one. Can you show me a real Web service in  action?  &lt;/b&gt;&lt;br /&gt;If you want a more intuitive feel for Web services, try  out the IBM Web Services Browser, available on the IBM  Alphaworks site. The browser provides a series of Web  services demonstrations. Behind the scenes, it ties  together SOAP, WSDL, and UDDI to provide a simple  plug-and-play interface for finding and invoking Web  services. For example, you can find a stock-quote  service, a traffic-report service, and a weather  service. Each service is independent, and you can stack  services like building blocks. You can, therefore,  create a single page that displays multiple  services--where the end result looks like a  stripped-down version of my.yahoo or my.excite. &lt;/p&gt; &lt;p class="answers"&gt;&lt;b class="for_questions_blue"&gt; What is the Web service protocol stack?&lt;/b&gt;&lt;/p&gt;    &lt;p class="answers"&gt;The Web service protocol stack is an evolving set of  protocols used to define, discover, and implement Web  services. The core protocol stack consists of four  layers:&lt;br /&gt;Service Transport: This layer is responsible for  transporting messages between applications. Currently,  this includes HTTP, SMTP, FTP, and newer protocols, such  as Blocks Extensible Exchange Protocol (BEEP).&lt;br /&gt;XML Messaging: This layer is responsible for encoding  messages in a common XML format so that messages can be  understood at either end. Currently, this includes XML-RPC  and SOAP.&lt;br /&gt;Service Description: This layer is responsible for  describing the public interface to a specific Web  service. Currently, service description is handled via  the WSDL.&lt;br /&gt;Service Discovery: This layer is responsible for  centralizing services into a common registry, and  providing easy publish/find functionality. Currently,  service discovery is handled via the UDDI.&lt;br /&gt;Beyond the essentials of XML-RPC, SOAP, WSDL, and UDDI,  the Web service protocol stack includes a whole zoo of  newer, evolving protocols. These include WSFL (Web  Services Flow Language), SOAP-DSIG (SOAP Security  Extensions: Digital Signature), and USML (UDDI Search  Markup Language). For an overview of these protocols,  check out Pavel Kulchenko's article, Web Services  Acronyms, Demystified, on XML.com.&lt;br /&gt;Fortunately, you do not need to understand the full  protocol stack to get started with Web services.  Assuming you already know the basics of HTTP, it is best  to start at the XML Messaging layer and work your way  up. &lt;/p&gt; &lt;p class="answers"&gt;&lt;b class="for_questions_blue"&gt;What is XML-RPC?  &lt;/b&gt;&lt;br /&gt;XML-RPC is a protocol that uses XML messages to perform  Remote Procedure Calls. Requests are encoded in XML and  sent via HTTP POST; XML responses are embedded in the  body of the HTTP response.&lt;br /&gt;More succinctly, XML-RPC = HTTP + XML + Remote Procedure  Calls.&lt;br /&gt;Because XML-RPC is platform independent, diverse  applications can communicate with one another. For  example, a Java client can speak XML-RPC to a Perl  server.&lt;br /&gt;To get a quick sense of XML-RPC, here is a sample XML-RPC  request to a weather service (with the HTTP Headers  omitted):&lt;br /&gt;&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;&lt;br /&gt;&lt;methodcall&gt;&lt;br /&gt;&lt;methodname&gt;weather.getWeather&lt;/methodname&gt;&lt;br /&gt;&lt;params&gt;&lt;br /&gt;&lt;param&gt;&lt;value&gt;10016&lt;/value&gt;&lt;/param&gt;&lt;br /&gt;&lt;/params&gt;&lt;br /&gt;&lt;/methodcall&gt;&lt;br /&gt;The request consists of a simple element, which  specifies the method name (getWeather) and any method  parameters (zip code).&lt;br /&gt;&lt;br /&gt;Here is a sample XML-RPC response from the weather  service:&lt;br /&gt;&lt;br /&gt;&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;&lt;br /&gt;&lt;methodresponse&gt;&lt;br /&gt;&lt;params&gt;&lt;br /&gt;&lt;param&gt;&lt;br /&gt;&lt;value&gt;&lt;int&gt;65&lt;/int&gt;&lt;/value&gt;&lt;br /&gt;&lt;/param&gt;&lt;br /&gt;&lt;/params&gt;&lt;br /&gt;&lt;/methodresponse&gt;&lt;br /&gt;The response consists of a single element, which  specifies the return value (the current temperature). In  this case, the return value is specified as an integer.&lt;br /&gt;In many ways, XML-RPC is much simpler than SOAP, and  therefore represents the easiest way to get started with  Web services.&lt;br /&gt;The official XML-RPC specification is available at XML-RPC.com.  Dozens of XML-RPC implementations are available in Perl,  Python, Java, and Ruby. See the XML-RPC home page for a  complete list of implementations.&lt;/p&gt;&lt;p class="answers"&gt; &lt;b&gt;&lt;span class="for_questions_blue"&gt;What is SOAP?&lt;/span&gt;&lt;span class="answers"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;SOAP is an XML-based protocol for exchanging information  between computers. Although SOAP can be used in a  variety of messaging systems and can be delivered via a  variety of transport protocols, the main focus of SOAP  is Remote Procedure Calls (RPC) transported via HTTP.  Like XML-RPC, SOAP is platform independent, and  therefore enables diverse applications to communicate  with one another.&lt;br /&gt;&lt;br /&gt;To get a quick sense of SOAP, here is a sample SOAP  request to a weather service (with the HTTP Headers  omitted):&lt;br /&gt;&lt;br /&gt;&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;br /&gt;&lt;SOAP-ENV:Envelope&lt;br /&gt;xmlns:SOAP-ENV="http://www.w3.org/2001/09/soap-envelope"&lt;br /&gt;xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;br /&gt;&lt;soap-env:body&gt;&lt;br /&gt;&lt;ns1:getWeather&lt;br /&gt;xmlns:ns1="urn:examples:weatherservice"&lt;br /&gt;SOAP-ENV:encodingStyle="  http://www.w3.org/2001/09/soap-encoding&lt;br /&gt;&lt;zipcode type="xsd:string"&gt;10016&lt;/zipcode&gt;&lt;br /&gt;&lt;/ns1:getWeather&gt;&lt;br /&gt;&lt;/SOAP-ENV:Body&gt;&lt;br /&gt;&lt;/SOAP-ENV:Envelope&gt;&lt;br /&gt;As you can see, the request is slightly more complicated  than XML-RPC and makes use of both XML namespaces and  XML Schemas. Much like XML-RPC, however, the body of the  request specifies both a method name (getWeather), and a  list of parameters (zipcode).&lt;br /&gt;&lt;br /&gt;Here is a sample SOAP response from the weather service:&lt;br /&gt;&lt;br /&gt;&lt;?xml version='1.0' encoding='UTF-8'?&gt;&lt;br /&gt;&lt;SOAP-ENV:Envelope&lt;br /&gt;xmlns:SOAP-ENV="http://www.w3.org/2001/09/soap-envelope"&lt;br /&gt;xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;br /&gt;&lt;soap-env:body&gt;&lt;br /&gt;&lt;ns1:getWeatherResponse&lt;br /&gt;xmlns:ns1="urn:examples:weatherservice"&lt;br /&gt;SOAP-ENV:encodingStyle="http://www.w3.org/2001/09/soap-encoding"&gt;&lt;br /&gt;&lt;return type="xsd:int"&gt;65&lt;/return&gt;&lt;br /&gt;&lt;/ns1:getWeatherResponse&gt;&lt;br /&gt;&lt;/SOAP-ENV:Body&gt;&lt;br /&gt;&lt;/SOAP-ENV:Envelope&gt;&lt;br /&gt;&lt;br /&gt;The response indicates a single integer return value  (the current temperature).&lt;br /&gt;The World Wide Web Consortium (W3C) is in the process of  creating a SOAP standard. The latest working draft is  designated as SOAP 1.2, and the specification is now  broken into two parts. Part 1 describes the SOAP  messaging framework and envelope specification. Part 2  describes the SOAP encoding rules, the SOAP-RPC  convention, and HTTP binding details.&lt;/p&gt; &lt;p class="answers"&gt;&lt;b class="for_questions_blue"&gt;What is WSDL?&lt;/b&gt;&lt;/p&gt;    &lt;p class="answers"&gt;The Web Services Description Language (WSDL) currently  represents the service description layer within the Web  service protocol stack.&lt;br /&gt;In a nutshell, WSDL is an XML grammar for specifying a  public interface for a Web service. This public  interface can include the following:&lt;br /&gt;&lt;br /&gt;Information on all publicly available functions.&lt;br /&gt;Data type information for all XML messages.&lt;br /&gt;Binding information about the specific transport  protocol to be used.&lt;br /&gt;Address information for locating the specified service.&lt;br /&gt;&lt;br /&gt;WSDL is not necessarily tied to a specific XML messaging  system, but it does include built-in extensions for  describing SOAP services.&lt;br /&gt;&lt;br /&gt;Below is a sample WSDL file. This file describes the  public interface for the weather service used in the  SOAP example above. Obviously, there are many details to  understanding the example. For now, just consider two  points.&lt;br /&gt;First, the &lt;message&gt; elements specify the individual XML  messages that are transferred between computers. In this  case, we have a getWeatherRequest and a  getWeatherResponse. Second, the element specifies that  the service is available via SOAP and is available at a  specific URL.&lt;br /&gt;&lt;br /&gt;&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;br /&gt;&lt;definitions name="WeatherService"&lt;br /&gt;targetNamespace="http://www.ecerami.com/wsdl/WeatherService.wsdl"&lt;br /&gt;xmlns="http://schemas.xmlsoap.org/wsdl/"&lt;br /&gt;xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"&lt;br /&gt;xmlns:tns="http://www.ecerami.com/wsdl/WeatherService.wsdl"&lt;br /&gt;xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;br /&gt;&lt;message name="getWeatherRequest"&gt;&lt;br /&gt;&lt;part name="zipcode" type="xsd:string"&gt;&lt;br /&gt;&lt;/message&gt;&lt;br /&gt;&lt;message name="getWeatherResponse"&gt;&lt;br /&gt;&lt;part name="temperature" type="xsd:int"&gt;&lt;br /&gt;&lt;/message&gt;&lt;br /&gt;&lt;br /&gt;&lt;porttype name="Weather_PortType"&gt;&lt;br /&gt;&lt;operation name="getWeather"&gt;&lt;br /&gt;&lt;input message="tns:getWeatherRequest"&gt;&lt;br /&gt;&lt;output message="tns:getWeatherResponse"&gt;&lt;br /&gt;&lt;/operation&gt;&lt;br /&gt;&lt;/porttype&gt;&lt;br /&gt;&lt;br /&gt;&lt;binding name="Weather_Binding" type="tns:Weather_PortType"&gt;&lt;br /&gt;&lt;soap:binding style="rpc"&lt;br /&gt;transport="http://schemas.xmlsoap.org/soap/http"/&gt;&lt;br /&gt;&lt;operation name="getWeather"&gt;&lt;br /&gt;&lt;soap:operation soapaction=""&gt;&lt;br /&gt;&lt;input&gt;&lt;br /&gt;&lt;soap:body&lt;br /&gt;encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"&lt;br /&gt;namespace="urn:examples:weatherservice"&lt;br /&gt;use="encoded"/&gt;&lt;br /&gt;&lt;/input&gt;&lt;br /&gt;&lt;output&gt;&lt;br /&gt;&lt;soap:body&lt;br /&gt;encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"&lt;br /&gt;namespace="urn:examples:weatherservice"&lt;br /&gt;use="encoded"/&gt;&lt;br /&gt;&lt;/output&gt;&lt;br /&gt;&lt;/operation&gt;&lt;br /&gt;&lt;/binding&gt;&lt;br /&gt;&lt;br /&gt;&lt;service name="Weather_Service"&gt;&lt;br /&gt;&lt;documentation&gt;WSDL File for Weather  Service&lt;/documentation&gt;&lt;br /&gt;&lt;port binding="tns:Weather_Binding" name="Weather_Port"&gt;&lt;br /&gt;&lt;soap:address&lt;br /&gt;location="http://localhost:8080/soap/servlet/rpcrouter"/&gt;&lt;br /&gt;&lt;/port&gt;&lt;br /&gt;&lt;/service&gt;&lt;br /&gt;&lt;/definitions&gt;&lt;br /&gt;Using WSDL, a client can locate a Web service, and  invoke any of the publicly available functions. With  WSDL-aware tools, this process can be entirely  automated, enabling applications to easily integrate new  services with little or no manual code. For example,  check out the GLUE platform from the Mind Electric.&lt;br /&gt;WSDL has been submitted to the W3C, but it currently has  no official status within the W3C. See this W3C page for  the latest draft.&lt;br /&gt;&lt;/p&gt;&lt;p class="answers"&gt; &lt;b&gt;&lt;span class="for_questions_blue"&gt;What is UDDI?&lt;/span&gt;&lt;span class="answers"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;UDDI (Universal Description, Discovery, and Integration)  currently represents the discovery layer within the Web  services protocol stack.&lt;br /&gt;UDDI was originally created by Microsoft, IBM, and Ariba,  and represents a technical specification for publishing  and finding businesses and Web services.&lt;br /&gt;At its core, UDDI consists of two parts.&lt;br /&gt;First, UDDI is a technical specification for building a  distributed directory of businesses and Web services.  Data is stored within a specific XML format, and the  UDDI specification includes API details for searching  existing data and publishing new data.&lt;br /&gt;Second, the UDDI Business Registry is a fully  operational implementation of the UDDI specification.  Launched in May 2001 by Microsoft and IBM, the UDDI  registry now enables anyone to search existing UDDI  data. It also enables any company to register themselves  and their services.&lt;br /&gt;The data captured within UDDI is divided into three main  categories:&lt;br /&gt;White Pages: This includes general information about a  specific company. For example, business name, business  description, and address.&lt;br /&gt;Yellow Pages: This includes general classification data  for either the company or the service offered. For  example, this data may include industry, product, or  geographic codes based on standard taxonomies.&lt;br /&gt;Green Pages: This includes technical information about a  Web service. Generally, this includes a pointer to an  external specification, and an address for invoking the  Web service.&lt;br /&gt;You can view the Microsoft UDDI site, or the IBM UDDI  site. The complete UDDI specification is available at  uddi.org.&lt;br /&gt;Beta versions of UDDI Version 2 are available at:&lt;br /&gt;Hewlett Packard&lt;br /&gt;IBM&lt;br /&gt;Microsoft&lt;br /&gt;SAP&lt;/p&gt; &lt;p class="answers"&gt;&lt;b class="for_questions_blue"&gt;How do I get started with Web Services? &lt;/b&gt;&lt;br /&gt;The easiest way to get started with Web services is to  learn XML-RPC. Check out the XML-RPC specification or  read my book, Web Services Essentials. O'Reilly has also  recently released a book on Programming Web Services  with XML-RPC by Simon St.Laurent, Joe Johnston, and Edd  Dumbill.&lt;br /&gt;Once you have learned the basics of XML-RPC, move onto  SOAP, WSDL, and UDDI. These topics are also covered in  Web Services Essentials. For a comprehensive treatment  of SOAP, check out O'Reilly's Programming Web Services  with SOAP, by Doug Tidwell, James Snell, and Pavel  Kulchenko. &lt;/p&gt; &lt;p class="answers"&gt;&lt;span class="for_questions_blue"&gt;&lt;b&gt;Does the W3C support any Web service standards? &lt;/b&gt; &lt;/span&gt;&lt;br /&gt;The World Wide Web Consortium (W3C) is actively pursuing  standardization of Web service protocols. In September  2000, the W3C established an XML Protocol Activity. The  goal of the group is to establish a formal standard for  SOAP. A draft version of SOAP 1.2 is currently under  review, and progressing through the official W3C  recommendation process.&lt;br /&gt;On January 25, 2002, the W3C also announced the  formation of a Web Service Activity. This new activity  will include the current SOAP work as well as two new  groups. The first new group is the Web Services  Description Working Group, which will take up work on  WSDL. The second new group is the Web Services  Architecture Working Group, which will attempt to create  a cohesive framework for Web service protocols.&lt;/p&gt; &lt;p class="answers"&gt;&lt;span class="answers"&gt;&lt;span style="font-weight: 400;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6962174262008287976-8182563839161796610?l=h2kqa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://h2kqa.blogspot.com/feeds/8182563839161796610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://h2kqa.blogspot.com/2011/02/web-service-interview-questions-and.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/8182563839161796610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/8182563839161796610'/><link rel='alternate' type='text/html' href='http://h2kqa.blogspot.com/2011/02/web-service-interview-questions-and.html' title='Web Service Interview Questions and Answers'/><author><name>H2K Infosys</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='9' src='http://3.bp.blogspot.com/_MOwoK0SSY5Q/S61REN0TbiI/AAAAAAAAAAU/a6qPyyGT6NQ/S220/H2KLogoFinal.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6962174262008287976.post-4819645051326854986</id><published>2011-02-22T09:28:00.000-08:00</published><updated>2011-02-22T09:30:31.221-08:00</updated><title type='text'>Performance/ LoadRunner Interview Questions</title><content type='html'>&lt;div class="entry-content"&gt;                       &lt;ol&gt;&lt;li&gt;&lt;b&gt;What is load testing? - &lt;/b&gt;Load testing is to test that if the  application works fine with the loads that result from large number of  simultaneous users, transactions and to determine weather it can handle  peak usage periods. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is Performance testing?&lt;/b&gt; - Timing for both read and  update transactions should be gathered to determine whether system  functions are being performed in an acceptable timeframe. This should be  done standalone and then in a multi user environment to determine the  effect of multiple transactions on the timing of a single transaction. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Did u use LoadRunner? What version?&lt;/b&gt; - Yes. Version 7.2. &lt;span id="more-199"&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Explain the Load testing process? &lt;/b&gt;-&lt;br /&gt;&lt;b&gt;Step 1: Planning the test. &lt;/b&gt;Here, we develop a clearly defined test plan to ensure the test scenarios we develop will accomplish load-testing objectives. &lt;b&gt;Step 2: Creating Vusers. &lt;/b&gt;Here,  we create Vuser scripts that contain tasks performed by each Vuser,  tasks performed by Vusers as a whole, and tasks measured as  transactions. &lt;b&gt;Step 3: Creating the scenario. &lt;/b&gt;A scenario describes  the events that occur during a testing session. It includes a list of  machines, scripts, and Vusers that run during the scenario. We create  scenarios using LoadRunner Controller. We can create manual scenarios as  well as goal-oriented scenarios. In manual scenarios, we define the  number of Vusers, the load generator machines, and percentage of Vusers  to be assigned to each script. For web tests, we may create a  goal-oriented scenario where we define the goal that our test has to  achieve. LoadRunner automatically builds a scenario for us. &lt;b&gt;Step 4: Running the scenario.&lt;br /&gt;&lt;/b&gt;We emulate load on the server by instructing multiple Vusers to  perform tasks simultaneously. Before the testing, we set the scenario  configuration and scheduling. We can run the entire scenario, Vuser  groups, or individual Vusers. &lt;b&gt;Step 5: Monitoring the scenario.&lt;br /&gt;&lt;/b&gt;We monitor scenario execution using the LoadRunner online runtime,  transaction, system resource, Web resource, Web server resource, Web  application server resource, database server resource, network delay,  streaming media resource, firewall server resource, ERP server resource,  and Java performance monitors. &lt;b&gt;Step 6: Analyzing test results. &lt;/b&gt;During  scenario execution, LoadRunner records the performance of the  application under different loads. We use LoadRunnerÃ¢â‚¬â„¢s graphs and  reports to analyze the applicationÃ¢â‚¬â„¢s performance. &lt;/li&gt;&lt;li&gt;&lt;b&gt;When do you do load and performance Testing?&lt;/b&gt; - We  perform load testing once we are done with interface (GUI) testing.  Modern system architectures are large and complex. Whereas single user  testing primarily on functionality and user interface of a system  component, application testing focuses on performance and reliability of  an entire system. For example, a typical application-testing scenario  might depict 1000 users logging in simultaneously to a system. This  gives rise to issues such as what is the response time of the system,  does it crash, will it go with different software applications and  platforms, can it hold so many hundreds and thousands of users, etc.  This is when we set do load and performance testing. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What are the components of LoadRunner?&lt;/b&gt; - The components  of LoadRunner are The Virtual User Generator, Controller, and the Agent  process, LoadRunner Analysis and Monitoring, LoadRunner Books Online. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What Component of LoadRunner would you use to record a Script?&lt;/b&gt;  - The Virtual User Generator (VuGen) component is used to record a  script. It enables you to develop Vuser scripts for a variety of  application types and communication protocols. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What Component of LoadRunner would you use to play Back the script in multi user mode?&lt;/b&gt;  - The Controller component is used to playback the script in multi-user  mode. This is done during a scenario run where a vuser script is  executed by a number of vusers in a group. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is a rendezvous point?&lt;/b&gt; - You insert rendezvous points&lt;i&gt; &lt;/i&gt;into Vuser scripts to emulate heavy user load on the server. Rendezvous points&lt;i&gt; &lt;/i&gt;instruct  Vusers to wait during test execution for multiple Vusers to arrive at a  certain point, in order that they may simultaneously perform a task.  For example, to emulate peak load on the bank server, you can insert a  rendezvous point instructing 100 Vusers to deposit cash into their  accounts at the same time. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is a scenario?&lt;/b&gt; - A scenario defines the events that  occur during each testing session. For example, a scenario defines and  controls the number of users to emulate, the actions to be performed,  and the machines on which the virtual users run their emulations. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Explain the recording mode for web Vuser script?&lt;/b&gt; - We  use VuGen to develop a Vuser script by recording a user performing  typical business processes on a client application. VuGen creates the  script by recording the activity between the client and the server. For  example, in web based applications, VuGen monitors the client end of the  database and traces all the requests sent to, and received from, the  database server. We use VuGen to: Monitor the communication between the  application and the server; Generate the required function calls; and  Insert the generated function calls into a Vuser script. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Why do you create parameters?&lt;/b&gt; - Parameters are like  script variables. They are used to vary input to the server and to  emulate real users. Different sets of data are sent to the server each  time the script is run. Better simulate the usage model for more  accurate testing from the Controller; one script can emulate many  different users on the system. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is correlation? Explain the difference between automatic correlation and manual correlation?&lt;/b&gt;  - Correlation is used to obtain data which are unique for each run of  the script and which are generated by nested queries. Correlation  provides the value to avoid errors arising out of duplicate values and  also optimizing the code (to avoid nested queries). Automatic  correlation is where we set some rules for correlation. It can be  application server specific. Here values are replaced by data which are  created by these rules. In manual correlation, the value we want to  correlate is scanned and create correlation is used to correlate. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How do you find out where correlation is required? Give few examples from your projects?&lt;/b&gt; - Two ways:&lt;b&gt; &lt;/b&gt;First we can scan for correlations, and see the list of values which can be&lt;b&gt; &lt;/b&gt;correlated.  From this we can pick a value to be correlated. Secondly, we can record  two scripts and compare them. We can look up the difference file to see  for the values which needed to be correlated.  In my project, there was  a unique id developed for each customer, it was nothing but Insurance  Number, it was generated automatically and it was sequential and this  value was unique. I had to correlate this value, in order to avoid  errors while running my script. I did using scan for correlation. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Where do you set automatic correlation options?&lt;/b&gt; - Automatic correlation from &lt;u&gt;web point of view&lt;/u&gt;  can be set in recording options and correlation tab. Here we can enable  correlation for the entire script and choose either issue online  messages or offline actions, where we can define rules for that  correlation. Automatic correlation for database can be done using show  output window and scan for correlation and picking the correlate query  tab and choose which query value we want to correlate. If we know the  specific value to be correlated, we just do create correlation for the  value and specify how the value to be created. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is a function to capture dynamic values in the web Vuser script?&lt;/b&gt; - Web_reg_save_param function saves dynamic data information to a parameter. &lt;/li&gt;&lt;li&gt;&lt;b&gt;When do you disable log in Virtual User Generator, When do you choose standard and extended logs?&lt;/b&gt;  - Once we debug our script and verify that it is functional, we can  enable logging for errors only. When we add a script to a scenario,  logging is automatically disabled.&lt;b&gt; &lt;/b&gt;Standard Log Option:&lt;b&gt; &lt;/b&gt;When you select&lt;br /&gt;&lt;strong style="font-weight: 400;"&gt;Standard&lt;/strong&gt; log, it creates a  standard log of functions and messages sent during script execution to  use for debugging. Disable this option for large load testing scenarios.  When you copy a script to a scenario, logging is automatically disabled&lt;b&gt; &lt;/b&gt;Extended Log Option&lt;b&gt;: &lt;/b&gt;Select&lt;br /&gt;&lt;strong style="font-weight: 400;"&gt;extended&lt;/strong&gt; log to create an  extended log, including warnings and other messages. Disable this option  for large load testing scenarios. When you copy a script to a scenario,  logging is automatically disabled. We can specify which additional  information should be added to the extended log using the Extended log  options. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How do you debug a LoadRunner script?&lt;/b&gt; - VuGen contains  two options to help debug Vuser scripts-the Run Step by Step command and  breakpoints. The Debug settings in the Options dialog box allow us to  determine the extent of the trace to be performed during scenario  execution. The debug information is written to the Output window. We can  manually set the message class within your script using the  lr_set_debug_message function. This is useful if we want to receive  debug information about a small section of the script only. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How do you write user defined functions in LR? Give me few functions you wrote in your previous project?&lt;/b&gt; - Before we create the User Defined functions we need to create the external&lt;br /&gt; library (DLL) with the function. We add this library to VuGen bin  directory. Once the library is added then we assign user defined  function as a parameter. The function should have the following format:  __declspec (dllexport) char* &lt;function&gt;(char*, char*)Examples  of user defined functions are as follows:GetVersion, GetCurrentTime,  GetPltform are some of the user defined functions used in my earlier  project. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What are the changes you can make in run-time settings?&lt;/b&gt; - The Run Time Settings that we make are: a)&lt;b&gt; Pacing&lt;/b&gt; - It has iteration count. b) &lt;b&gt;Log &lt;/b&gt;- Under this we have Disable Logging Standard Log and c) &lt;b&gt;Extended&lt;/b&gt; &lt;b&gt;Think Time&lt;/b&gt; - In think time we have two options like Ignore think time and Replay think time. d) &lt;b&gt;General&lt;/b&gt; - Under general tab we can set the vusers as process or as multithreading and whether each step as a transaction. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Where do you set Iteration for Vuser testing?&lt;/b&gt; - We set  Iterations in the Run Time Settings of the VuGen. The navigation for  this is Run time settings, Pacing tab, set number of iterations. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How do you perform functional testing under load?&lt;/b&gt; -  Functionality under load can be tested by running several Vusers  concurrently. By increasing the amount of Vusers, we can determine how  much load the server can sustain. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is Ramp up? How do you set this?&lt;/b&gt; - This option is  used to gradually increase the amount of Vusers/load on the server. An  initial value is set and a value to wait between intervals can be&lt;br /&gt; specified. To set Ramp Up, go to ‘Scenario Scheduling Options’ &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is the advantage of running the Vuser as thread?&lt;/b&gt; - VuGen provides the facility to use multithreading. This enables more Vusers to be run per&lt;br /&gt; generator. If the Vuser is run as a process, the same driver program is  loaded into memory for each Vuser, thus taking up a large amount of  memory. This limits the number of Vusers that can be run on a single&lt;br /&gt; generator. If the Vuser is run as a thread, only one instance of the  driver program is loaded into memory for the given number of&lt;br /&gt; Vusers (say 100). Each thread shares the memory of the parent driver  program, thus enabling more Vusers to be run per generator. &lt;/li&gt;&lt;li&gt;&lt;b&gt;If you want to stop the execution of your script on error, how do you do that?&lt;/b&gt;  - The lr_abort function aborts the execution of a Vuser script. It  instructs the Vuser to stop executing the Actions section, execute the  vuser_end section and end the execution. This function is useful when  you need to manually abort a script execution as a result of a specific  error condition. When you end a script using this function, the Vuser is  assigned the status "Stopped". For this to take effect, we have to  first uncheck the Ã¢â‚¬Å“Continue on errorÃ¢â‚¬Â option in Run-Time  Settings.   &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is the relation between Response Time and Throughput?&lt;/b&gt;  - The Throughput graph shows the amount of data in bytes that the  Vusers received from the server in a second. When we compare this with  the transaction response time, we will notice that as throughput  decreased, the response time also decreased. Similarly, the peak  throughput and highest response time would occur approximately at the  same time. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Explain the Configuration of your systems?&lt;/b&gt; - The  configuration of our systems refers to that of the client machines on  which we run the Vusers. The configuration of any client machine  includes its hardware settings, memory, operating system, software  applications, development tools, etc. This system component  configuration should match with the overall system configuration that  would include the network infrastructure, the web server, the database  server, and any other components that go with this larger system so as  to achieve the load testing objectives. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How do you identify the performance bottlenecks?&lt;/b&gt; -  Performance Bottlenecks can be detected by using monitors. These  monitors might be application server monitors, web server monitors,  database server monitors and network monitors. They help in finding out  the troubled area in our scenario which causes increased response time.  The measurements made are usually performance response time, throughput,  hits/sec, network delay graphs, etc. &lt;/li&gt;&lt;li&gt;&lt;b&gt;If web server, database and Network are all fine where could be the problem?&lt;/b&gt; - The problem could be in the system itself or in the application server or in the code written for the application. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How did you find web server related issues?&lt;/b&gt; - Using Web  resource monitors we can find the performance of web servers. Using  these monitors we can analyze throughput on the web server, number of  hits per second that&lt;br /&gt; occurred during scenario, the number of http responses per second, the number of downloaded pages per second. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How did you find database related issues?&lt;/b&gt; - By running  Ã¢â‚¬Å“DatabaseÃ¢â‚¬Â monitor and help of Ã¢â‚¬Å“Data Resource  GraphÃ¢â‚¬Â we can find database related issues. E.g. You can specify  the resource you want to measure on before running the controller and  than you can see database related issues &lt;/li&gt;&lt;li&gt;&lt;b&gt;Explain all the web recording options?&lt;/b&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is the difference between Overlay graph and Correlate graph?&lt;/b&gt; - &lt;b&gt;Overlay Graph&lt;/b&gt;:  It overlay the content of two graphs that shares a common x-axis. Left  Y-axis on the merged graph showÃ¢â‚¬â„¢s the current graphÃ¢â‚¬â„¢s  value &amp;amp; Right Y-axis show the value of Y-axis of the graph that was  merged. &lt;b&gt;Correlate Graph&lt;u&gt;:&lt;/u&gt;&lt;/b&gt; Plot the Y-axis of two graphs  against each other. The active graphÃ¢â‚¬â„¢s Y-axis becomes X-axis of  merged graph. Y-axis of the graph that was merged becomes merged  graphÃ¢â‚¬â„¢s Y-axis. &lt;/li&gt;&lt;li&gt;&lt;b&gt;How did you plan the Load? What are the Criteria?&lt;/b&gt; - Load  test is planned to decide the number of users, what kind of machines we  are going to use and from where they are run. It is based on 2  important documents, Task Distribution Diagram and Transaction profile.  Task Distribution Diagram gives us the information on number of users  for a particular transaction and the time of the load. The peak usage  and off-usage are decided from this Diagram. Transaction profile gives  us the information about the transactions name and their priority levels  with regard to the scenario we are deciding. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What does vuser_init action contain?&lt;/b&gt; - Vuser_init action contains procedures to login to a server. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What does vuser_end action contain?&lt;/b&gt; - Vuser_end section contains log off procedures.   &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is think time? How do you change the threshold?&lt;/b&gt; -  &lt;em&gt;&lt;span style="font-style: normal;"&gt;&lt;b&gt; &lt;/b&gt;Think time&lt;/span&gt;&lt;/em&gt;  is the time that a real user waits between actions. Example: When a  user receives data from a server, the user may wait several seconds to  review the data before responding. This delay is known as the&lt;em&gt; &lt;span style="font-style: normal;"&gt;think time&lt;/span&gt;&lt;/em&gt;. Changing  the Threshold: Threshold level is the level below which the recorded  think time will be ignored. The default value is five (5) seconds. We  can change the think time threshold in the Recording options of the  Vugen. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is the difference between standard log and extended log?&lt;/b&gt;  - The standard log sends a subset of functions and messages sent during  script execution to a log. The subset depends on the Vuser  type Extended log sends a detailed script execution messages to the  output log. This is mainly used during debugging when we want  information about: Parameter substitution. Data returned by the server.  Advanced trace. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Explain the following functions:&lt;/b&gt; - &lt;b&gt;lr_debug_message&lt;/b&gt; - The lr_debug_message function sends a debug message to the output log when the specified message class is set. &lt;b&gt;lr_output_message&lt;/b&gt; - The lr_output_message function sends notifications to the Controller Output window and the Vuser log file. &lt;b&gt;lr_error_message&lt;/b&gt; - The lr_error_message function sends an error message to the LoadRunner Output window. &lt;b&gt;lrd_stmt&lt;/b&gt;  - The lrd_stmt function associates a character string (usually a SQL  statement) with a cursor. This function sets a SQL statement to be  processed. &lt;b&gt;lrd_fetch&lt;/b&gt; - The lrd_fetch function fetches the next row from the result set. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Throughput&lt;/b&gt; -  &lt;b&gt;If the throughput scales upward as time  progresses and the number of Vusers increase, this indicates that the  bandwidth is sufficient.&lt;/b&gt; If the graph&lt;b&gt; &lt;/b&gt;were to remain relatively flat as the number of Vusers increased, it would&lt;br /&gt; be reasonable to conclude that the bandwidth is constraining the volume of&lt;br /&gt; data delivered.  &lt;/li&gt;&lt;li&gt;&lt;b&gt;Types of Goals in Goal-Oriented Scenario&lt;/b&gt; -  Load Runner provides you with five different types of goals in a goal oriented scenario&lt;b&gt;: &lt;/b&gt; &lt;ul&gt;&lt;li&gt;The number of concurrent Vusers &lt;/li&gt;&lt;li&gt;The number of hits per second &lt;/li&gt;&lt;li&gt;The number of transactions per second &lt;/li&gt;&lt;li&gt;The number of pages per minute &lt;/li&gt;&lt;li&gt;The transaction response time that you want your scenario&lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Analysis Scenario (Bottlenecks): &lt;/b&gt;In Running Vuser graph  correlated with the response time graph you can see that as the number  of Vusers increases, the average response time of the check itinerary  transaction very gradually increases. In other words, the average  response time steadily increases as the load&lt;br /&gt;increases. At 56 Vusers, there is a sudden, sharp increase in the average response&lt;br /&gt;time. We say that the test &lt;i&gt;broke the server&lt;/i&gt;. &lt;b&gt;That is the mean time before failure (MTBF)&lt;/b&gt;. The response time clearly began to degrade when there were more than 56 Vusers running simultaneously. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is correlation? Explain the difference between automatic correlation and manual correlation?&lt;/b&gt;  - Correlation is used to obtain data which are unique for each run of  the script and which are generated by nested queries. Correlation  provides the value to avoid errors arising out of duplicate values and  also optimizing the code (to avoid nested queries). Automatic  correlation is where we set some rules for correlation. It can be  application server specific.&lt;b&gt; &lt;/b&gt;Here values are replaced by data  which are created by these rules. In manual correlation, the value we  want to correlate is scanned and create correlation is used to  correlate. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Where do you set automatic correlation options?&lt;/b&gt; -  Automatic correlation from web point of view, can be set in recording  options and correlation tab. Here we can enable correlation for the  entire script and choose either issue online messages or offline  actions, where we can define rules for that correlation.  Automatic  correlation for database, can be done using show output window and scan  for correlation and picking the correlate query tab and choose which  query value we want to correlate. If we know the specific value to be  correlated, we just do create correlation for the value and specify how  the value to be created. &lt;/li&gt;&lt;li&gt;&lt;b&gt;What is a function to capture dynamic values in the web vuser script?&lt;/b&gt; - Web_reg_save_param function saves dynamic data information to a parameter. &lt;/li&gt;&lt;/ol&gt;           &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6962174262008287976-4819645051326854986?l=h2kqa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://h2kqa.blogspot.com/feeds/4819645051326854986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://h2kqa.blogspot.com/2011/02/performance-loadrunner-interview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/4819645051326854986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/4819645051326854986'/><link rel='alternate' type='text/html' href='http://h2kqa.blogspot.com/2011/02/performance-loadrunner-interview.html' title='Performance/ LoadRunner Interview Questions'/><author><name>H2K Infosys</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='9' src='http://3.bp.blogspot.com/_MOwoK0SSY5Q/S61REN0TbiI/AAAAAAAAAAU/a6qPyyGT6NQ/S220/H2KLogoFinal.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6962174262008287976.post-5699700639574695724</id><published>2011-02-21T18:09:00.000-08:00</published><updated>2011-02-21T18:11:26.474-08:00</updated><title type='text'>What is User Acceptance Testing?  What is UAT Testing?</title><content type='html'>&lt;h4&gt;&lt;span style="color:#0000ff;"&gt;What is User Acceptance Testing? &lt;/span&gt;&lt;/h4&gt; &lt;p&gt;User Acceptance Testing is often the final step before rolling out the application. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Usually the end users who will be using the applications test the application before ‘accepting’ the application. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;This type of testing gives the end users the confidence that the application being delivered to them meets their requirements. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;This testing also helps nail bugs related to usability of the application. &lt;/p&gt;&lt;br /&gt;&lt;h4&gt;&lt;span style="color:#0000ff;"&gt;User Acceptance Testing – Prerequisites: &lt;/span&gt;&lt;/h4&gt; &lt;p&gt;Before the User Acceptance testing can be done the application is fully developed.&lt;br /&gt;Various levels of testing (Unit, Integration and System) are already  completed before User Acceptance Testing is done. As various levels of  testing have been completed most of the technical bugs have already been  fixed before UAT. &lt;/p&gt;&lt;br /&gt;&lt;h4&gt;&lt;span style="color:#0000ff;"&gt;User Acceptance Testing – What to Test? &lt;/span&gt;&lt;/h4&gt; &lt;p&gt;To ensure an effective User Acceptance Testing Test cases are created.&lt;br /&gt;These Test cases can be created using various use cases identified during the Requirements definition stage.&lt;br /&gt;The Test cases ensure proper coverage of all the scenarios during testing. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;During this type of testing the specific focus is the exact real  world usage of the application. The Testing is done in an environment  that simulates the production environment.&lt;br /&gt;The Test cases are written using real world scenarios for the application &lt;/p&gt;&lt;br /&gt;&lt;h4&gt;&lt;span style="color:#0000ff;"&gt;User Acceptance Testing – How to Test? &lt;/span&gt;&lt;/h4&gt; &lt;p&gt;The user acceptance testing is usually a black box type of testing.  In other words, the focus is on the functionality and the usability of  the application rather than the technical aspects. It is generally  assumed that the application would have already undergone Unit,  Integration and System Level Testing. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;However, it is useful if the User acceptance Testing is carried out  in an environment that closely resembles the real world or production  environment. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;The steps taken for User Acceptance Testing typically involve one or more of the following:&lt;br /&gt;&lt;span style="color:#ffffff;"&gt;.......&lt;/span&gt;1) User Acceptance Test (UAT) Planning&lt;br /&gt;&lt;span style="color:#ffffff;"&gt;.......&lt;/span&gt;2) Designing UA Test Cases&lt;br /&gt;&lt;span style="color:#ffffff;"&gt;.......&lt;/span&gt;3) Selecting a Team that would execute the (UAT) Test Cases&lt;br /&gt;&lt;span style="color:#ffffff;"&gt;.......&lt;/span&gt;4) Executing Test Cases&lt;br /&gt;&lt;span style="color:#ffffff;"&gt;.......&lt;/span&gt;5) Documenting the Defects found during UAT&lt;br /&gt;&lt;span style="color:#ffffff;"&gt;.......&lt;/span&gt;6) Resolving the issues/Bug Fixing&lt;br /&gt;&lt;span style="color:#ffffff;"&gt;.......&lt;/span&gt;7) Sign Off &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;User Acceptance Test (UAT) Planning:&lt;br /&gt;&lt;/strong&gt;As always the Planning Process is the most important of all the  steps. This affects the effectiveness of the Testing Process. The  Planning process outlines the User Acceptance Testing Strategy. It also  describes the key focus areas, entry and exit criteria. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Designing UA Test Cases:&lt;br /&gt;&lt;/strong&gt;The User Acceptance Test Cases help the Test Execution Team to  test the application thoroughly. This also helps ensure that the UA  Testing provides sufficient coverage of all the scenarios.&lt;br /&gt;The Use Cases created during the Requirements definition phase may be  used as inputs for creating Test Cases. The inputs from Business  Analysts and Subject Matter Experts are also used for creating. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Each User Acceptance Test Case describes in a simple language the precise steps to be taken to test something. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;The Business Analysts and the Project Team review the User Acceptance Test Cases. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Selecting a Team that would execute the (UAT) Test Cases:&lt;br /&gt;&lt;/strong&gt;Selecting a Team that would execute the UAT Test Cases is an important step.&lt;br /&gt;The UAT Team is generally a good representation of the real world end users.&lt;br /&gt;The Team thus comprises of the actual end users who will be using the application. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Executing Test Cases:&lt;br /&gt;&lt;/strong&gt;The Testing Team executes the Test Cases and may additional perform random Tests relevant to them &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Documenting the Defects found during UAT:&lt;br /&gt;&lt;/strong&gt;The Team logs their comments and any defects or issues found during testing. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Resolving the issues/Bug Fixing:&lt;br /&gt;&lt;/strong&gt;The issues/defects found during Testing are discussed with the  Project Team, Subject Matter Experts and Business Analysts. The issues  are resolved as per the mutual consensus and to the satisfaction of the  end users. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Sign Off:&lt;br /&gt;&lt;/strong&gt;Upon successful completion of the User Acceptance Testing and  resolution of the issues the team generally indicates the acceptance of  the application. This step is important in commercial software sales.  Once the User “Accept” the Software delivered they indicate that the  software meets their requirements.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The users now confident of the software solution delivered and the vendor can be paid for the same. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6962174262008287976-5699700639574695724?l=h2kqa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://h2kqa.blogspot.com/feeds/5699700639574695724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://h2kqa.blogspot.com/2011/02/what-is-user-acceptance-testing-what-is.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/5699700639574695724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/5699700639574695724'/><link rel='alternate' type='text/html' href='http://h2kqa.blogspot.com/2011/02/what-is-user-acceptance-testing-what-is.html' title='What is User Acceptance Testing?  What is UAT Testing?'/><author><name>H2K Infosys</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='9' src='http://3.bp.blogspot.com/_MOwoK0SSY5Q/S61REN0TbiI/AAAAAAAAAAU/a6qPyyGT6NQ/S220/H2KLogoFinal.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6962174262008287976.post-7640405824724168269</id><published>2010-03-26T17:30:00.000-07:00</published><updated>2010-03-26T17:33:39.801-07:00</updated><title type='text'>Quality Assurance -  QA Testing Interview Questions</title><content type='html'>What is testing?&lt;br /&gt;&lt;br /&gt;Testing involves operation of a system or application under controlled conditions and evaluating the results. Making sure the Product developed as per the requirement.&lt;br /&gt;To make sure the product meet the requirement, a test engineer must need to test each component +ve test &amp;amp; -ve test.&lt;br /&gt;Test Normal and abnormal conditions&lt;br /&gt;Quality Assurance (QA)&lt;br /&gt;&lt;br /&gt;Customer Satisfaction was the buzzword of the 80's. Customer Delight (Something that gives great pleasure or enjoyment) is today's buzzword and Customer Ecstasy is the buzzword of the new millennium. Products that are not customer (user) friendly have no place in the market although they are engineered using the best technology. The interface of the product is as crucial as the internal technology of the product.&lt;br /&gt;Test the product to make sure the product meets the end user requirement.  Improving the performance, ensuring that problems are found and dealt with.&lt;br /&gt;Software Development Life Cycle -- SDLC&lt;br /&gt;&lt;br /&gt;Software life cycle begins when a software product is first conceived, and ends when it is no longer in use. It includes phases like:  Initial concept, Requirements analysis, Functional design, Technical design, Coding, Unit test, Assembly Test, System test, Performance Test, Production Staging, Production Implementation, and Maintenance.&lt;br /&gt;&lt;br /&gt;Initiation&lt;br /&gt;Business need comes into the picture.&lt;br /&gt;Concept document will be approved by the management&lt;br /&gt;System Concept Development Stage&lt;br /&gt;Find Resources (Developers, Testers, Leads, Mgrs etc) &lt;br /&gt;Budget&lt;br /&gt;what are the benefits&lt;br /&gt;out come&lt;br /&gt;fails?&lt;br /&gt;Planning&lt;br /&gt;what are the technologies?&lt;br /&gt;Data collection&lt;br /&gt;Requirement Analysis Phase&lt;br /&gt;Business Analysts (BA) collect requirement from the client (or end user)&lt;br /&gt;&lt;br /&gt;Write BRD (Business Requirement Document)&lt;br /&gt;&lt;br /&gt;Implementing SRS – Software Requirement Specification&lt;br /&gt;&lt;br /&gt;OR FRS (Functional Requirement Specification)&lt;br /&gt;&lt;br /&gt;OR CRS (Component Requirement Specification)&lt;br /&gt;&lt;br /&gt;SRS will be given to testers to get familiar with the product.&lt;br /&gt;&lt;br /&gt;Design Phase&lt;br /&gt;Data Modeling by Database architects (using Erwin Tools, UML diagrams&lt;br /&gt;Functional Design, Technical Design&lt;br /&gt;Walk through meeting.&lt;br /&gt;&lt;br /&gt;Development Stage&lt;br /&gt;Coding&lt;br /&gt;&lt;br /&gt;Unit Testing&lt;br /&gt;&lt;br /&gt;Assembly Testing&lt;br /&gt;&lt;br /&gt;System Testing&lt;br /&gt;Integration Test – Testing of the flow of the application&lt;br /&gt;&lt;br /&gt;Functionality Test&lt;br /&gt;&lt;br /&gt;Black Box Testing: Only concern with the input and output. Testing&lt;br /&gt;&lt;br /&gt;Functionality of the Text box, Button etc.&lt;br /&gt;&lt;br /&gt;     White Box Testing: For developers. Test inside the logic&lt;br /&gt;&lt;br /&gt;Regression Testing :  Test -&gt; if find a Bug(defect) -&gt; Create defect in Defect tracking tool (Test Director)Defect will be assigned to Developer &gt;Developer Fix &gt;Again Test &gt;if defect fixed , close the defect,  if it is fixed but invented another bug because of this fix&gt;reassigned to Developer.&lt;br /&gt;&lt;br /&gt;Gress = Step --------- Regress = Restep&lt;br /&gt;In regression test, Test cases from the Phase1 will be re tested in Phase2 enhancement. Re-testing of the application after bug fixing or enhancements, is to ensure that changes have not propagated unintended side effects and additional errors&lt;br /&gt;&lt;br /&gt;Performance Test&lt;br /&gt;&lt;br /&gt;Load Test – Load Runner – Response time&lt;br /&gt;&lt;br /&gt;User Acceptance Test: Once the product is ready. Install the product at client location.  The actual end user, test the product to make sure that the product meet their requirements&lt;br /&gt;&lt;br /&gt;Maintenance&lt;br /&gt;&lt;br /&gt;If the end user finds the bugs again, it goes to the test engineer to check the bug .Assign it to the developer to fix and test the fix, the fix will be applied to the end user product. This is called OGS – On Going support.&lt;br /&gt;This cycle goes on till the product is no longer use.&lt;br /&gt;Software Process Models&lt;br /&gt;&lt;br /&gt;Linear Sequential Model/Waterfall Model&lt;br /&gt;Prototyping Model&lt;br /&gt;RAD Model(Rapid Application Development)&lt;br /&gt;Evolutionary Software Process Model&lt;br /&gt;Incremental Model&lt;br /&gt;Spiral Model&lt;br /&gt;Win Win Spiral Model&lt;br /&gt;Concurrent Development Model&lt;br /&gt;Component-Based Development Model&lt;br /&gt;V-Model&lt;br /&gt;Software Development Life Cycle&lt;br /&gt;&lt;br /&gt;In our company, we are following the “Linear Sequential Model” or “Waterfall Model”. This model suggests a systematic approach to the software development that begins at&lt;br /&gt;&lt;br /&gt;Analysis (SRS)&lt;br /&gt;Design&lt;br /&gt;Coding&lt;br /&gt;Testing&lt;br /&gt;Support&lt;br /&gt;&lt;br /&gt;Analysis:&lt;br /&gt;&lt;br /&gt;The requirement gathering process is focused specifically on software. To understand the nature of programs to be build. The software engineer must understand the information domain for the software, as well as required function, interface representation, behavior and performance. These requirements are documented and reviewed with the customer.&lt;br /&gt;&lt;br /&gt;Design:&lt;br /&gt;&lt;br /&gt;This design translates the requirements into the representation of the software that can be assessed for quality before coding begins. Design is actually a multistep process that focuses on four distinct attributes of a program. Data Structure, Software architecture, Interface representation and Procedural (algorithmic) details.&lt;br /&gt;&lt;br /&gt;Coding:&lt;br /&gt;&lt;br /&gt;The design must be translated into a machine readable form and this transformation is called coding. If design is performed in a detailed manner, coding can be done very easily.&lt;br /&gt;&lt;br /&gt;Testing:&lt;br /&gt;&lt;br /&gt;Once code has been generated, program testing begins.  This testing process focuses on logical internals of the software ensuring that all statements have been tested to uncover errors and ensure that defined input will produce actual results that agree with the required results as stated in the SRS.&lt;br /&gt;&lt;br /&gt;Support:&lt;br /&gt;&lt;br /&gt;Software will undergo changes after it is delivered to the customer. Change will occur because errors have been raised; software must be adapted to accommodate changes in the external environment. Software support/maintenance reapplies each of the preceding phases to an existing program rather than a new one.&lt;br /&gt;&lt;br /&gt;Software Process&lt;br /&gt;&lt;br /&gt;SEI: Software Engineering Institute at Carnegie-Mellon University, initiated by the U.S. Defense Department to help improve software development process.&lt;br /&gt;&lt;br /&gt;CMM: Capability Maturity Model, developed by the SEI. It’s a model of 5 levels of organizational maturity that determine the effectiveness in delivering quality software.&lt;br /&gt;&lt;br /&gt;Level 1: Initial&lt;br /&gt;&lt;br /&gt;The software process is characterized as ad-hoc and occasionally even chaotic. Success depends on individual effort.&lt;br /&gt;&lt;br /&gt;Level 2: Repeatable&lt;br /&gt;&lt;br /&gt;Basic Project Management Process is established to track cost, schedule and functionality. This process is to repeat earlier successes on projects with similar applications.&lt;br /&gt;&lt;br /&gt;Key Process Areas (KPA):&lt;br /&gt;&lt;br /&gt;Software Configuration Management&lt;br /&gt;&lt;br /&gt;Software Quality Assurance&lt;br /&gt;&lt;br /&gt;Software Subcontract Management&lt;br /&gt;&lt;br /&gt;Software Project Tracking and Oversight&lt;br /&gt;&lt;br /&gt;Software Project Planning&lt;br /&gt;&lt;br /&gt;Requirements Management&lt;br /&gt;&lt;br /&gt;Level 3: Defined&lt;br /&gt;&lt;br /&gt;The software process for both management and engineering activities is documented, standardized, and integrated into an organization wide software process. All projects use a documented and approved version of the organization’s process for developing and supporting software. This level includes all characteristics defined for level 2.&lt;br /&gt;&lt;br /&gt;Key Process Areas (KPA):&lt;br /&gt;&lt;br /&gt;Peer Reviews&lt;br /&gt;&lt;br /&gt;Intergroup Coordination&lt;br /&gt;&lt;br /&gt;Software Product Engineering&lt;br /&gt;&lt;br /&gt;Integrated Software Management&lt;br /&gt;&lt;br /&gt;Training Program&lt;br /&gt;&lt;br /&gt;Organization Process Definition&lt;br /&gt;&lt;br /&gt;Organization Process Focus&lt;br /&gt;&lt;br /&gt;Level 4: Managed&lt;br /&gt;&lt;br /&gt;Detailed measures of the software process and product quality are collected. Both the software process and products are quantitatively understood and controlled using detailed measures. This level includes all characteristics defined for level 3.&lt;br /&gt;&lt;br /&gt;Key Process Areas (KPA):&lt;br /&gt;&lt;br /&gt;Software Quality Management&lt;br /&gt;&lt;br /&gt;Quantitative Process Management&lt;br /&gt;&lt;br /&gt;Level 5: Optimizing&lt;br /&gt;&lt;br /&gt;Continuous process improvement is enabled by quantitative feedback from the process and from the testing innovative ideas and technologies. This level includes all characteristics defined for level 4.&lt;br /&gt;&lt;br /&gt;Key Process Areas (KPA):&lt;br /&gt;&lt;br /&gt;Process Change Management&lt;br /&gt;&lt;br /&gt;Technology Change Management&lt;br /&gt;&lt;br /&gt;Defect Prevention&lt;br /&gt;&lt;br /&gt;ISO: International Organization for Standards.&lt;br /&gt;&lt;br /&gt;IEEE: Institute of Electrical and Electronics Engineers.&lt;br /&gt;&lt;br /&gt;ANSI: American National Standards Institute.&lt;br /&gt;&lt;br /&gt;What is the importance of IEEE 829?&lt;br /&gt;&lt;br /&gt;This standard is very useful for Software Testing. It explains various Test Documentations and gives formats for Test Plans.&lt;br /&gt;&lt;br /&gt;What is testing?&lt;br /&gt;&lt;br /&gt;Testing is the execution of a program under controlled conditions, with the intent of finding errors. These controlled conditions can be normal and abnormal. The benefit of testing is find out errors and get them corrected and makes the program run successfully with the functional and performance requirements as stated in the SRS document.&lt;br /&gt;&lt;br /&gt;Kinds of Testing&lt;br /&gt;&lt;br /&gt;Static Testing&lt;br /&gt;&lt;br /&gt;Testing the application without executing the program. This can be done by code inspections, walkthroughs.&lt;br /&gt;&lt;br /&gt;Dynamic Testing&lt;br /&gt;&lt;br /&gt;     Generate test data and executing the program.&lt;br /&gt;&lt;br /&gt;Black Box Testing&lt;br /&gt;&lt;br /&gt;Tests are based on functionality and requirements of the application. In this testing the functionality of the program is only considered and the input and output is properly accepted. It does not concentrate and how the program works internally to achieve the functionality.&lt;br /&gt;&lt;br /&gt;     (Or)&lt;br /&gt;&lt;br /&gt;Test not based on any knowledge of internal design or code. Tests are based on requirements and functionality.&lt;br /&gt;&lt;br /&gt;White Box Testing&lt;br /&gt;&lt;br /&gt;Tests are based on knowledge of internal logic of application code. Tests are based on coverage’s of code statements, branches, paths, and conditions.&lt;br /&gt;&lt;br /&gt;Unit Testing&lt;br /&gt;&lt;br /&gt;This is White box testing methodology, which more concentrates on internal logic of the program. This is done by developers to ensure that internal logic of the program is working as per the requirements.&lt;br /&gt;&lt;br /&gt;Integration Testing&lt;br /&gt;&lt;br /&gt;Testing of combined ‘parts’ of an application to determine, if they function together correctly. The ‘parts’ can be code modules, individual applications. To ensure that data interface between the modules/components are error free.&lt;br /&gt;&lt;br /&gt;In integration testing, some modules may depend on other modules that are not available. In such cases, you may need to develop test drivers and test stubs.&lt;br /&gt;&lt;br /&gt;Driver: A test driver simulates the part of the system that calls the component under test.&lt;br /&gt;&lt;br /&gt;Stub:  A test stub is a dummy component which simulates the behavior of real component.&lt;br /&gt;System Testing&lt;br /&gt;&lt;br /&gt;Testing the entire system (all modules are completed and integrated) for functionality and requirements of the client as stated in SRS.&lt;br /&gt;&lt;br /&gt;Load Testing&lt;br /&gt;&lt;br /&gt;Load testing evaluates system performance with pre-defined load level. Load testing measures how long it takes a system to perform various program tasks and functions under normal or pre-defined conditions.&lt;br /&gt;&lt;br /&gt;Performance Testing&lt;br /&gt;&lt;br /&gt;Performance test is done to determine system performance at various load levels. Performance testing is designed to test the run-time performance of software within the context of an integrated system.&lt;br /&gt;&lt;br /&gt;Performance testing involves the evaluation of three primary elements:&lt;br /&gt;&lt;br /&gt;System environment and available resources.&lt;br /&gt;Workload&lt;br /&gt;System Response time.&lt;br /&gt;Measurements of Performance&lt;br /&gt;&lt;br /&gt;Performance is measured by the Response time and Throughput.&lt;br /&gt;&lt;br /&gt;Response Time: The amount of time the user must wait for a web system to react a request.&lt;br /&gt;&lt;br /&gt;Throughput: The amount of data transmitted during client-server interactions. This is measured in kilo  &lt;br /&gt;&lt;br /&gt;                         bytes per second.&lt;br /&gt;&lt;br /&gt;Stress Testing&lt;br /&gt;&lt;br /&gt;Stress Testing is to check the behavior of the system that is pushed beyond their specified operational limits. Heavy repetition of certain actions or inputs, input of large numerical values, large complex queries to a database system, etc...&lt;br /&gt;&lt;br /&gt;Recovery Testing&lt;br /&gt;&lt;br /&gt;Testing how well the system recovers from crashes, hardware failures and other unexpected software failures, network errors.&lt;br /&gt;&lt;br /&gt;Security Testing&lt;br /&gt;&lt;br /&gt;Testing how well the system protects against unauthorized internal or external access and willful damage.&lt;br /&gt;&lt;br /&gt;Functionality Testing&lt;br /&gt;&lt;br /&gt;This is Black box type testing geared to functional requirements of an application. This is done by testers.&lt;br /&gt;&lt;br /&gt;(Or)&lt;br /&gt;&lt;br /&gt;     Concentrating specifically on functionality of the application. It is part of System testing.&lt;br /&gt;&lt;br /&gt;Regression Testing&lt;br /&gt;&lt;br /&gt;Re-testing of the application after bug fixing or enhancements, to ensure that changes have not propagated unintended side effects and additional errors.&lt;br /&gt;&lt;br /&gt;Sanity Testing/Smoke Testing&lt;br /&gt;&lt;br /&gt;This is the initial testing performed when the new build is evaluated in order to check out whether the build is ready for further or major testing.&lt;br /&gt;&lt;br /&gt;User Interface Testing&lt;br /&gt;&lt;br /&gt;This testing is done to check out the user interface or cosmetic errors. This testing is intended to the look and feel of the application as specified in the UI design document.&lt;br /&gt;&lt;br /&gt;User Acceptance Testing&lt;br /&gt;&lt;br /&gt;This is a system level testing generally done at the client’s environment. This is done with the realistic data of the client to find out errors. A series of acceptance tests are conducted to enable the customer to validate all requirements. Acceptance test can be done over a period of weeks or months.&lt;br /&gt;&lt;br /&gt;(Or)&lt;br /&gt;&lt;br /&gt;Final testing based on specifications of the end-user or customer, or based on use by end-user/customers over some limited period of time.&lt;br /&gt;&lt;br /&gt;Alpha Test&lt;br /&gt;&lt;br /&gt;Alpha test is conducted at the developer’s site by a customer to check the application meets the customer requirements.&lt;br /&gt;&lt;br /&gt;(Or)&lt;br /&gt;&lt;br /&gt;Alpha test is conducted at the developer’s site by a customer to validate all the requirements of the client.&lt;br /&gt;&lt;br /&gt;Beta Test&lt;br /&gt;&lt;br /&gt;Beta test is conducted at one or more customer sites by the end-user of the software to validate all the requirements of the client.&lt;br /&gt;&lt;br /&gt;Ad-hoc Testing&lt;br /&gt;&lt;br /&gt;     This test is done randomly without executing any test cases with the intent of the finding errors.&lt;br /&gt;&lt;br /&gt;Compatibility Testing&lt;br /&gt;&lt;br /&gt;Testing how well the software performs in a particular hardware/software/network/operating system etc., environment.&lt;br /&gt;&lt;br /&gt;(Or)&lt;br /&gt;&lt;br /&gt;Compatibility testing determines if an application, under supported configurations, performs as expected with various combinations of hardware and software flavors and releases.&lt;br /&gt;&lt;br /&gt;For example: compatibility testing would thereafter determine which manufactures and server brands, under the same configuration, are compatible with the web system.&lt;br /&gt;&lt;br /&gt;Configuration testing&lt;br /&gt;&lt;br /&gt;Configuration testing is designed to uncover errors related to various software and hardware combinations.&lt;br /&gt;&lt;br /&gt;Configuration testing of web system involves the testing of various supported server software and hardware setups, browser settings, network connections, TCP/IP stack setups and so on.&lt;br /&gt;&lt;br /&gt;For example:  Configuration testing might validate that a certain web system installed on a dual-processor computer operates properly.&lt;br /&gt;&lt;br /&gt;Usability Testing&lt;br /&gt;&lt;br /&gt;Testing the application for user-friendliness. The effort required for learning and operating the application. Programmers and testers are usually not appropriate as usability testers. This can be done by the targeted end-users.&lt;br /&gt;&lt;br /&gt;Scalability Testing&lt;br /&gt;&lt;br /&gt;“Scalability testing is the ability of a system to handle an increased load without severely degrading its performance or reliability”.  Web site scalability is defined by  the difference in performance between a site handling a small number of clients and  a site handling a larger number of clients, as well as the ability to maintain the same level of performance by simply adding resources to the installation.&lt;br /&gt;&lt;br /&gt;There are many factors that affect scalability of a web application, including server hardware configuration, networking equipment and bandwidth, server operating system, volume and quantity of a back-end data, and so on.&lt;br /&gt;&lt;br /&gt;Software Quality Assurance&lt;br /&gt;&lt;br /&gt;Software QA involves the entire software development process, monitoring and improving the process, making sure that any agreed upon standards and procedures are followed. It is oriented to prevention. QA consists of the auditing and reporting functions of management.&lt;br /&gt;&lt;br /&gt;Activities of QA:&lt;br /&gt;&lt;br /&gt;Assist in monitoring the implementation of metrics process of the company.&lt;br /&gt;Assist in performing function point analysis and estimate cost, schedule, and effort accordingly.&lt;br /&gt;Assist in conducting reviews, audits and base lining of artifacts.&lt;br /&gt;Implementing visual source safe (VSS) for configuration management.&lt;br /&gt;Assist in taking training and orientation sessions on CMM for colleagues/team members in the Business Management System of the Organization.&lt;br /&gt;Quality Control&lt;br /&gt;&lt;br /&gt;Quality Control involves the series of inspections, reviews and tests used throughout the software development process to ensure each work product meets the requirements placed upon it. It is oriented to detection.&lt;br /&gt;&lt;br /&gt;QC Activities:&lt;br /&gt;&lt;br /&gt;Develop, implement and execute test methodologies and plans to ensure software product quality.&lt;br /&gt;Developing test strategies, test plans and test cases to ensure quality based on user requirements document, high level and detailed designs.&lt;br /&gt;Responsible for integration, system, acceptance and regression testing.&lt;br /&gt;Responsible for test analysis reporting and follow up of findings through closure.&lt;br /&gt;Creating test plans, test reports, and test manuals.&lt;br /&gt;Design, set up and maintain test execution environment.&lt;br /&gt;Software Quality&lt;br /&gt;&lt;br /&gt;Quality software is reasonably bug free, delivered on time and within the budget, meets the requirements and is maintainable.&lt;br /&gt;&lt;br /&gt;Measuring Quality&lt;br /&gt;&lt;br /&gt;Correctness: A program must operate correctly. Correctness is the degree to which the software performs its required function. It is measured in defects per KLOC (Kilo Lines of Code).&lt;br /&gt;&lt;br /&gt;Maintainability: Effort required to locate and fix an error in program, adapted if its environment changes.&lt;br /&gt;&lt;br /&gt;Integrity: This measures systems ability to with stand attacks to its security. Attacks can be made on programs, data and documents.&lt;br /&gt;&lt;br /&gt;Usability: Usability is an attempt to quantify user-friendliness.&lt;br /&gt;&lt;br /&gt;Software Configuration Management&lt;br /&gt;&lt;br /&gt;Software configuration management (SCM) is an umbrella activity that is applied throughout the software process. Configuration management is the art of identifying, organizing and controlling modifications to the software that is being built by the programming team. Because change can occur at any time, SCM activities are develop to Identify change, Control Change, Ensure that change is being properly implemented, Report changes to others who may have an interest. The goal is to maximize productivity by minimizing mistakes.&lt;br /&gt;&lt;br /&gt;Good Code&lt;br /&gt;&lt;br /&gt;     Good Code is the code that works, bug free, readable and maintainable.&lt;br /&gt;&lt;br /&gt;Good Design&lt;br /&gt;&lt;br /&gt;‘Design’ could refer to many things, but often refers to ‘functional design’ or ‘internal design’. Good functional design is indicated by an application whose functionality can be traced back to customer and end-user requirements. Good internal design is indicated by software code whose overall structure is clear, understandable, easily modifiable and maintainable. For programs that have a user interface, it is often a good idea to assume that the end-user will have little computer knowledge and may not read a user manual or online help. Some common rules-of-thumb:&lt;br /&gt;&lt;br /&gt;The program should act in a way that least surprises the user&lt;br /&gt;&lt;br /&gt;It should always be evident to the user what can be done next and how to exit.&lt;br /&gt;&lt;br /&gt;The program shouldn’t let the users do something stupid without warning them.&lt;br /&gt;&lt;br /&gt;Verification&lt;br /&gt;&lt;br /&gt;It refers to a set of activities that ensure that software correctly implements specific function.&lt;br /&gt;&lt;br /&gt;This can be done with checklists, walkthroughs and inspection meetings.&lt;br /&gt;&lt;br /&gt;Verification involves reviews and meetings to evaluate documents, plans, code, requirements and specifications.&lt;br /&gt;&lt;br /&gt;Walk-Through&lt;br /&gt;&lt;br /&gt;A Walk-Through is an informal meeting for evaluation or informational purposes.&lt;br /&gt;&lt;br /&gt;No preparation is required.&lt;br /&gt;&lt;br /&gt;Inspection&lt;br /&gt;&lt;br /&gt;An Inspection is a more formalized meeting. It is typically a document such as requirement specification or test plan, and the purpose is to find out problems and see what is missing but not to fix anything. The result of the inspection meeting should be a written report.&lt;br /&gt;&lt;br /&gt;Validation&lt;br /&gt;&lt;br /&gt;It refers to the set of activities that ensure that software that has been built is traceable to customer requirements. Validation involves actual testing and takes place after verifications are completed.&lt;br /&gt;&lt;br /&gt;Why does software have Bugs?&lt;br /&gt;&lt;br /&gt;Software has bugs, due to&lt;br /&gt;&lt;br /&gt;Miscommunication&lt;br /&gt;&lt;br /&gt;Software Complexity&lt;br /&gt;&lt;br /&gt;Programming errors&lt;br /&gt;&lt;br /&gt;Changing requirements&lt;br /&gt;&lt;br /&gt;Time Pressures&lt;br /&gt;&lt;br /&gt;Poorly documented code&lt;br /&gt;&lt;br /&gt;What is Test Data?&lt;br /&gt;&lt;br /&gt;     Test data is the minimal data required to execute a program under testing.&lt;br /&gt;&lt;br /&gt;What is Test Plan?&lt;br /&gt;&lt;br /&gt;A Test plan is a document that describes the objectives, scope, approach and focus of a software testing effort. Its contents are scope, software/hardware requirements, and kinds of testing, effort, deliverables, automation, risk factors, exit criteria and assumption.&lt;br /&gt;&lt;br /&gt;(Or)&lt;br /&gt;&lt;br /&gt;What is the test plan and explain the contents of that?&lt;br /&gt;&lt;br /&gt;“Test plan serves as the basis for all testing activities throughout the testing life cycle. Being an umbrella activity this should reflect the customer’s needs in terms of milestones to be met, the test approach (test strategy), resources required etc., the plan and strategy should give a clear visibility of the testing process to the customer at any point of time.”&lt;br /&gt;&lt;br /&gt;Functional and performance test plans if developed separately will give more lucidity for functional and performance testing. Performance test plan is optional if the application does not entail any performance requirements.&lt;br /&gt;&lt;br /&gt;What is Test Case?&lt;br /&gt;&lt;br /&gt;A Test Case is a document that describes an input, action or event and an expected response to determine if a feature of an application is working correctly.&lt;br /&gt;&lt;br /&gt;A Test case should contain particulars such as Test Case ID, Description, Test Data and Expected Results.&lt;br /&gt;&lt;br /&gt;Test Case Design Techniques&lt;br /&gt;&lt;br /&gt;What is Equivalence Partition?&lt;br /&gt;&lt;br /&gt;In this approach, classes of inputs are categorized for product or function validation. This is usually does not include combinations of input but rather single state value based by class.&lt;br /&gt;&lt;br /&gt;A single value in an equivalence partition is assumed to be representative of all other values in the partition.&lt;br /&gt;&lt;br /&gt;The aim of equivalence partition is to select values that have equivalent processing; one can assume that if a test passes with the representative value then it should pass with all other values in same partition.&lt;br /&gt;&lt;br /&gt;Ex:&lt;br /&gt;Numeric values with negative, positive and 0 values&lt;br /&gt;&lt;br /&gt;Strings those are empty or non–empty&lt;br /&gt;&lt;br /&gt;List that are empty or non empty&lt;br /&gt;&lt;br /&gt;Data files that exist or not, are readable/writable or not&lt;br /&gt;&lt;br /&gt;What are Boundary Value Analysis and Equivalence Partition?&lt;br /&gt;&lt;br /&gt;Equivalence Partitioning is based on the premise that inputs and outputs of a component can be partitioned into classes, which according to the component’s specifications, will be treated similarly by the component. This assumption is that similar inputs will evoke similar responses. A single value in an equivalence partition is assumed to be representative of all other values in the partition. This is used to reduce the problem that is not possible to test every input value. The aim of equivalence testing is to select values that have equivalent processing, One that we can assuming if a test passes with the representative value, it should pass with all other values in the same partition. That is we assume that similar some equivalence partitions may include combinations such as&lt;br /&gt;&lt;br /&gt;Valid vs. Invalid input and output values&lt;br /&gt;&lt;br /&gt;Numeric values with negative, positive and zero values.&lt;br /&gt;&lt;br /&gt;Strings those are empty or non-empty&lt;br /&gt;&lt;br /&gt;Lists those are empty or non-empty&lt;br /&gt;&lt;br /&gt;Data files that exist are readable /writable or not.&lt;br /&gt;&lt;br /&gt;Date years that are pre-2000 or post 2000, leap years or non-leap years (a special case is 29 February 2000 which is special processing of its own)&lt;br /&gt;&lt;br /&gt;Dates that are in 28, 29, 30 or 31 day months&lt;br /&gt;&lt;br /&gt;Days on workdays/outside office-hours&lt;br /&gt;&lt;br /&gt;Type of data file, e.g. text, formatted data, graphics, video or sound&lt;br /&gt;&lt;br /&gt;File source/destination, e.g. hard drive, floppy drive, CD-ROM, network&lt;br /&gt;&lt;br /&gt;Equivalence partition is a set of test cases where the successful execution of any test case in the clause guarantees the success of all the test cases. In an equivalence partition for 1 set of correct test cases 2 sets of incorrect test cases are taken, in order to verify that the system behaves correctly for the correct test cases and wrongly for the incorrect test cases.&lt;br /&gt;&lt;br /&gt;Boundary value analysis extends equivalence partitioning to include values around the edges of the partitions. As with equivalence partitioning, we assume that sets of values are treated similarly by components.  However, developers are prone to making errors in the treatment of values on the boundaries of these partitions.&lt;br /&gt;&lt;br /&gt;For example, elements of a list may be processed similarly, and they may be grouped into a single equivalence partition. However, in processing the elements, the developer may not have correct processing for either the first or last element of the list.&lt;br /&gt;&lt;br /&gt;Boundary-values are usually the limits of the equivalence classes.&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;br /&gt;Monday and Sunday for weekdays&lt;br /&gt;&lt;br /&gt;January and December for months&lt;br /&gt;&lt;br /&gt;32767 and –32768 for 16-bit integers&lt;br /&gt;&lt;br /&gt;Top-left and bottom-right cursor position on a screen&lt;br /&gt;&lt;br /&gt;First line and last line of a printed report&lt;br /&gt;&lt;br /&gt;1 January 2000 for two digit year processing&lt;br /&gt;&lt;br /&gt;Strings of one character and maximum length strings&lt;br /&gt;&lt;br /&gt;What is Review?&lt;br /&gt;&lt;br /&gt;     Reviews are to ensure that the work products under review meet the requirements.&lt;br /&gt;&lt;br /&gt;What is Test Report?&lt;br /&gt;&lt;br /&gt;A Test Report is a document that describes all the test cases that was conducted on the build by the testers. Its contents are Test Case ID, Description, Test Data, Expected Result, Actual Result, Status (pass/fail), Severity of the bug (H/M/L) and remarks.&lt;br /&gt;&lt;br /&gt;What is Test Case Design?&lt;br /&gt;&lt;br /&gt;A good test case should identify the undiscovered errors in testing.&lt;br /&gt;&lt;br /&gt;We must design test cases that have the highest likelihood of finding the most errors with a minimum amount of time and effort.&lt;br /&gt;&lt;br /&gt;Identify test cases for each module&lt;br /&gt;&lt;br /&gt;Write test cases in each executable step&lt;br /&gt;&lt;br /&gt;Design more functional test cases&lt;br /&gt;&lt;br /&gt;Clearly identify the expected results for each test case&lt;br /&gt;&lt;br /&gt;Design the test cases for workflow so that the test cases follow a sequence in the web application during testing.  For example, for mail applications say yahoo, it has to start with a registration process for new users, then signing up, composing mail, sending mail etc.,&lt;br /&gt;&lt;br /&gt;Security is high priority in web testing. Hence document enough test cases related to application security.&lt;br /&gt;&lt;br /&gt;Develop trace ability matrix to understand the test case coverage with the requirements.&lt;br /&gt;&lt;br /&gt;What is Use Case?&lt;br /&gt;&lt;br /&gt;     A use case is a scenario that describes how software is to be used in a given situation.&lt;br /&gt;&lt;br /&gt;What is System Test Plan?&lt;br /&gt;&lt;br /&gt;This document forms the basis for system testing. This plan clearly focuses the testing that will be conducted on the test bed environment. This document along with SRS, Detailed design document forms the basis for test case document.&lt;br /&gt;&lt;br /&gt;Test Strategy (Or) Testing process in your company?&lt;br /&gt;&lt;br /&gt;In our company, QC is involved from the project initiation meeting along with development team and the tester for each project is identified. All these members will participate in the knowledge transfers and discussions.&lt;br /&gt;&lt;br /&gt;SRS and Design document are the inputs to the test plan. After the test plan is prepared, it will send to the project leader and team leads for review purpose. The review comments are incorporated into the rest plan.&lt;br /&gt;&lt;br /&gt;Re-review is conducted if required. QA team conducts an audit and then the plan is base lined.&lt;br /&gt;&lt;br /&gt;Now these, SRS, design and test plan documents will help in preparation of test cases. Our company-approved templates are used for test case documentation. A peer review of test cases is done within the department. These test cases are then sent for review to the development team to check for their sufficiency of test cases and the functionality of the application is fully covered in the test cases. Based on the review report sent by the technical team, the test cases are then updated/new cases are added and sent for re-review if required. Before test execution starts, the test bed environment will setup.&lt;br /&gt;&lt;br /&gt;When a particular module is ready for testing, the development team will place the build in VSS and intimate it to the testing team. The tester will deploy the release on the test bed environment and start the execution of test cases. After the execution is completed, the tester will post the bugs into the defect manager tool.&lt;br /&gt;&lt;br /&gt;Test report is prepared with the results of the tests that were conducted on the build. These are discussed with the development team and then they are published in the report and also updated if need.&lt;br /&gt;&lt;br /&gt;Regression testing will be conducted on the application after the fixes are made to check if the fixes have not caused any adverse effects.&lt;br /&gt;&lt;br /&gt;If completion criteria are satisfied, then all the test deliverables are submitted to the test lead. This is the way we do testing in our company.&lt;br /&gt;&lt;br /&gt;Bug Life Cycle (or) Defect Tracking Flow Chart&lt;br /&gt;&lt;br /&gt;Once a bug is found, testing team will assign it to the development team using automated tool called Defect Manager. While posting first time, the status of bug will be set as “OPEN” automatically.&lt;br /&gt;After fixing the bug, Development team will re-assign it to the testing team (tester) by changing the status as “FIXED”.&lt;br /&gt;During regression resting Testing team checks for the same bug, if that bug is fixed, they will close the bug by changing the status as “CLOSED” otherwise once again they will re-assign to the development team by changing the status as “RE-OPEN”, like that it works…&lt;br /&gt;What is Severity &amp;amp; Priority of a Bug? What is the difference between them?&lt;br /&gt;&lt;br /&gt;Severity indicates the impact of each defect on testing efforts or users and administrator of the application under test. This information is used by the developers and management as the basis for assigning priority of work on defects.&lt;br /&gt;&lt;br /&gt;Critical (Show stopper):   An item that prevents further testing of the product or function under test.&lt;br /&gt;&lt;br /&gt;For example, an installation process which does not load a component, a general protection fault(GPF) or other situation which freezes the system(requiring a reboot) or missing menu option or security permission required to access a function under test.&lt;br /&gt;&lt;br /&gt;High: An item that does not function as expected or designed.&lt;br /&gt;&lt;br /&gt;For example, inaccurate calculations, the wrong fields being updated, the wrong rule, phrase or data being retrieved, an updated operation that fails to complete, slow system turn-around performance.&lt;br /&gt;&lt;br /&gt;Medium: Annoyances that does not conform to standards and conventions.&lt;br /&gt;&lt;br /&gt;For example, incorrect hot-key operation, an error condition which is not trapped, matching visual and text links which lead to different end points.&lt;br /&gt;&lt;br /&gt;Low: Cosmetic issues which are not crucial to the operation of the system.&lt;br /&gt;&lt;br /&gt;For example, Misspelled or ungrammatical text, inappropriate, inconsistent, incorrect formats such as text font, size, alignment, color, etc.&lt;br /&gt;&lt;br /&gt;Classifications of the Bugs&lt;br /&gt;&lt;br /&gt;Testing&lt;br /&gt;&lt;br /&gt;Missing test cases: Test cases are not addressing all design aspects.&lt;br /&gt;Ex: Test case to test the call back functionality is missing.&lt;br /&gt;&lt;br /&gt;Inadequate/Incomplete Test cases: Test action pre-requisite is incomplete or inadequate.&lt;br /&gt;Ex: Some necessary validations might not be addressed in the test cases. Inadequate test coverage.&lt;br /&gt;&lt;br /&gt;Ambiguous Test cases: Test cases not clear to the re-viewer.&lt;br /&gt;Ex: If the test case is ‘click the key’, not specifying which key to be pressed.&lt;br /&gt;&lt;br /&gt;Deviation from standards: Test setup described is unrealistic or not adequate to conduct the test cases.&lt;br /&gt;Editorial(Spelling/Grammar mistakes): Any alignment or spelling mistakes of the labels etc.,&lt;br /&gt;Ex: ‘Assumptions’, instead of ‘Assumptions’&lt;br /&gt;&lt;br /&gt;Incorrect Test cases: Test functionality and Test case not matching.&lt;br /&gt;Incorrect Expected Result: If the expected result has been captured incorrectly in the test cases.&lt;br /&gt;Ex: If the expected result is captured as ‘should display a message box with ok button’, is captured incorrectly as ‘should display an decision/query box with ‘Yes’ and ‘No’ buttons’.&lt;br /&gt;&lt;br /&gt;Fields not properly addressed&lt;br /&gt;Ex: Instead of capturing the fields as ‘ambiguous’, capturing it as ‘Not clear’.&lt;br /&gt;&lt;br /&gt;Duplicate/Repetition of test cases: If the same test cases are repeated for different screens having the same parent screen.&lt;br /&gt;Ex: If the screen differs based on the selection we make in the parent screen, capturing of the details in the parent screen for all the child screens.&lt;br /&gt;&lt;br /&gt;Entry Criteria:&lt;br /&gt;&lt;br /&gt;Test bed environment&lt;br /&gt;&lt;br /&gt;Application under test&lt;br /&gt;&lt;br /&gt;Base line test cases&lt;br /&gt;&lt;br /&gt;Code review report&lt;br /&gt;&lt;br /&gt;Unit test report&lt;br /&gt;&lt;br /&gt;Unit test sign off sheet&lt;br /&gt;&lt;br /&gt;Exit Criteria:&lt;br /&gt;&lt;br /&gt;All the test cases should be executed on the test bed environment.&lt;br /&gt;&lt;br /&gt;All the defects reported in the test report should be closed.&lt;br /&gt;&lt;br /&gt;There should not be any High severity bugs and Medium severity bugs.&lt;br /&gt;&lt;br /&gt;Low severity bugs should be tracked to closure.&lt;br /&gt;&lt;br /&gt;Input Documents for Testing&lt;br /&gt;&lt;br /&gt;SRS (Software Requirement Specifications)&lt;br /&gt;&lt;br /&gt;Detailed Design&lt;br /&gt;&lt;br /&gt;Test Plan&lt;br /&gt;&lt;br /&gt;Test Case&lt;br /&gt;&lt;br /&gt;Configuration Item&lt;br /&gt;&lt;br /&gt;The item, which is eligible for configuration.&lt;br /&gt;&lt;br /&gt;i.e., uploaded into configuration management.&lt;br /&gt;&lt;br /&gt;Ex: VSS (Visual Source Safe)&lt;br /&gt;&lt;br /&gt;Configurable Items in Testing&lt;br /&gt;&lt;br /&gt;Test Plan&lt;br /&gt;&lt;br /&gt;Test Cases&lt;br /&gt;&lt;br /&gt;Review Report (Test Cases)&lt;br /&gt;&lt;br /&gt;Test Report&lt;br /&gt;&lt;br /&gt;What is Web Testing?&lt;br /&gt;&lt;br /&gt;Web testing is testing of either internet or intranet web applications where the client interface is an internet browser. The browser can be anything like Internet explorer, Netscape navigator and Opera etc.&lt;br /&gt;&lt;br /&gt;Approach:&lt;br /&gt;&lt;br /&gt;Any testing process will start with the planning of test (Test Plan), building a strategy (how to test), preparation of test cases (what to test), execution of test cases (testing) and end in reporting the results (defects).&lt;br /&gt;&lt;br /&gt;Practically it is not difference it is the priority areas which needs to be set for a web testing. For web testing the following few key focus areas like compatibility, navigation, user interaction, usability, performance, scalability, reliability and availability etc., can be considered during the testing phase.&lt;br /&gt;&lt;br /&gt;What is the difference between Client Server Testing &amp;amp; Web Testing?&lt;br /&gt;&lt;br /&gt;Client Server Testing Web Testing&lt;br /&gt;Client Server transactions are limited Web transactions are unpredicted and unlimited&lt;br /&gt;User behavior is predictable and controllable User behavior is predictable and controllable&lt;br /&gt;System variables are LAN, Centralized H/W, S/W Firewalls, Routers, hosting company-caching systems.&lt;br /&gt;Failures are notice internally It is known externally.&lt;br /&gt;Software Metrics&lt;br /&gt;&lt;br /&gt;“Metrics provides the information regarding the performance of a project /product.”&lt;br /&gt;The data collected during different phases shall be used for managing the project and product development.&lt;br /&gt;It can be used by the project/product development personals for estimation.&lt;br /&gt;Collected metrics stored in the process/metric database.&lt;br /&gt;Project Manager shall use the past project data to estimate size, effort, schedule, resource and cost for the current project as well as its QA activities.&lt;br /&gt;Project Leader shall use data from similar projects and shall arrive at productivity factor in order to carry out the estimation.&lt;br /&gt;Measurements are captured at each end of phase.&lt;br /&gt;&lt;br /&gt;Inputs for Metrics&lt;br /&gt;&lt;br /&gt;Timesheet&lt;br /&gt;Project Management Plan&lt;br /&gt;Project status Report&lt;br /&gt;Project Closure Report&lt;br /&gt;Review Report&lt;br /&gt;Test Case&lt;br /&gt;Test Report&lt;br /&gt;Training Plan&lt;br /&gt;Training Feedback Form&lt;br /&gt;User Requirement Document&lt;br /&gt;Internal Quality Audit&lt;br /&gt;Audit Calendar&lt;br /&gt;Configuration Status According&lt;br /&gt;Metrics Plan&lt;br /&gt;&lt;br /&gt;Metrics plan describes Organization’s goals for project/product quality, productivity, product development cycle schedule, effort, Cost, Size, Measurement, Project Standard Software process, Data capturing method, Data Control Points etc.&lt;br /&gt;&lt;br /&gt;Testing Metrics&lt;br /&gt;Defect Density&lt;br /&gt;&lt;br /&gt;     Formula:    (Total No. Of Defects)/size*100&lt;br /&gt;&lt;br /&gt;     Units:     In Nos. (%)&lt;br /&gt;&lt;br /&gt;     Periodicity to calculate:    Project Closure&lt;br /&gt;&lt;br /&gt;Residual Defect Density&lt;br /&gt;&lt;br /&gt;     Formula:    No. of defects found after system testing /Size (KLOC)&lt;br /&gt;&lt;br /&gt;     Units:     In Nos. (%)&lt;br /&gt;&lt;br /&gt;     Periodicity to calculate:    Project Closure&lt;br /&gt;&lt;br /&gt;Effort Variance&lt;br /&gt;&lt;br /&gt;Formula: 100*(Actual Person-hours expended - Estimated hours)/ Estimated person-hours&lt;br /&gt;&lt;br /&gt;     Units:     In Nos. (%)&lt;br /&gt;&lt;br /&gt;     Periodicity to calculate:    Phase-wise&lt;br /&gt;&lt;br /&gt;Size Variance&lt;br /&gt;&lt;br /&gt;     Formula:    100*(Actual Size- Estimated Size)/ Estimated Size&lt;br /&gt;&lt;br /&gt;     Units:     FP (Functional Points) or KLOC (Kilo Lines of Code)&lt;br /&gt;&lt;br /&gt;     Periodicity to calculate:     End of every phase &amp;amp; project closure&lt;br /&gt;Schedule Variance&lt;br /&gt;&lt;br /&gt;Formula: 100*(Actual Elapsed Duration- Estimated Duration)/ Estimated Duration&lt;br /&gt;&lt;br /&gt;     Units:     Working days&lt;br /&gt;&lt;br /&gt;     Periodicity to calculate:     Phase-Wise&lt;br /&gt;&lt;br /&gt;Productivity&lt;br /&gt;&lt;br /&gt;     Formula:    Size/Effort&lt;br /&gt;&lt;br /&gt;     Units:     FP/Person days (days=working days)&lt;br /&gt;&lt;br /&gt;     Periodicity to calculate:    Project Closure&lt;br /&gt;&lt;br /&gt;Testing Tips&lt;br /&gt;&lt;br /&gt;Testing is the process of identifying defects, where a “defect” is any variance between actual and expected results.&lt;br /&gt;&lt;br /&gt;Editable fields checking and validation:&lt;br /&gt;&lt;br /&gt;Valid/invalid characters/strings, data in all editable fields&lt;br /&gt;Valid minimum/maximum/mid range values in fields&lt;br /&gt;Null strings(no data) in required fields&lt;br /&gt;Record length(character limit) in text/memo fields&lt;br /&gt;Cut/Copy/Paste into/from fields when possible&lt;br /&gt;Non-editable fields checking:&lt;br /&gt;&lt;br /&gt;Check for all test/spelling in warnings and error messages/dialogs&lt;br /&gt;Invoke/check all menu items and their options&lt;br /&gt;Application Usability&lt;br /&gt;&lt;br /&gt;Appearance of outlook(placement and alignment of objects on screen)&lt;br /&gt;User interface test(open all menus, check all items)&lt;br /&gt;Basic functionality checking(file + open + save, etc.,)&lt;br /&gt;Right mouse clicking sensitivity&lt;br /&gt;Resize/min/max/restore app, windows(check minimum application size)&lt;br /&gt;Scroll ability when applicable(scroll bars, keyboard, auto scrolling)&lt;br /&gt;Keyboard and mouse navigation, highlighting, dragging, drag/drop&lt;br /&gt;Print in landscape an portrait modes&lt;br /&gt;Check F1, What’s This, Help menu&lt;br /&gt;Short-cut and accelerator keys&lt;br /&gt;Tab key order and Navigation in all dialog boxes and menus&lt;br /&gt;Basic Compatibility:&lt;br /&gt;&lt;br /&gt;16 bit OS (win 3.x, win95, OS/2, want 3.x)&lt;br /&gt;&lt;br /&gt;32 bit OS (win95/98/2000/NT) UNIX&lt;br /&gt;&lt;br /&gt;What is the base line for Performance Testing?&lt;br /&gt;&lt;br /&gt;     Functional and performance document or the SRS document.&lt;br /&gt;&lt;br /&gt;What is the Load Balance of the application?&lt;br /&gt;&lt;br /&gt;Balancing the load with different servers.&lt;br /&gt;&lt;br /&gt;Ex: There is a server of capacity of handling 100 users at a time. If the no. of users exceeds the limit of 100 users, then they will automatically transfer to another server to balance the load.&lt;br /&gt;&lt;br /&gt;What is your Bug clearance ratio?&lt;br /&gt;&lt;br /&gt;(Ratio between the valid and invalid bugs)&lt;br /&gt;&lt;br /&gt;96:100&lt;br /&gt;How many Test cases u can prepare in a day?&lt;br /&gt;&lt;br /&gt;     60-70 Test cases&lt;br /&gt;&lt;br /&gt;How many Test Cases you can Execute in a day?&lt;br /&gt;&lt;br /&gt;     70-90 Test cases&lt;br /&gt;&lt;br /&gt;Which tool are you using for Configuration Management?&lt;br /&gt;&lt;br /&gt;     Visual Source Safe (VSS) from Microsoft&lt;br /&gt;&lt;br /&gt;What is Six Sigma?&lt;br /&gt;&lt;br /&gt;Six Sigma is a customer-focused philosophy for improving quality that was first developed by Motorola in 1980’s.&lt;br /&gt;&lt;br /&gt;What is Process &amp;amp; Procedure?&lt;br /&gt;&lt;br /&gt;Process is tested with the intent to improve it. Process is defined as the execution. (Or) Process is flow tasks.&lt;br /&gt;&lt;br /&gt;Procedure is tested with the intent to increase its quality. Procedure is one, which is designed to perform an intended functionality. How you are implementing the process is called procedure.&lt;br /&gt;&lt;br /&gt;How do you rate yourself in Testing?&lt;br /&gt;&lt;br /&gt;     7-8&lt;br /&gt;We do testing of the application against to the customer requirements. How do you proceed, if there are no requirements?&lt;br /&gt;&lt;br /&gt;     Based on target users.&lt;br /&gt;&lt;br /&gt;What is the best tester to developer ratio?&lt;br /&gt;&lt;br /&gt;It should be nearly tester/developer=nearly 40%&lt;br /&gt;&lt;br /&gt;Some companies have a 1:1 ratio (at one point, Microsoft’s OS development team was an example of that  -- in fact they also had an integration team, which meant that there were more testers than developers). There are companies where they have only one or two integration testers and all the developers are required to run a suite of integration tests before they check their code to make sure that they have not introduced defects. In these environments, the ratio can be 1:25. Some locations even have no SQA team or department at all, so the ratio is 0:1.&lt;br /&gt;&lt;br /&gt;Which approach of integration testing are you following?&lt;br /&gt;&lt;br /&gt;     Top – down&lt;br /&gt;&lt;br /&gt;Have you prepared test plan?&lt;br /&gt;&lt;br /&gt;     No, but involved in test plan.&lt;br /&gt;&lt;br /&gt;What makes a good test engineer?&lt;br /&gt;&lt;br /&gt;A good test engineer has a ‘test to break’ attitude, an ability to take the point of view of the customer, a strong desire for quality and an attention to detail. Tact and diplomacy are useful in maintaining a cooperative relationship with developers and an ability to communicate with both technical and non-technical (customers, management) people is useful. Previous software development experience can be helpful as it provides a deeper understanding of the software development process gives the tester an appreciation for the developer’s point of view and reduces the learning curve in automated test tool programming. Judgment skills are needed to assess high-risk areas of an application on which to focus testing efforts when time is limited.&lt;br /&gt;&lt;br /&gt;What if there isn’t enough time for thorough testing?&lt;br /&gt;&lt;br /&gt;     Use risk analysis to determine where testing should be focused.&lt;br /&gt;&lt;br /&gt;Which functionality is most important to the project’s intended purpose?&lt;br /&gt;Which functionality is most visible to the user?&lt;br /&gt;Which functionality has the largest financial impact on users?&lt;br /&gt;What kinds of problems would cause the worst publicity?&lt;br /&gt;What kinds of tests could easily cover multiple functionalities?&lt;br /&gt;&lt;br /&gt;What can be done if requirements are changing continuously?&lt;br /&gt;&lt;br /&gt;A common problem and a major headache&lt;br /&gt;&lt;br /&gt;Work with the project’s stakeholders early on to understand how requirements might change so that alternate test plans and strategies can be worked out in advance, if possible&lt;br /&gt;It is helpful if the application’s initial design allows for some adaptability so that later changes do not require redoing the application from scratch.&lt;br /&gt;If the code is well commented and well documented this makes changes easier for the developers.&lt;br /&gt;Negotiate to allow only easily implemented new requirements into the project, while moving more difficult new requirements into future versions of the application.&lt;br /&gt;Focus less on detailed test plans and test cases and more on ad-hoc testing.&lt;br /&gt;What is the difference between ISO &amp;amp; CMM?&lt;br /&gt;&lt;br /&gt;ISO 9000 Standards SEI-CMM&lt;br /&gt;Generic Standard Maturity Model&lt;br /&gt;Applicable for all kinds of Organizations Applicable only to Software Organizations&lt;br /&gt;Contain 20 Clauses Contain 18 “Key Process Area’ (KPAs)&lt;br /&gt;Documentation called Qs Manual Documentation called work products and Artifacts&lt;br /&gt;Certification Audit is like an Examination Final assessment is Collaborative&lt;br /&gt;Certification is a pass/fail outcome The result of the assessment is a quantitative score of the maturity of software development process&lt;br /&gt;What kinds of Testing you perform?&lt;br /&gt;Explain your Quality Effort in your company?&lt;br /&gt;Describe Quality as you understand it?&lt;br /&gt;What is the difference between Integration Testing &amp;amp; System Testing?&lt;br /&gt;What documents would you need for QA?&lt;br /&gt;Explain your involvement in the Test Plan for your project?&lt;br /&gt;What is the difference between Management system and Quality?&lt;br /&gt;What is Conformance &amp;amp; Non Conformance?&lt;br /&gt;What is Corrective Action &amp;amp; Preventive Action?&lt;br /&gt;What is Quality Monitoring &amp;amp; Quality Measurement?&lt;br /&gt;What is Audit?&lt;br /&gt;How do you rate yourself in achieving deadline?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6962174262008287976-7640405824724168269?l=h2kqa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://h2kqa.blogspot.com/feeds/7640405824724168269/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://h2kqa.blogspot.com/2010/03/quality-assurance-qa-testing-interview.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/7640405824724168269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6962174262008287976/posts/default/7640405824724168269'/><link rel='alternate' type='text/html' href='http://h2kqa.blogspot.com/2010/03/quality-assurance-qa-testing-interview.html' title='Quality Assurance -  QA Testing Interview Questions'/><author><name>H2K Infosys</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='9' src='http://3.bp.blogspot.com/_MOwoK0SSY5Q/S61REN0TbiI/AAAAAAAAAAU/a6qPyyGT6NQ/S220/H2KLogoFinal.JPG'/></author><thr:total>7</thr:total></entry></feed>
