Web-based system test method
Summary
With the rapid growth of Internet and Intranet / Extranet, Web has had a profound impact on business, industrial, banking, finance, education, government and entertainment and our work and life. Many traditional information and database systems are being transplanted to the Internet, and e-commerce grows rapidly, and has already exceeded the national boundaries. A wide range of, complex distributed applications are in the web environment. The popularity of the web is because it can provide information that supports all types of content connections, easy to access end users.
Yogesh Deshpande and Steve Hansen proposed the concept of web engineering in 1998. As an emerging discipline, Web Project advocates a process and system-based approach to develop high-quality Web-based systems. It "uses reasonable, scientific engineering and management principles, develop, release and maintain web-based systems with strict and systematic methods." At present, the research on Web project is mainly carried out abroad, and China has just started.
In web-based system development, if there is a lack of rigorous processes, we may encounter some serious problems in the development, release, implementation, and maintenance of the Web, and the possibility of failure is large. Moreover, as a web-based system becomes more complex, a project failure will cause many problems. When this happens, our confidence in Web and Internet may not be saved, causing the web crisis. Moreover, the Web crisis may be more serious than the software crisis faced by software developers.
During the web engineering process, the Web system-based testing, confirmation and acceptance is an important and challenging job. WEB-based system test is different from traditional software testing, which not only needs to be checked and verified whether the design is required, but also tests whether the display of the browser of different users is appropriate. It is important to perform security and availability testing from the perspective of end users. However, unpredictability of Internet and web media makes it difficult to test web-based systems. Therefore, we must study new methods and techniques for testing and evaluating complex Web-based systems.
General Software Publishing cycle is calculated in the month or year, while the release cycle of the web application is calculated even in hours. Web testers must handle shorter release cycles, testers and test managers face the transition from testing traditional C / S structures and frameworks to test fast-changing web applications.
First, function test
1, link test
The link is a major feature of the web application system, which is switched between the page and guides the user to go to some main means of not knowing the address. Link tests can be divided into three aspects. First, test whether all links are indicated by the indication, the page is connected to the page; second, the page is linked to the page exists; Only the correct URL address can be accessed.
Link tests can be made automatically, and there are now many tools available. The link test must be completed during the integrated test phase, that is, link tests are performed after all the page development of the entire web application system.
2, form test
When the user is applied to the web application
System administrator
When submitting information, you need to use a form operation, such as user registration, login, information commit, etc. In this case, we must test the integrity of the submission operation to verify the correctness of the information submitted to the server. For example: the user fills in the date of birth and the occupation properly, and the province that is filled out is matched with the city. If you use the default value, you have to verify the correctness of the default value. If the form can only accept some values specified, it is also subject to test. For example: You can only accept some characters, you can skip these characters when testing, see if the system will report an error.
3, cookies test
Cookies is usually used to store user information and user operations in an application system. When a user accesses an application system, the web server will send this information to the client computer in the form of cookies in cookies. On, this can be used to create dynamic and custom pages or store logins and other information. If the web application uses cookies, you must check if the cookies will work properly. The contents of the test may include whether cookies work, whether to save at a predetermined time, and what is refreshed for cookies, etc.
4, design language test
The difference in web design language versions can cause serious problems with clients or server-side, such as which version of HTML is used. When developing in a distributed environment, the developers are not together, this problem is particularly important. In addition to the version of HTML, different scripting languages, such as Java, JavaScript, ActiveX, VBScript or Perl, etc. also verify.
5, database test
In web application technology, the database plays an important role. The database provides space for the management, operation, query, and implementation of the user's request, etc. of the Web application. In web applications, the most common database types are relational databases, which can be processed using SQL.
In a web application using a database, two errors may occur, named data consistency errors and output errors, respectively. The data consistency error is mainly due to incorrect form information submitted by the user, and the output error is mainly caused by both the network speed or program design problem, etc., can be tested separately.
Second, performance test
1, connection speed test
The speed of the user is connected to the web application varies depending on the change in the network, they may be a telephone dial, or a broadband Internet. When you download a program, the user can wait for a long time, but if only access one page is just like this. If the web system response time is too long (eg more than 5 seconds), the user will leave because there is no patience waiting.
In addition, some pages have timeout restrictions. If the response speed is too slow, the user may have not been able to browse content, it will need to be re-landed. Moreover, the connection speed is too slow, and it may also cause data loss, and the user does not receive a real page.
2, load test
The load test is to measure the performance of the web system on a certain load level to ensure that the Web system works normally within the scope of demand. The load level can be the number of users who simultaneously access the web system at a time, or the number of online data processing. For example: How many users can be online? What is the phenomenon if it exceeds this quantity? Can the web application handle a large number of requests for the same page?
3, pressure test
Load tests should be arranged in a Web system release in a practical network environment. Because of an internal employee, especially the project group personnel is always limited, and a web system can deal with the number of requests at the same time beyond this limit, so only on the Internet, accept the load test, the result is correct Trusted.
Performing a pressure test refers to a reflection of a web application that actually destroying a web application. Pressure test is the limitations and fault recovery capabilities of the test system, that is, the test web application will not collapse, and in what circumstances will collapse. Hackers often provide erroneous data load until the web application crashes, then access to access when the system restarts.
The region of the pressure test includes a form, a login and other information transfer page, and the like.
Third, usability test
1, navigation test
Navigation describes the way the user operates within a page, between different user interface controls, such as buttons, dialogs, lists, and windows, etc., or between different connection pages. By considering the following questions, you can determine if a web application system is easy to navigate: Is navigation intuitive? Is the main part of the web system accessible to access? Does the web system need a site map, search engine, or other navigation help? Too much information on a page is often played with the opposite effect. The user of the web application system tends to drive, quickly scan a web application, see if there is information that satisfies yourself, if not, will leave quickly. Few users are willing to spend time to familiarize with the structure of the web application system, so the web application system navigation help should be as accurate as possible.
Another important aspect of navigation is the page structure, navigation, menu, and connection style of the web application system. Make sure the user knows if there is content in the web application, where is the content.
Once the level of the web application system is decided, it is necessary to test the user navigation function, so that end users participate in this test, the effect will be more obvious.
2, graphics test
In a web application, the appropriate pictures and animations can play the role of advertising, and can play the ability to beautify the page. A web application system can include pictures, animations, borders, colors, fonts, backgrounds, buttons, etc. The graphical test is:
(1) To ensure that the graphics have clear uses, pictures or animations don't pile together, so as not to waste the transfer time. The image size of the web application system should be small as possible, and you can clearly explain something, usually link to a specific page.
(2) Verify that all the style of all page fonts is consistent.
(3) Background color should match the font color and foreground color.
(4) The size and quality of the picture are also a very important factor, generally using JPG or GIF compression.
3, content test
Content Test Use to verify the correctness, accuracy and correlation of the web application providing information.
The correctness of information means that the information is reliable or misfinalized. For example, in a list of commodity prices, the wrong price may cause financial problems and even lead to legal disputes; the accuracy of information refers to whether there is a grammar or spelling error. This test usually uses some text processing software, such as using Microsoft Word "Pinyin and Syntax Check" function; the correlation of information refers to whether or not the information list or entry related to the current browsing information is available in the current page, that is, The so-called "related articles list" in the general web site.
4, overall interface test
The overall interface refers to the page structure design of the entire web application system, which is an overall sense of the user. For example: Do you feel comfortable when a user browses a web application system? Do you know where you want to find? Is the design style of the entire web application system?
The test process for the overall interface is actually a process of investigating end users. The general web application system takes the form of a survey questionnaire on the home page to get feedback from the end user.
For all availability tests, there is a need for external personnel (with the WEB application system to develop without contact or contact with few people), it is best to participate in the end user.
Fourth, client compatibility test
1, platform test
There are many different operating system types in the market, the most common with Windows, UNIX, Macintosh, Linux, etc. Which operating system uses the end user of the web application system depends on the configuration of the user system. This way, compatibility issues may occur, the same application may run normally under certain operating systems, but may fail under additional operating systems.
Therefore, before the WEB system is released, it is necessary to compatibility with the Web system under various operating systems. 2, browser test
The browser is the core component of the web client, from the browser from different vendors to Java, JavaScript, ActiveX, Plug-Ins, or different HTML specifications. For example, ActiveX is Microsoft's product, designed for Internet Explorer, JavaScript is a product of Netscape, and Java is Sun's products, etc. In addition, the frames and hierarchical styles also have different displays in different browsers, even at all. Different browsers are different for security and Java settings.
One way to test browser compatibility is to create a compatibility matrix. In this matrix, test different vendors, different versions of the browser on certain components and settings.
V. Safety Test
The security test area of the web application system is:
(1) The current web application system is basically registered first, after login. Therefore, it is necessary to test the effective and invalid username and password. It should be noted whether the case is sensitive. How many times can you try, whether you can browse a page directly without landing and you can browse a page.
(2) WEST-time whether the web application system has timeout, that is, after the user logs in for a certain period of time (for example, 15 minutes) did not click on any pages, and if you need to be re-logged in to use it.
(3) In order to ensure the security of the web application system, the log file is critical. Need to test whether the relevant information written into the log file, whether it can be tracked.
(4) When using a safety socket, it is necessary to test whether encryption is correct and check the integrity of the information.
(5) The script of the server is often constitutes a security vulnerability, which is often used by hackers. Therefore, it is also necessary to test the problem that the server is placed and editing the script without authorization.
Six, summary
This article discusses web-based system test methods from the aspects of function, performance, availability, client compatibility, security, etc..
Web-based system testing and traditional software tests are both the same, there are also different places, which puts forward new challenges for software testing. Web-based system tests not only need to be checked and verified whether the design is run, but also evaluates whether the display of the browser end of the system in different users is appropriate. It is important to perform security and availability testing from the perspective of end users.