Sie sind auf Seite 1von 11

Testing Concepts

a) Test authoring techniques (Boundary value, Equivalence partition etc) TEST DESIGN TECHNIQUIES:Equivalence Partitioning: In this method the input domain data is divided into different equivalence data classes. Set of valid and in valid classes. Boundary Value Analysis is a black box test design technique where test case are designed by using boundary values Min, Min + 1, Min -1 Max, Max + 1, Max 1 b) Test data preparation (Pair wise testing, State transition, decision tables etc) State transition testing is used for systems where some aspect of the software system can be described in 'finite state machine'. This means that the system can be in a finite number of different states, and the transitions from one state to another are determined by the rules of the 'machine'. Decision Table: - It is a table which shows different combination inputs with their associated outputs, this is also known as cause effect table. Error Guessing:- This is a Test design technique where the experience of a tester is used to find the components of software where defects might be present. c) Test plan, Test strategy etc A test plan is a document describing the scope, approach, objectives, resources, and schedule of a software testing effort. It identifies the items to be tested, items not be tested, who will do the testing, the test approach followed, what will be the pass/fail criteria, training needs for team, the testing schedule etc. 1. Test plan identifier 2. Introduction 3. Test items 4. Features to be tested 5. Features not to be tested 6. Approach 7. Item pass/fail criteria 8. Suspension criteria and resumption requirements 9. Test deliverables 10. Testing tasks 11. Environmental needs 12. Responsibilities 13. Staffing and training needs 14. Schedule 15. Risks and contingencies 16. Approvals Test Strategy - A high-level document defining the test phases to be performed and the testing within those phases for a programme. It

defines the process to be followed in each project. This sets the standards for the processes, documents, activities etc. that should be followed for each project. d) Levels of Testing, Types of testing (Unit testing, Integration testing, system testing, Security testing, Performance testing, Interface testing etc.) e) Test life cycle and defect life cycle A few questions asked. 1) How do you test a Pen, Elevator, Vending machine etc 2) What a Test plan contains 3) Traceability Matrix 4) Come out with a few negative testing scenarios for a file that has to be downloaded from You Tube to local desktop 5) How do you test an application that talks to multiple third party interfaces 6) What is severity and priority? Give example of bugs with high severity and low priority and vice versa ( low severity and high priority) Priority :- How quickly we need to fix the bug? Or How soon the bug should get fixed? Severity : - How much the bug is effecting the functionality of the application? Eg:(1) High Priority and Low Severity If a company logo is not properly displayed on their website. (2) High Priority and High Severity Suppose you are doing online shopping and filled payment informations, but after submitting the form, you get a message like "Order has been cancelled." (3) Low Priority and High Severity If we have a typical scenario in which the application get crashed, but that scenario exists rarely. (4) Low Priority and Low Severity There is a mistake like "You have registered success" instead of successfully, success is written. if suppose the title of the particular concern is not spelled correctly, it would give a negative impact.eg ICICC is spelled as a tittle for the project of the concern ICICI.then it is a high severity,low priority defect 7) What is Retesting and what is Regression Testing 8) What is the metrics? What is the metrics used in your project? Knowledge of metrics like DDR, Defect Density, DSI etc.. 9) What is functional testing and System testing??

Database Related Concepts


a) b) c) d) Simple SQL queries/statements Simple Joins, Triggers and stored procedures Testing database integrity and constraints etc. Database basics like tables, views, primary key, Index etc. JOINS What are joins?

Sometimes we have to select data from two or more tables to make our result complete. We have to perform a join. How many types of Joins? Joins can be categorized as: Inner joins (the typical join operation, which uses some comparison operator like = or <>). These include equi-joins and natural joins. Inner joins use a comparison operator to match rows from two tables based on the values in common columns from each table. For example, retrieving all rows where the student identification number is the same in both the students and courses tables. Outer joins. Outer joins can be a left, a right, or full outer join. Outer joins are specified with one of the following sets of keywords when they are specified in the FROM clause: LEFT JOIN or LEFT OUTER JOIN -The result set of a left outer join includes all the rows from the left table specified in the LEFT OUTER clause, not just the ones in which the joined columns match. When a row in the left table has no matching rows in the right table, the associated result set row contains null values for all select list columns coming from the right table. RIGHT JOIN or RIGHT OUTER JOIN - A right outer join is the reverse of a left outer join. All rows from the right table are returned. Null values are returned for the left table any time a right table row has no matching row in the left table. FULL JOIN or FULL OUTER JOIN - A full outer join returns all rows in both the left and right tables. Any time a row has no match in the other table, the select list columns from the other table contain null values. When there is a match between the tables, the entire result set row contains data values from the base tables. Cross joins - Cross joins return all rows from the left table, each row from the left table is combined with all rows from the right table. Cross joins are also called Cartesian products. (A Cartesian join will get you a Cartesian product. A Cartesian join is when you join every row of one table to every row of another table. You can also get one by joining every row of a table to every row of itself.) What is a stored procedure? A Stored procedure is a group of Transact-SQL statements compiled into a single execution plan. SQL server stored procedures return data in four ways: Output parameters, which can return either data (such as an integer or character value) or a cursor variable (cursors are result sets that can be retrieved one row at a time). Return codes, which are always an integer value. A result set for each SELECT statement contained in the stored procedure or any other stored procedures called by the stored procedure.

