Review of solutions for testing sites


If your site is no longer simply a static Web page and should provide interactive services to visitors – it means you need to think about testing it before placing on the server. And the more sophisticated web-based system you are developing – the more it needs testing. Because now the sites are already full applications – e-shop, forum, mailing services and much more – all of these interactive services in some way interact with users from other servers (and often simultaneously). This makes them similar to conventional applications, which we call the desktop – in some cases the difference between them only in the area code execution. If the Web site is part of your business, pre-testing should show you how the site will handle the load, as will be the interaction with users and other data. Here at this moment we discuss in more detail.

And so we have a website (server), which provides a service to users. What kind of testing are available for websites, and those tests necessary or desirable to carry out that would be sure that he will not fail at a critical moment, and users will be satisfied?

The first test, which can be called virtually all major online services, interacting with the user – this is a test for «usability». Such testing is one of the most expensive, because the most valuable information can be obtained only from real users, watching them work with your site – but such studies require expensive infrastructure and time, they are difficult to automate.

Methods of testing sites are similar to conventional testing, desktop applications. This is a special test record a macro script that mimics the action of real users – "go on the first page – enter the username and password – click on the button – go to link and so on." Then programmatically create multiple virtual users (thousands or more, with a serious test) and they "go" to the site by checking out his work. This was all followed the manager (normal, man? "), Building on the basis of the data report of the study site.

These test facilities can be quite large – even in the literal sense, the volume of distribution of hundreds of megabytes. As an example – a comprehensive solution for testing Web Applications Empirixe-TEST suite. e-TEST can be used to test complex web applications built using Microsoft. NET, J2EE, Web services, as well as the usual applications and web sites. The complex includes solutions for versatile testing – from the interface before testing the load capacity, safety, and even conduct tests of remote sites in real terms – through firewalls, proxy servers, etc. Specifically, for testing the interface of the e-TEST suite includes a component called e-Tester – in the original it is called «Automated Regression and Functional Testing Tool for Web Applications (Record / Playback)». This component is precisely designed to record certain action sequences and replay them later, mimicking the user. Another component, e-Monitor, a real-time testing collects statistics and information about errors that occurred, and also allows you to schedule tests (eg, if you are testing a remote operating site, it can be tested in different time periods).

Another type of test – Check references. In a large test suite it is integrated in the usability testing, or in the validation of HTML-code, but there are many simple ones utilities for such inspections. Such testing is important for internal links (in the case of large and branched portals), and external – if, for example, directory sites, or just plain page "Links". Perhaps such a test – it is one of the few specific tests for Web applications and sites. In addition, such a test can and should be periodically carried out on live site – in fact over time the structure is changing, and some links may become invalid.

It should be noted separately tested for safety. This is a very important type of test, because of the server’s security depends almost everything – both business and user confidence, and safety information. True, unlike other tests, safety testing should be performed regularly. In addition, testing is exposed not only the particular site or web application, and the entire server completely – and a Web server and operating system and all network services. As in the case of other tests, the program is "pretending" real user-cracker and tries to apply to the server all the known methods of attack, and it verifies all vulnerability. Result will be a report about the found vulnerabilities and recommendations to address them. Typically, such security scanners are sold as a standalone product – for example, one of the best scanners, XSpider, which we wrote in the article "Knock, knock, to check you …"

The next type of testing is to test for resistance to high loads – Load-testing, stress-test or performance test. This test simulates simultaneous operation of hundreds or thousands of visitors (all of which can "walk" on the site in accordance with its script), checking whether the stable operation of the site under heavy load. In addition, you can simulate short-term peak loads, when the number of visitors increases abruptly – it is very important for news resources and other sites with uneven audience. In this test tests not only and not the site itself, as co-coordinated work of the whole complex – the hardware of the server, web server software kernel (engine) and other components of the site. Such solutions can be attributed, and described the utility WAPT, as well as a number of other – Microsoft Web Application Stress Tool (WAS), SilkPerformer, Webserver Stress Tool, and others.

Another type of testing is to check the fidelity HTML-code of your pages. For this kind of testing says many tools – from simple scripts to perl-e to powerful validators that check the entire site for compliance with (and some validators can automatically correct the deficiencies found, for example, missing closing tags, etc.). Often these tools embedded in the web-editors, there are browsers with built-in validators. An example of such a test is a tool Tidy – originally a console program, it has several different graphical interfaces that can automatically highlight bad code and fix some bugs. It can also be used to develop – TidyLib includes all necessary functionality and can connect to programs written in Java, Pascal,. NET, C + +, Perl, PHP.

Here we are in general considered some kind of testing web sites. Some of them are very easily carried out in automatic mode and free programs, others require careful organization and sophisticated analysis of results, involvement of independent testers and evaluators, sophisticated equipment. Some programs are very simple – just a few dozen lines of perl-e or a couple of kilobytes of executable file, while others represent the whole software systems, designed to work with dozens of testers, engineers and analysts. But they all serve one purpose – to help you make a quality, convenient, secure and stable web site.

See Also

    Advertising

    Archives