April 30, 2008

SQL interview- "ORDER BY" clause in "select statement"

If you want the returning rows to be sorted, you can specify a sorting expression in the ORDER BY clause. The following select statement returns rows sorted by the values in the "E-mail" column.

SELECT * FROM departments ORDER BY E-mail;

You can specifying multiple columns in the ORDER BY clause.

SELECT department_id, first_name, last_name, salary
FROM employees ORDER BY E-mail, salary;


If you want to sort column in descending order, you can specify the DESC keyword in the ORDER BY clause.

Load testing

Load Testing is end to end performance testing under production load. The primary objective of this test is to determine the response times for various time critical transactions and business processes and that they are within documented expectations.The test also measures the capability of the application to function correctly under load, by measuring transaction pass/fail/error rates.

Load testing is important to repeat as load tests may need to be executed several times in the first year of wide scale deployment, to ensure that new releases and changes in database size do not push response times beyond prescribed load. Application should work properly under mentioned load for prescibed number of users.

Beta testing

Beta means a measure of the volatility, or systematic risk, of a security or a portfolio in comparison to the market as a whole.

Beta testing comes after alpha testing. Versions of the software, known as beta version, are released to a limited audience outside company. The software is released to groups of people so that further testing can ensure the product has few or no bugs. Sometimes, beta versions are made available to the open public to increase the feedback field to a maximal number of future users. But it is done in case of web sites. For example:- Gmail is still in it's beta version. Generally beta softwares are free to use by users.

April 29, 2008

Interview Question

Question:- In customer details form, client raise the change to insert the two radio buttons after customer address. How you can test as a tester ?

Answer:-

1. Conform that radio buttons are present after the customer address.

2. Count no of radio buttons.

3. verify the initial state of the check boxes.

4. Only one should be selectable, not both at one time.

5. Verify radio button label name.

6. verify the alignment of radio buttons in the form.

Test cases for ATM Machine

1. Machine is accepting ATM card

2. Machine is rejecting expired card

3. successful entry of PIN number

4. unsuccessful operation due to enter wrong PIN number 3 times

5. successful selection of language

6. successful selection of account type

7. unsuccessful operation due to invalid account type

8. successful selection of amount to be withdraw

9. successful withdrawal.

10. Expected message due to amount is greater than day limit

11. unsuccessful withdraw operation due to lack of money in ATM

12. Expected message due to amount to withdraw is greater than possible balance.

13. unsuccessful withdraw operation due to click cancel after insert card

Interview question

Question:- If a project is long term project , requirements are also changes then test plan will change or not?why

Answer:- Yes. If requirement changes, the design documents, specifications (for that particular module which implements the requirements) will also change. Hence the test plan would also need to be updated. This is because "resources allocation" is one section in the test plan. We would need to write new test cases,review, and execute it. Hence resource allocation would have to be done accordingly. As a result the Test plan would change.

Retesting and Data Driven Testing

Retesting: it is manual process in which apllication will be tested with entire new set of data.

Data Driven Testing(DDT)- It is a Automated testing process in which application is tested with multiple test data. DDT is very easy procedure than retesting because the tester should sit and need to give different new inputs manually from front end.

Interview question

Question:- If you have executed 100 test cases , every test case passed but apart from these test case you found some defect for which test case is not prepared,then how you will report the bug?

Answer:- While reporting this bug into bug tracking tool , first you will generate the test case, write the steps to reproduce the bug. Then bug will be reported.

Interview question

Question:- Suppose the product/appication has to deliver to client at 5.00PM, at that time you or your team member caught a high severity defect at 3PM.(Remember defect is high severity)But the client cannot wait for long time.You should deliver the product at 5.00Pm exactly. What procedure you will follow?

Answer:- The bug is of high severity. So we can send the application to the client and find out the priority of the feature having bug. if its priority is low, then we can hide that feature otherwise we should:-

1.explain the situation to client and ask some more time to fix the bug.

2.If the client is not ready to give some some time then analyse the impact of defect/bug and try to find workarounds for the defect and mention these issues in the release notes as known issues or known limitations or known bugs. Here the workaround means remeady process to be followed to overcome the defect effect.

3.Normally this known issues or known limitations(defects) will be fixed in next version or next release of the software

