A Blog for quality professional

Archive for the ‘Quality Domain’ Category

AJAX Testing with Selenium

The obvious approach approach in salenium  is to open the page, click the button, then check the value of the text field. However when we did that in Selenium, the test case failed.because its working on form submission

The reason for the test failure is perhaps not so obvious. What happens is that the asynchronous nature of the Ajax call means that the result doesn’t come back from the server immediately.

Selenium doesn’t know to wait for the result,so how can we get the effective Ajax effect tested

One way to solve the problem is to use the click and wait command instead of click; the “AndWait” suffix indicates that Selenium should wait for a page-reload.

This might seem like it would work, but there’s a catch: because the page is not reloaded, clickAndWait will make Selenium keep waiting forever. This clearly isn’t going to work.

Another possibility is to insert a pause between the click and aseertvalue So lets pause for 5 seconds in between, to give the server enough time to respond. This approach works most of the time, but it may fail if the server takes more than 5 seconds.

This might happen for any number of reasons, slow network, overloaded test machine, and so on. You can keep increasing the pause before checking the result, but this will make your tests run slower and slower. So this clearly isn’t the best solution because it’s not guaranteed to work and makes your tests run much slower than necessary.

Fortunately Selenium has provided support for doing exactly what we want. When a field value changes in the current page, you can use the waitForValue command to make Selenium wait until the expected value

So in order to make the failing test pass we need to replace the failing assertvalue command.

When executing this command, Selenium will suspend the execution of current test case and wait for the expected value. When the string “newValue” appears in the text field, the suspended test will go on. One thing to note: if you misspelled the expected value, Selenium will wait for 30 seconds before timing out.

As you may have already guessed, there are lots more commands that can be used to test Ajax effects. For example, if you want to check some plain text updated with Ajax, there’s waitForText ; if you want to check the title of current page, there’s waitForTitle if you want to verify that an HTML element is removed, there’s waitForElementNotPresent.

Idea Taken from popular site and my own experience

Shishir Gopal Jee Srivastava


Verifying the closure of bugs

When a product gets completed, it is released for testing to QC department along with the relevant documents. The QC department based on the scope of testing, availability of testers and the time at which the product is estimated to be released to customer, prepares its test plan. After studying the business and customer requirements, test cases and test scenarios are built by testers, based on which bugs or defects are reported. Once the bugs report (or defects report) is released to development team by the testing team, it is the development team that comes into the action. They based on the category, validity of a bug divide among themselves the bugs to be fixed and inform the testing team the estimated time required to close or address all the bugs/ defects. Once all the defects are fixed, the product goes back to testing team, for verification of closure of bugs.

offshore outsource

Offshore outsourcing, a type of business process outsourcing (BPO), is the exporting of IT-related work from the United States and other developed countries to areas of the world where there is both political stability and lower labor costs or tax savings. Outsourcing is an arrangement in which one company provides services for another company that could also be or usually have been provided in-house. Offshore simply means “any country other than your own.” The Internet and high-speed Internet connections make it possible for outsourcing to be carried out anywhere in the world, a business trend economists call globalization. In general, domestic companies interested in offshore outsourcing are not only trying to save money in order to be more price-competitive against each other, but also to enable them to compete with businesses in other countries.

Critics of offshore outsourcing worry that if too much IT-related work is farmed out to other countries, home-grown IT talent will “dry up.” They point out that once a company begins outsourcing overseas, they will find it difficult to reverse the trend and justify paying more in salaries, taxes, and job benefits for the same work they used to outsource. Proponents maintain that the judicious use of offshore outsourcing will help make all IT workers become more productive and allow companies to develop more agile and responsive business models, which in turn, will raise salaries for domestic workers in all countries.

According to the IT research and analysis firm Gartner, by the year 2004 more than 40% of IT-related businesses will either be investigating the possibility of offshore outsourcing or will have already shipped some IT-related work overseas


you said you would never do anything to hurt me. Then why are you causing me so much pain?

deepest love is de biggest sorrow in this world never love a person more than ur life it will hurt yu a lot when yu realise that ur love was not in their life…..


She lied that she loves me for my happiness… I lied that I hate her for her happiness…

I hide my tears

when i talk with u

But i can’t lie

2 my own eyes.

u left me with all the pain… where i have to take them all alone… but u took all the happiness with u, which i gave u with endless love




Concept of S.E.I C.M.M IN International Software Corporate

SEI = ‘Software Engineering Institute’ at Carnegie-Mellon University; initiated by the U.S. Defense Department to help improve software development processes.

