What web testing should pay attention to

Web-based system testing and traditional software testing have both similarities and differences, which bring new challenges to software testing. Web-based system testing not only needs to check and verify that it operates as designed, but also evaluates the appropriateness of the system's display on different users' browsers. It is important to also conduct security and usability testing from the end user's perspective. This paper discusses Web-based system testing methods from the aspects of function, performance, usability, client compatibility, security, etc.

With the rapid growth of the Internet and Intranet/Extranet, the Web has had a profound impact on business, industry, banking, finance, education, government and entertainment, as well as our work and life. Many traditional information and database systems are being migrated to the Internet, and e-commerce is growing rapidly and has long since transcended national borders. A wide range of complex distributed applications are emerging in the Web environment. The popularity and ubiquity of the Web is due to its ability to provide information distribution that supports all types of content connections and is easily accessible to end users.

Yogesh Deshpande and Steve Hansen proposed the concept of Web Engineering in 1998. Web engineering, as an emerging discipline, advocates the use of a process and systems approach to the development of high-quality web-based systems. It "uses sound, scientific engineering and management principles to develop, publish, and maintain Web-based systems with a rigorous and systematic approach." At present, the research on web engineering is mainly carried out abroad, and it has just started in China.

In the development of Web-based systems, if there is a lack of strict procedures, we may encounter some serious problems in the process of developing, publishing, implementing and maintaining the Web, and there is a great possibility of failure. And, as Web-based systems become more complex, the failure of a project can lead to many problems. When this happens, our faith in the Web and the Internet may be shaken irretrievably, causing a Web crisis. And, the Web crisis is likely to be more severe and widespread than the software crisis facing software developers.

In the process of web engineering, the testing, validation and acceptance of web-based systems is an important and challenging task. Web-based system testing is different from traditional software testing in that it not only needs to check and verify that it operates as designed, but also test whether the system is properly displayed on different users' browsers. It is important to also conduct security and usability testing from the end user's perspective. However, the unpredictability of the Internet and Web media makes testing Web-based systems difficult. Therefore, we must investigate new methods and techniques for testing and evaluating complex Web-based systems.

The release cycle of general software is calculated in months or years, while the release cycle of Web applications is calculated in days or even hours. Web testers have to deal with shorter release cycles, and testers and test managers are faced with a transition from testing traditional C/S structures and framework environments to testing rapidly changing Web application systems.
1. Functional test
1. Link test
Link is a main feature of Web application system, it is the main means to switch between pages and guide users to some pages that do not know the address. Link testing can be divided into three areas. First, test whether all links actually link to the linked page as indicated; secondly, test whether the linked page exists; finally, ensure that there are no orphaned pages on the Web application system. The so-called orphaned page means that there is no link pointing to the page , can only be accessed if you know the correct URL address. Link testing can be automated, and many tools are now available. The link test must be completed in the integration test phase, that is, after the development of all pages of the entire Web application system is completed.

2. Form test
When a user submits information to the web application system administrator, form operations are required, such as user registration, login, and information submission. In this case, we must test the integrity of the submit operation to verify the correctness of the information submitted to the server. For example: whether the date of birth and occupation filled in by the user are appropriate, whether the province to which the user belongs matches the city where they are located, etc. If a default value is used, also verify the correctness of the default value. Also test if the form can only accept certain values ​​specified. For example: only certain characters can be accepted, and these characters can be skipped during the test to see if the system will report an error.

3. Cookies test
Cookies are usually used to store user information and user operations in an application system. When a user accesses an application system using Cookies, the Web server will send information about the user and store the information in the form of Cookies. On client computers, this can be used to create dynamic and custom pages or to store information such as logins. If the web application system uses cookies, it is necessary to check whether the cookies can work properly. The content of the test can include whether the cookies work, whether they are saved according to the predetermined time, and what effect does the refresh have on the cookies, etc.

4. Design language testing
Differences in Web design language versions can cause serious problems on the client or server side, such as which version of HTML to use. This issue is especially important when developing in a distributed environment where the developers are not together. In addition to the HTML version issue, different scripting languages ​​such as Java, javascript, ActiveX, VBScript or Perl are also validated.

5. Database test
In the Web application technology, the database plays an important role, and the database provides space for the management, operation, query and realization of the user's request for data storage of the Web application system. In web applications, the most common type of database is a relational database, which can use SQL to process information. In a Web application system using a database, in general, two kinds of errors may occur, namely data consistency errors and output errors. Data consistency errors are mainly caused by incorrect form information submitted by users, while output errors are mainly caused by network speed or programming problems. For these two cases, tests can be performed separately.

2. Performance test
1. Connection speed test The speed at which
users connect to the Web application system varies according to the way they surf the Internet. They may be dialing up a phone or surfing the Internet via broadband. When downloading a program, the user can wait a long time, but not if only visiting a page. If the web system takes too long to respond (for example, more than 5 seconds), the user will be impatient and leave. In addition, some pages have a timeout limit. If the response speed is too slow, users may not have time to browse the content and need to log in again. Moreover, the connection speed is too slow, may also cause data loss, so that users can not get the real page.

2. Load testing
Load testing is to measure the performance of the Web system at a certain load level to ensure that the Web system can work normally within the required range. The load level can be the number of users accessing the Web system at the same time, or the number of online data processing. For example: How many users can the Web application system allow online at the same time? What happens if this number is exceeded? Can a web application system handle a large number of user requests for the same page?