Web testing and Client Server testing

Difference between Web testing and Client Server testing?

Testing the application in intranet (without browser) is an example for client -server. (The company firewalls for the server are not open to outside world. Outside people cannot access the application). So there will be limited number of people using that application. Client server application :-
--> runs in two or more machines
--> Application is a menu-driven
--> Connected mode (connection exists always until logout)
--> Limited / known number of users
--> Less number of network issues when compared to web app.

Testing an application in internet (using browser) is called web testing. The application which is accessible by numerous numbers around the world (World wide web). Web based application
--> runs in two or more machines
--> URL-driven
-->.Disconnected mode (state less)
--> Unlimited number of users
--> issues like browser compatibility, security issues, performance issues, etc


Interview question

Question:- Suppose you press a link in yahoo shopping site which leads to some other company website? How to test if any problem in linking from one site to another site?

Answer:-

1) Check whether the mouse cursor is turning into hand icon or not .

2) Check the link is highlighting when user place the cursor on the link .

3) Expected site is opening or not ?

4) If the site is opening then check is it opening in another window or the same window that the link itself exit (to check user friendliness of the link)

5) How fast that website is opening?

6)Site is opening according to the link or not?

7)All other sub links are opening or not?

Functional testing and regresion testing

Functional testing is a testing process where we test the functionality/behaviour of each functional component of the application, example minimize button,transfer button,links etc. We check what is each component doing in that application and what is expected?

Regression testing is the testing the behaviour of the application of the unchanged areas when there is a change in the build. We retest the build whether the changed requirement has altered the behaviour of the unchanged areas. The impacted area may be the whole of the application or a part of the application.

Interview question

Q. If a bug has high severity then usually that is treated as high priority,then why do priority given by test engineers/project managers and severity given by testers?

Answer:- High severity bugs affects the end users .Testers tests an application with the users point of view, hence it is given as high severity. High priority is given to the bugs which affects the development. Project managers assign a high priority based on development / deployment point of view.

Project v/s product testing

Projects are generally targeted to meet a client (fixed customer)requirement. But products are targeted to meet a market (dynamic user) requirement.

Difference in both type of testing can be understand by this example:-

We used to eat food at home, in home made food, we know what we want and what we have made? that is project testing.

But if we have to eat food in market, waiter will tell you the quality of their food, and still we don't know what exactly he is going to serve. This is product testing.

Brief introduction of test plan

Test plan can be defined as a document that describes the scope, approach, resources and schedule of intended test activities. The main purpose of preparing test plan is that every one concerned with the project are in synchronized with regards to scope, deliverables, deadlines and response for the project.

Test planning can and should occur at several levels. The first plan to consider is the Master Test Plan. The purpose of the Master Test Plan is to consider testing at all levels (unit, integration, system, acceptance, beta, etc.). The Master Test Plan is to testing what the Project Plan is to the entire development/testing effort.

General contents of a test plan:

Purpose:

This section should contain the purpose of preparing the test plan.

Scope:

This section should talk about the areas of the application which are to be tested by the QA team and specify those areas which are definitely out of the scope.

Test approach :

This would contain details on how the testing is to performed and whether any specific strategy is to be followed.

Entry criteria:

This section explains the various steps to be performed before the start of test (i.e) pre-requisites.

E.g. Environment setup, starting web server/ application server, successful implementation of latest build etc.

Resources:

This list out the people who would be involved in the project and their designation etc

Tasks and responsibilities:

This talk about the tasks to be performed and the responsibilities assigned to the various members in the project.

Exit criteria:

This contains tasks like bringing down the system or server, restoring system to pre-test environment, database, refresh etc.

Schedules/ Milestones :

This section deals with the final delivery date and the various milestone dates to be met in the course of project.

Hardware/ software requirements :

This section contains the details of system/server required to install the application or perform the testing, specific s/w that needs to be installed on the system to get the application running or to connect to the database, connectivity related issues etc.

Risks and mitigation process :

This section should list out all the possible risks that can arise during the testing and mitigation plans that the QA team plans to implement incase the risk actually turns into a reality.

Tools to be used :

This would list out the testing tools or utilities that are to be used in the project.

E.g. Winrunner, QTP, Test Director PCOM etc.

Deliverables :