A global cursor that can be referenced outside the stored procedure. (Lot of people do not know this) What is trigger ? Triggers are a special class of stored procedure defined to execute automatically when an UPDATE, INSERT, or DELETE statement is issued against a table or view. A few questions asked. 1) What is difference between count(*) and count(5) Ans) SELECT COUNT(5) FROM employee SELECT COUNT(*) FROM employee All the above queries will give you the same result i.e. total no of rows in the table . Execution Plan for all the above queries are same. 2) What is difference between drop, truncate, delete? Ans) The DELETE command is used to remove rows from a table. A WHERE clause can be used to only remove some rows. If no WHERE condition is specified, all rows will be removed. After performing a DELETE operation you need to COMMIT or ROLLBACK the transaction to make the change permanent or to undo it. Note that this operation will cause all DELETE triggers on the table to fire. TRUNCATE removes all rows from a table. The operation cannot be rolled back and no triggers will be fired. As such, TRUCATE is faster and doesn't use as much undo space as a DELETE. The DROP command removes a table from the database. All the tables' rows, indexes and privileges will also be removed. No DML triggers will be fired. The operation cannot be rolled back. DROP and TRUNCATE are DDL commands, whereas DELETE is a DML command. Therefore DELETE operations can be rolled back (undone), while DROP and TRUNCATE operations cannot be rolled back. 3) What is difference between inner and outer join Ans) SQL Inner Join: All the rows returned by the sql query satisfy the sql join condition specified. SQL Outer Join: This sql join condition returns all rows from both tables which satisfy the join condition along with rows which do not satisfy the join condition from one of the tables. 4) How do extract duplicate rows in a table and delete all of them except one record. Ans) Method1:
SET ROWCOUNT 1 DELETE Emp FROM Emp a

WHERE (SELECT COUNT(*) FROM Emp b WHERE b.empid = a.empid) > 1 WHILE @@rowcount > 0 DELETE Emp FROM Emp a WHERE (SELECT COUNT(*) FROM Emp b WHERE b.empid = a.empid) > 1 SET ROWCOUNT 0

This query removes rows based on the column names specified in the GROUP BY clause. If you specify only one column name it will remove all duplicate records for that column. If you want to delete exact replica's of the same row - use all the column names in the GROUP BY. 5) What is difference between primary key and unique? Ans) Primary key: A column or set of columns that uniquely identify all the rows in a table. Primary keys do not allow null values. No two rows can have the same primary key value; therefore, a primary key value always uniquely identifies a single row. Unique key: UNIQUE constraints enforce the uniqueness of the values in a set of columns.No two rows in the table are allowed to have the same not null values for the columns in a UNIQUE constraint. Primary keys also enforce uniqueness, but primary keys do not allow null values. A UNIQUE constraint is preferred over a unique index. 6) There are two tables emp1 and emp2. First one has emp name and designations like ASE, SE,SSE,TL,AM,M,SM etc.emp2 has emp name, salary. How would you extract record of a Manager with highest salary? Ans)
select EmpName from Emp1 where Designations ='M' and EmpName in (select EmpName from Emp2 where Salary in (select MAX (Salary) from

Emp2))
Select Emp1.EmpName from Emp1 join Emp2 on

Emp1.EmpName = Emp2.EmpName where Designations ='M' and Salary in (selectMAX(Salary) from Emp2) 7) Table1 has emp id and emp name. Table 2 has emp id salary. Write query to extract emp name whose salary is minimum.
select empname from Table1 where empid in (select empid from Table2 where salary in (select MIN(salary) from Table2)) select Table1.empname from Table1 join Table2 on Table1.empid = Table2.empid where salary in (select MIN(salary) from Table2)

8) From performance point of view how to write better SQL queries. For example queries using sub queries take longer time compared to queries using group by , having where etc. Use views and stored procedures instead of heavy-duty queries.
Try to use constraints instead of triggers, whenever possible. Use table variables instead of temporary tables.