3. Stress test
Load testing should be arranged in the actual network environment after the Web system is released. Because an enterprise's internal employees, especially the project team members are always limited, and the number of requests that a Web system can handle at the same time will far exceed this limit, so the result is correct only when it is placed on the Internet and subjected to load testing. believable. Stress testing refers to actually destroying a web application system and testing the system's reflection. Stress testing is to test the limitations and fault recovery capabilities of the system, that is, to test whether the Web application system will crash, and under what circumstances will it crash. Hackers often provide the wrong data payload until the web application crashes, and then gains access when the system restarts. Areas of stress testing include forms, login and other information transfer pages, etc.
Third, usability testing
1. Navigation testing
Navigation describes the way users operate within a page, between different user interface controls, such as buttons, dialog boxes, lists, and windows; or between different connected pages. Whether a web application is easy to navigate can be determined by considering the following questions: Is the navigation intuitive? Are major parts of the web system accessible from the home page? Does the web system need sitemaps, search engines, or other navigational aids?

Putting too much information on one page can often have the opposite effect of what is intended. Users of Web application systems tend to be purpose-driven, scan a Web application system quickly to see if there is information that meets their needs, and if not, they will quickly leave. Few users are willing to take the time to become familiar with the structure of a web application, so web application navigation aids should be as accurate as possible. Another important aspect of navigation is whether the page structure, navigation, menu, and connection styles of the Web application system are consistent. Make sure that users intuitively know if there is still content in the web application system, and where the content is. Once the level of the Web application system is determined, it is necessary to start to test the user navigation function, and the effect will be more obvious if the end user participates in this test.

2. Graphics test
In the Web application system, appropriate pictures and animations can not only play the role of advertising, but also play the function of beautifying the page. The graphics of a Web application system can include pictures, animations, borders, colors, fonts, backgrounds, buttons, etc. The contents of the graphics test are:
(1) Make sure that the graphics have a clear purpose, and pictures or animations should not be piled up randomly, so as not to waste transmission time. The image size of the web application system should be as small as possible, and it should be able to clearly explain something, usually linking to a specific page.
(2) Verify that the style of all page fonts is consistent.
(3) The background color should match the font color and foreground color.
(4) The size and quality of the picture is also a very important factor, generally using JPG or GIF compression.

3. Content testing
Content testing is used to test the correctness, accuracy and relevance of the information provided by the Web application system. Correctness of information refers to whether the information is reliable or misrepresented. For example, in commodity price lists, the wrong price can cause financial problems or even legal disputes; the accuracy of the information refers to whether there are grammatical or spelling errors. This kind of test is usually carried out using some word processing software, such as using the "pinyin and grammar check" function of Microsoft Word; the relevance of information refers to whether a list or entry of information related to the current browsing information can be found on the current page, that is So-called "Related Article Lists" in general Web sites.

4. Overall interface test
Overall interface refers to the page structure design of the entire Web application system, giving users a sense of integrity. For example: Do users feel comfortable navigating web applications and intuitively know where the information they are looking for is located? Is the design style of the entire web application system consistent? The testing process of the overall interface is actually a process of investigating the end user. The general Web application system takes the form of a questionnaire on the home page to get feedback from end users. As with all usability testing, outsiders (people with little or no connection to Web application development) are required, preferably end users.

4. Client Compatibility Test
1. Platform Test There are many different operating system types on the
market , the most common ones are Windows, Unix, Macintosh, Linux and so on. Which operating system the end user of the Web application system uses depends on the configuration of the user's system. In this way, compatibility issues may occur, and the same application may work well under some operating systems, but may fail to run under other operating systems. Therefore, before the Web system is released, compatibility testing of the Web system under various operating systems is required.

2. Browser testing
Browser browsers from different manufacturers have different support for Java, javascript, ActiveX, plug-ins or different HTML specifications. For example, ActiveX is a product of Microsoft and is designed for Internet Explorer, javascript is a product of Netscape, Java is a product of Sun and so on. Also, frame and hierarchy styles are displayed differently in different browsers, or even not displayed at all. Different browsers have different settings for security and Java. One way to test browser compatibility is to create a compatibility matrix. In this matrix, test the suitability of certain components and settings for browsers from different vendors and versions.

V. Security Testing
The security testing areas of Web application systems mainly include:
(1) The current Web application system basically adopts the method of registering first and then logging in. Therefore, you must test for valid and invalid usernames and passwords, pay attention to case sensitivity, limit how many times you can try, whether you can browse a page without logging in, etc.
(2) Whether the Web application system has a timeout limit, that is, if the user does not click on any page within a certain period of time (for example, 15 minutes) after logging in, whether it needs to log in again for normal use.
(3) In order to ensure the security of the Web application system, log files are crucial. It is necessary to test whether the relevant information is written to the log file and whether it is traceable.
(4) When using a secure socket, also test whether the encryption is correct and check the integrity of the information.
(5) Scripts on the server side often constitute security loopholes, and these loopholes are often exploited by hackers. So, also test the problem of not being able to place and edit scripts on the server side without authorization.

6. Summary
This paper discusses the Web-based system testing methods from the aspects of function, performance, usability, client compatibility, security and so on. Web-based system testing and traditional software testing have both similarities and differences, which bring new challenges to software testing. Web-based system testing not only needs to check and verify that it operates as designed, but also evaluates the appropriateness of the system's display on different users' browsers. It is important to also conduct security and usability testing from the end user's perspective.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326353855&siteId=291194637