This section contains various deliverables that are due to the client at various points of time. i.e. daily, weekly, start of project, end of project etc. these could include test plans, test procedures, test matrices, status reports, test scripts etc. templates for all these also be attached.

Annexure :

This section contains the embedded documents or links to document which have been/will be used in the course of testing. E.g. Templates used for reports, test cases etc. reference documents can also be attached here.

Sign off :

This section contains the mutual agreement between the client and QA team with both leads/ managers signing off their agreement on the test plan.

Boundary Value Analysis

This method leads to a selection of test cases that exercise boundary values. Rather than focusing on input conditions, BVA derives test cases from the output domain.

  • For input ranges bounded by a and b, test cases should include values a and b and just above and just below a and b respectively.
That is a, b, a+1, a-1, b+1, b-1
  • If an input condition specifies a number of values, test cases should be developed to exercise the minimum and maximum numbers and values just above and below these limits.
  • If internal data structures have prescribed boundaries, a test case should be designed to exercise the data structure at its boundary(in case of loops).

Equivalence Class Partitioning

This divides the input data into classes of data from which test cases can be derived. Equivalence partitioning reduces the number of test cases needed. Equivalence class represents a set of valid or invalid class for input conditions.

Equivalence classes may be defined according to following guidelines:

  • If an input condition specifies a range, one valid and two invalid equivalence classes are defined.
  • If an input condition requires a specific value, then one valid and two invalid equivalence classes are defined.
  • If an input condition specifies a member of a set, then one valid and one invalid equivalence class are defined.
  • If an input condition is boolean, then one valid and one invalid equivalence class are defined.

Is Black box testing is an alternative of white box testing?

Black box testing is not an alternative to white box testing. Black box testing attempts to find errors in the following categories:
  • incorrect or missing functions
  • interface errors (UI testing)
  • errors in data structures or external database access
  • performance errors and
  • Initialization and termination errors.
Black box testing and white box testing, both uncover different types of bugs.

Black box Testing

Black Box Testing is testing without knowledge of the internal workings of the item being tested. For example, when black box testing is applied to software engineering, the tester would only know the "legal" inputs and what the expected outputs should be, but has no idea how the program actually arrives at those outputs.

Take a simple example of coffee machine:-

We give input, water, milk and coffee powder.
Output- Our coffee is ready to consume.

We know if we will provide these inputs, this will be our output, but we don't know anything, how machine works, make it. That is nothing but black box testing.

Black box testing is testing with respect to specifications and customer requirements.

April 28, 2008

Are Cookies Dangerous to Computer?

NO, Cookies are not dangerous to Computer.

A cookie is a simple piece of text. It is not a program, or a plug-in or any script. It cannot be used as a virus, and it cannot access your hard drive or any other information. Your browser can save cookie values to your hard disk if it needs to, but that is the limit of the effect on your system. You can set your browser to not to save any cookie on your system, but in that case you need to provide your login information again and again to access secure pages.

Difference between testing and debugging

Testing is validating whether the application is working as per the Client's Requirements and if not then defects are logged. Testing is done by tester.

Debugging is to find out where code fail and fix it. Debugging is done by developers.

Different levels of software testing

Different level for software testing are:-

1)Unit level testing
2)Integration level testing
3)System testing
4)Acceptance testing

Difference between 'Testing' and 'Quality' ?

Testing is:-

1)The process used to help identify the correctness, completeness, security, and quality of developed computer software.

2)Process to ensure Quality.

3)Process to improve quality.

Quality is:-

1)Measure of conformance of a product or service to certain specifications or standards.

2)Meeting client’s requirements.

3) It is a measurement of user satisfaction.

Steps to start Testing

Before starting testing we need to follow these steps:-

1)Get requirements.
2)Make test Plan
3)write test cases
4)Build test bed.
5)Get all required software tools.
6)Divide work b/w team members.
5)Finally start testing.
6)Execute test case
7)Report bugs
8)retest fixed bugs
9)generate test report

Difference between sanity and smoke testing

Sanity Testing: Brief test of major functional elements of a piece of software to determine if its basically operational for exhaustive testing. It gives a measure of confidence that the system works as expected prior to a more exhaustive round of testing.