Try to use UNION ALL statement instead of UNION, whenever possible. Try to avoid using the DISTINCT clause, whenever possible. Try to avoid using SQL Server cursors, whenever possible. Try to avoid the HAVING clause, whenever possible. Include SET NOCOUNT ON statement into your stored procedures to stop the message indicating the number of rows affected by a T-SQL statement. Try to restrict the queries result set by using the WHERE clause. Use the select statements with TOP keyword or the SET ROWCOUNT statement, if you need to return only the first n rows. Try to restrict the queries result set by returning only the particular columns from the table, not all table's columns.

9) How would you extract second highest salary from emp table. The table contains details like emp id, emp name, salary, age, designations etc
SELECT TOP 1 salary FROM (SELECT DISTINCT TOP 2 salary FROM Emp ORDER BY salary DESC) a ORDER BY salary

10)There are two tables in a database. Table 1 and Table 2. Suppose the data of Table 1 gets updated after every 5 minutes and after that Table 1 data gets transferred to Table 2. How would you test this scenario? Ans) Time Stamp between Table1 and Table2

Overall view of the project (backend flow and business aspects of project)
a) Project backend architecture b) How the data and control flow in the application with clear understanding of likely points of failure c) What is overall business objectives of project d) What an end-user of the application expects from the application A few questions asked 1) In a web services testing project context the question asked was . Why web services are used in an application? What is the necessity of web services? Exposing the existing function on to network: A Web service is a unit of managed code that can be remotely invoked using HTTP, that is, it can be activated using HTTP requests. So, Web Services allows you to expose the functionality of your existing code over the network. Once it is exposed on the network, other application can use the functionality of your program. Connecting Different Applications ie Interoperability: Web Services allows different applications to talk to each other and share data and services among themselves. Standardized Protocol: Web Services uses standardized industry standard protocol for the communication. Low Cost of communication:

Web Services uses SOAP over HTTP protocol for the communication, so you can use your existing low cost internet for implementing Web Services 2) In an agile testing project context the question asked wasHow do you meet deadlines if requirements change widely? Is agile methodology good or bad? Why? Ans) The capability of rapidly and efficiently adapting to changes is known as agility. The purpose behind developing agile development methodology was to have agility which was missing in traditional waterfall models, it was waterfall model that inspired agile methodology. Agile software development is based on iterative and incremental development. Agile methodology uses continuous stakeholder feedback to produce high quality consumable code through use cases and a series of short time-boxed iterations. Agile methodology has four key features: 1. Stable code, 2. Continuous stakeholder feedback, 3. Cross functional and Self-directed teams, 4. Sustainable pace. In agile there are small time-boxed iterations of 1-3 weeks and each iteration involves the full development cycle including requirements analysis, design, coding, testing and acceptance testing. After this the working product is demonstrated to the stakeholders. The team structure of agile is usually cross-functional and self-directed and takes full responsibility of the tasks for particular iteration. Team size is typically small(5-10 people) to make team communication and collaboration easier. Daily scrums meeting(only 10-15 minutes standup meetings) are held to see the team progress and any blockers. 3) What is business analyst role? Do you think testers need to interact with them or not? Why? Business Analyst assesses current systems Develops and maintains models of business requirements Designs business transactions Designs and organizes procedures Documents and analyzes business processes using valueadded/non-value added, process modeling tools, cost-time charts, and root cause analysis or other tools as appropriate. Documents ability to functional requirements for use by application designers and developers Is an active participant in unit testing, system testing, and regression testing

4) If requirements are not clear (at high level or ambiguous) , How do you author test cases? Most of the bugs in software are due to incomplete or inaccurate functional requirements? The software code, doesnt matter how well its written, cant do anything if there are ambiguities in requirements. Its better to catch the requirement ambiguities and fix them in early development life cycle. Cost of fixing the bug after completion of development or product release is too high. So its important to have requirement analysis and catch these incorrect requirements before design specifications and project implementation phases of SDLC. 5) How the databases, middle wares and third party interfaces interact with application under test? In case of databases using dbo connection objects. 6) How many networks are involved in the application you are testing? What are their protocols? Http and Https 7) What is difference between http and https? Hypertext Transfer Protocol (HTTP) is a protocol used in networking. When you type any web address in your web browser, your browser acts as a client, and the computer having the requested information acts as a server. When client requests for any information from the server, it uses HTTP protocol to do so. The server responds back to the client after the request completes. The response comes in the form of web page which you see just after typing the web address and press Enter. Hypertext Transfer Protocol Secure (HTTPS) is a combination of two different protocols. It is more secure way to access the web. It is combination of Hypertext Transfer Protocol (HTTPS) and SSL/TLS protocol. It is more secure way to sending request to server from a client, also the communication is purely encrypted which means no one can know what you are looking for. This kind of communication is used for accessing those websites where security is required. Banking websites, payment gateway, emails (Gmail offers HTTPS by default in Chrome browser), and corporate sector websites are some great examples where HTTPS protocols are used. For HTTPS connection, public key trusted and signed certificate is required for the server. These certificate comes either free or it costs few dollars depends on the signing authority. There is one other method for distributing certificates. Site admin creates certificates and loads in the browser of users. Now when user requests information to the web server, his identity can be verified easily.