· CMM = ‘Capability Maturity Model’, developed by the SEI. It’s a model of 5 levels of organizational ‘maturity’ that determine effectiveness in delivering quality software. It is geared to large organizations such as large U.S. Defense Department contractors. However, many of the QA processes involved are appropriate to any organization, and if reasonably applied can be helpful. Organizations can receive CMM ratings by undergoing assessments by qualified auditors.

Level 1 – characterized by chaos, periodic panics, and heroic efforts required by individuals to successfully complete projects. Few if any processes in place; successes may not be repeatable.

Level 2 – software project tracking, requirements management, realistic planning, and configuration management processes are in place; successful practices can be repeated.

Level 3 – standard software development and maintenance processes are integrated throughout an organization; a Software Engineering Process Group is in place to oversee software processes, and training programs are used to ensure understanding and compliance.

Level 4 – metrics are used to track productivity, processes, and products. Project performance is predictable, and quality is consistently high.

Level 5 – the focus is on continuous process improvement. The impact of new processes and technologies can be predicted and effectively implemented when required.

· ISO = ‘International Organization for Standards’ – The ISO 9001, 9002, and 9003 standards concern quality systems that are assessed by outside auditors, and they apply to many kinds of production and manufacturing organizations, not just software. The most comprehensive is 9001, and this is the one most often used by software development organizations. It covers documentation, design, development, production, testing, installation, servicing, and other processes. ISO 9000-3 (not the same as 9003) is a guideline for applying ISO 9001 to software development organizations. The U.S. version of the ISO 9000 series standards is exactly the same as the international version, and is called the ANSI/ASQ Q9000 series. The U.S. version can be purchased directly from the ASQ (American Society for Quality) or the ANSI organizations. To be ISO 9001 certified, a third-party auditor assesses an organization, and certification is typically good for about 3 years, after which a complete reassessment is required. Note that ISO 9000 certification does not necessarily indicate quality products – it indicates only that documented processes are followed.

Prototype Development

The goal of prototyping based development is to counter the first two limitations of the waterfall model discussed earlier. The basic idea here is that instead of freezing the requirements before a design or coding can proceed, a throwaway prototype is built to understand the requirements. This prototype is developed based on the currently known requirements. Development of the prototype obviously undergoes design, coding and testing. But each of these phases is not done very formally or thoroughly. By using this prototype, the client can get an “actual feel” of the system, since the interactions with prototype can enable the client to better understand the requirements of the desired system.

Prototyping is an attractive idea for complicated and large systems for which there is no manual process or existing system to help determining the requirements. In such situations letting the client “plan” with the prototype provides invaluable and intangible inputs which helps in determining the requirements for the system. It is also an effective method to demonstrate the feasibility of a certain approach. This might be needed for novel systems where it is not clear that constraints can be met or that algorithms can be developed to implement the requirements. The process model of the prototyping approach is shown in the figure below.

Prototyping Model
Prototyping Model

The basic reason for little common use of prototyping is the cost involved in this built-it-twice approach. However, some argue that prototyping need not be very costly and can actually reduce the overall development cost. The prototype are usually not complete systems and many of the details are not built in the prototype. The goal is to provide a system with overall functionality. In addition, the cost of testing and writing detailed documents are reduced. These factors helps to reduce the cost of developing the prototype. On the other hand, the experience of developing the prototype will very useful for developers when developing the final system. This experience helps to reduce the cost of development of the final system and results in a more reliable and better designed system.

Testing Issues

Dear all,following question is based on my own personal experience and you can say that this question is often asked whenever you are facing some technical face to face. hope so its beneficial  for you

content referenced from  popular Testing sites

Why does software have bugs?

What’s the big deal about ‘requirements’?

What’s the role of documentation in QA?

What steps are needed to develop and run software tests?

What’s a ‘test plan’?

What’s a ‘test case’?

What should be done after a bug is found?

What if the software is so buggy it can’t really be tested at all?

What if there isn’t enough time for thorough testing?

What if the project isn’t big enough to justify extensive testing?

What can be done if requirements are changing continuously

What if the application has functionality that wasn’t in the requirements?

.How can Software QA processes be implemented without stifling productivity?

What if an organization is growing so fast that fixed QA processes are impossible?

How does a client/server environment affect testing?

How can World Wide Web sites be tested? (refer to my web testing post)

What is ‘Software Quality Assurance’?

What are some recent major computer  failures caused by software bugs?

Why is it often hard for management to get serious about quality assurance?

What is verification? validation?

What kinds of testing should be considered?

What are  common problems in the  software development process?

What is SEI? CMM? ISO? IEEE? ANSI? Will it help?

Will automated testing tools make testing easier?

hope so its beneficial  for you

content referenced from  popular Testing sites

Tag Cloud