Smoke Testing: Smoke testing is testing whether new features or functionality added are working good with exiting one and there is no new problem in working code.Smoke tests are designed to confirm that changes in the code do function as expected and do not cause failure of the rest of an entire build.

Difference b/w static and dynamic testing ?

Static testing:-

Static testing is Verification activity.Tester have a checklist to check whether the product is as per the set standards of the organization.These standards can be for Coding, Integrating and Deployment.Review's, Inspection's and Walkthrough's are static testing methodologies.

In static testing code is not run to uncover bugs, but verify by experts to find any flaw.

Dynamic testing:-

Dynamic testing is validation activity.Tester have SRS to check whether the product is as per requirements of the user.Unit Tests, Integration Tests, System Tests and Acceptance Tests are Dynamic Testing methodologies.

In dynamic testing code is executed to find bugs, or to confirm that it's working well.

Test case for Date format month/date/year

Test case for Date field can be:-

1) test format which is allowed like mm/dd/yy or MM/DD/YYYY or which one allowed.
2)Test for boundary values for date and month.
3) Test For null date /month/year
4) negatine date/month/year
5)Check for 30th feb

like this more will depend on your scenario, whether any date is allowed or only user with 18+ is allowed etc.

difference between project and product testing?

There is no difference between project and product testing.
Every software product is a project for a company who develop it.It may be the case that company is developing it for itself, and for the sale in open market.

For example:- Windows operating system is a Microsoft product, but internally, for Microsoft it is a project.

I hope readers got my point.

What to do if bug not reproduce at developer sysytem?

Actually we can do nothing if bug not reproduce.

1)A tester should try simple steps which can reproduce the bug again because If not reproduce, that bug will be rejected.

2) Keep screen shots of the state of software behaving abnormal.

3)Use step recording and play tools to proper record the steps which can reproduce the bug easily, or at least can help in reproducing bugs.

4) sometimes it help me, don't know your development team support it or not, If I am able to reproduce the bug on my system, still developer consider it as a bug, try to find the reason.

Difference b/w effective testing and efficient testing ?

Efficient means performing or functioning in the best possible manner with the least waste of time and effort; having and using requisite knowledge, skill, and industry; competent.
Efficient testing will be testing which uncover most of the bugs in less effort and time.

Testing Efficiency = (No. of defects Resolved / Total No. of Defects Submitted)* 100

Effective means obviously whether we are getting the bug, whether there is any benefit of the testing or not. Effective testing is whether we are getting the bug or we are just wasting our time.

Test Effectiveness = Loss due to problems / Total resources processed by the system

Test case review sheet

Test Case Checklist

Yes

No

NA

Comments

1. Is each test case numbered and named as per the standards?

2. Is it clear which features or requirements are being executed by the test?

3. Have test case(s) been identified for each test objective/scenario?

4. Have test case (s) been designed for the positive flows in each business scenario?

5. Have test case (s) been designed for the negative flows in each business scenario?

6. Have the test case (s) been designed for all simple boundaries —maximum, minimum, and off-by-one boundaries?

7. Are the test case (s) designed, redundant with any other test case or business scenario

8. Are the test case (s) designed in a flexible manner so that there are minimum rework required in case of change in requirements?

9. Have the test steps been correctly given in appropriate sequence for each test case?

10. Have the Expected Results been identified correctly? (Expected Results should clearly state how the application should respond to the user actions given in each step/action. - Ensure that too many things are not included to be verified under one expected output)

11. Are the pre-requisites described clearly for executing the tests?

12. Are the test cases traceable to a test requirement?

13. Has the test data set, if required been generated appropriately?

14. Are the test cases saved in the repository?

15. Have test cases been developed to exercise all error handling?

16. Have the related areas that could possibly be affected by the implementation of the requirement been identified and covered in the test cases? (Identify the impact areas and check with the test cases)

17. Have the test case (s) been organized in a hierarchical order and saved in the repository?

Test case template

Project No:

Project Name:

Page:

Test No:

Test Name:

Date:

Requirement No./Name

Prerequisite Tests:

Test Description/Objectives:

Test Prerequisites:.

Tested By

Time Taken:

Step

Action

Expected Result

Actual Result

Pass/Fail

Additional Comments

1

2

3

4

5

6

7

8

9

Search Here...

Popular Posts

Quick Test Professional