HTTP URL begins with http:// It uses port 80 for communication. Unsecured Operates at Application Layer No encryption No certificates required

HTTPS URL begins with https:// It uses port 443 for communication. Secured Operates at Transport Layer Encryption is present Certificates required

8) When you type a URL in the browser what exactly happens in the background? When you type any web address in your web browser, your browser acts as a client, and the computer having the requested information acts as a server.

Automation Testing
a) Why automation is required? b) Basics of automation testing like object repository, non-hardcoded scripts, record-play scripts, Checkpoints, Recovery scenarios etc c) When automation is recommended? d) Criteria for automation tool selection? e) Automation of performance testing A few questions asked. 1) How many automation frameworks you know? 2) How many types of recording in an automation tool? 3) How do you deal with object recognition problems in the script execution? 4) How many types of checkpoints you used? 5) How many recovery scenarios you used? 6) What is regular expression in QTP? 7) What is BPT approach in QTP?

Analytical/Logical Questions
1) There are 3 switches in one room and there are 3 electric bulbs in another room. You are entitled to enter and exit each room only once. How do you find which switch belongs to which bulb Answer: 1 You turn on two switches wait 5 min. and turn one of the switches off! go in the next room the cold one belongs to the switch you never turned on. the warm one the switch you only left on 5 min and the light one to the switch that is turned on!

2) Write test cases for peeling an orange Verify Whether it is orange fruit or not Verify whether its color is orange or not Verify whether its skin is able to peel or not peeling an orange with a knife peeling an orange with hand peeling an orange with a tool peeling an orange without the juice coming out. 3) What are the different scenarios encountered in uploading a file to a remote server Scenarios:- 1. Time Taken to upload a file to a remote server. 2. Verify the connectivity before uploading a file to a remote server. 3. Verify the type and size of the file uploading. 4. Verify the file after the completion of file upload. 4) There are two mobile phones i:e mobile1 and mobile2. Mobile1 has basic features like call, SMS and phone2 has advanced features like MP3 and Camera etc.. If mobile phone1 is upgraded (not replaced) to mobile2 what would be your testing approach. What would be a few important scenarios that you need to test? Scenarios:- 1. Verify the Mobile1 Old features like Calls, SMS. 2. Verify the new Features on-boarded properly into the Mobile1. 3. Verify that all the Mobile1 features are upgraded to Mobile2. 5) Come out with as many scenarios as possible to test an elevator Scenarios:- 1. Verify the maximum load the elevator can be loaded. 2. Verify the overload functionality of the elevator. 3. Verify that all buttons in elevator are working. 4. Verify that the elevator should open door when open button clicked and close door when close button clicked at the specified location. 5. Verify the elevator should stop when stop button pressed. 6. verify the elevator buttons light should on when pressed particular floor number. 7. verify that the elevator should display when floor is reached. 6) There are 27balls and only one ball out of these 27 is heavier than all other 26 equal weighing balls. There is balance you can use multiple times. With how much least possible iteration you can find the heavier ball. 7) There are two hour glasses one for 7 minutes another for 11 minutes. If you want to count 15 minutes times how would you do that? Start both hourglasses. At the end of 7 minutes restart the small one. At the end of 11 minutes restart the big hourglass. The small one at this point has 3 minutes to go. When it empties begin boiling your eggs. The big hourglass will run for another 8 minutes. After that use the small hourglass to measure another 7 minutes. 8 + 7 = 15. This solution requires turning the small

hourglass twice and the big one just once which sums up to 3 turns. 8) What are different scenarios while installing software MS Office or Yahoo Messenger etc. Scenarios:- 1. Verify the Installation notes. 2. Verify the path to be installed. 3. Verify the space required. 4. Verify the valid registration key. 9) What are the different scenarios to test the expiry date of credit card? Scenarios:- 1. verify the expiry date through online net banking 2. Verify the expiry date on the credit card with online net banking account. 3. verify the expiry date on the credit card while purchasing after the expiry date. 4. verify the expiry date on the credit card while purchasing last before the expiry date. 1. What regression Adhoc 2 .job run test cases 3. Testing models 4. Test plan bug report 5. Banking report harish.chandra.singh@accenture.com

Suggested Reading (links/Web sites)


1) 2) 3) 4) 5) www.stickyminds.com www.testersdesk.com www.geekinterview.com www.Wikepedia.com www.searchsoftwarequality.com

Last but not least www.Google.com

Das könnte Ihnen auch gefallen