Web-based system testing is in Web-based system development. In the absence of strict processes, we develop, release, implement, and maintain the Web, there may be some serious problems, and the possibility of failure is very high. Moreover, as Web-based systems become increasingly complex, failure of a project may lead to many problems. When this happens, our confidence in the Web and the Internet may be irretrievably shaken, leading to a Web crisis. Moreover, the Web crisis may be more serious and broader than the software crisis faced by software developers.
In the Web engineering process, testing, validation, and acceptance based on Web systems is an important and challenging task. The Web-based system test is different from the traditional software test. It not only needs to check and verify whether the system runs according to the design requirements, but also tests whether the system displays properly on the browsers of different users. It is important to test security and availability from the end user's perspective. However, the unpredictability of Internet and Web Media makes it difficult to test Web-based systems. Therefore, we must study new methods and technologies for testing and evaluating complex Web-based systems. Generally, the software release cycle is calculated by month or year, while the Web application release cycle is calculated by day or even by hour.
Web testers must deal with shorter release cycles. Testers and test managers are facing a transformation from a traditional C/S architecture and framework environment to a rapidly changing Web application system.
I. Function Testing
1. The link test link is a major feature of the Web application system. It is the main means of switching between pages and guiding users to access pages with unknown addresses. The link test can be divided into three aspects. First, test whether all links actually link to the page of The Link as instructed; second, test whether the page of the link exists; and finally, ensure that there is no isolated page on the Web application system, an isolated page means that no link is directed to the page. Only the correct URL address can be accessed. The link test can be performed automatically. Many tools are available now. The link test must be completed in the integration test phase, that is, the link test must be conducted after all pages of the Web application system are developed.
2. form test when a user submits information to the Web application system administrator, a form operation is required, such as user registration, login, and information submission. In this case, we must test the integrity of the submitted operation to verify the correctness of the information submitted to the server. For example, whether the date of birth and occupation entered by the user are appropriate, and whether the province and city of the user are matched. If the default value is used, check whether the default value is correct. If the form can only accept specified values, the test is also required. For example, you can only accept certain characters. during testing, you can skip these characters to see if the system reports an error.
3. Cookies are usually used to store user information and user operations in an application system. When a user uses Cookies to access an application system, the Web server will send information about the user and store the information in the form of Cookies on the client computer. This can be used to create dynamic and custom pages or store login information. If the Web application system uses Cookies, you must check whether Cookies work properly. The test content may include whether Cookies work, whether they are saved at a scheduled time, and whether refreshing affects Cookies.
4. design language test the differences in Web design language versions can cause serious problems on the client or server side, such as the HTML version used. This issue is especially important when developers are not working together in a distributed environment. In addition to the HTML Version, different scripting languages, such as Java, JavaScript, ActiveX, VBScript, and Perl, must also be verified.
5. Database testing plays an important role in Web application technology. databases provide space for the management, operation, query, and implementation of user requests for data storage of Web application systems. In Web applications, the most common database type is relational database. You can use SQL to process information. In a Web application system that uses databases, two types of errors may occur: data consistency errors and output errors. Data Consistency errors are mainly caused by incorrect form information submitted by users, and output errors are mainly caused by network speed or program design problems, you can perform tests separately.
Ii. Performance Testing
1. connection speed test
The speed at which users connect to the Web application system varies according to the changes in the way they access the Internet. They may be dialing or broadband access. When downloading a program, the user can wait for a long time, but this is not the case if only one page is accessed. If the response time of the Web system is too long (for example, more than 5 seconds), the user will leave without patience. In addition, some pages have time-out restrictions. If the response speed is too slow and the user may not have time to browse the content, they need to log on again. In addition, the connection speed is too slow, and data may be lost, so that users cannot obtain real pages.
2. Load Testing
Server Load balancer is used to measure the performance of a Web system at a certain load level to ensure that the Web system can work properly within the required range. The load level can be the number of users simultaneously accessing the Web system at a certain time point, or the number of online data processing. For example, how many users can be online simultaneously in a Web application system? If this number is exceeded, what will happen? Can a Web application system process a large number of users' requests to the same page?
3. Stress Testing
The load test should be conducted in the actual network environment after the Web system is released. Because there is always a limited number of internal employees, especially project team members, and the number of requests that a Web system can process at the same time will far exceed this limit, so only on the Internet can accept load tests, the results are correct and credible. Stress testing refers to the reflection of a testing system that actually destroys a Web application system. Stress Testing tests System Restrictions and fault recovery capabilities, that is, to test whether the Web application system will crash and under what circumstances. Hackers often provide wrong data load until the Web application system crashes and then obtain access right when the system restarts. The stress testing area includes forms, login pages, and other information transmission pages.
Iii. Availability Test
1. Navigation Test navigation describes how users operate on a page, such as buttons, dialog boxes, lists, and windows, between different user interface controls; or between different connection pages. By considering the following questions, you can determine whether a Web application system is easy to navigate: Is navigation intuitive? Can the main part of the Web system be accessed through the home page? Does the Web system need site maps, search engines, or other navigation help? Placing too much information on a page often results in the opposite effect as expected. Web application system users tend to be objective-driven. They quickly scan a Web application system to see if there is any information that meets their needs. If not, they will leave quickly. Few users are willing to take the time to familiarize themselves with the structure of the Web application system. Therefore, the Web Application System navigation should be as accurate as possible. Another important aspect of navigation is whether the Page Structure, navigation, menu, and connection style of the Web application system are consistent. Make sure that the user intuitively knows whether there is 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 test the user navigation function, so that end users can participate in this test, the effect will be more obvious.
2. Graphic Testing
In the Web application system, appropriate images and animations can serve both advertising and page beautification functions. A Web application system can contain images, animations, borders, colors, fonts, backgrounds, and buttons.
The graphic test content includes:
(1) Make sure that the image has a clear purpose. Do not pile up images or Animations together to avoid wasting transmission time. The image size of a Web application system should be as small as possible, and a clear description of something should be given. Generally, all images are linked to a specific page.
(2) Verify that the font styles of all pages are consistent.
(3) the background color should be matched with the font color and foreground color.
(4) The image size and quality are also an important factor. JPG or GIF compression is generally used.
3. content testing
Content testing is used to verify the correctness, accuracy, and relevance of information provided by the Web application system. Whether the information is correct indicates whether the information is reliable or mistakenly transmitted. For example, in the commodity price list, incorrect prices may lead to financial problems or even legal disputes. The accuracy of information refers to whether there are syntactic or spelling errors. This test is usually conducted using some text processing software, such as Microsoft Word's "Pinyin and syntax check" function; the relevance of information refers to whether the list or entry of information related to the current browsing information can be found on the current page, that is, the so-called "related article list" in a general Web site ".
4. Overall Interface Test
The overall interface refers to the Page Structure Design of the entire Web application system, which gives users a holistic sense. For example, do users feel comfortable when Browsing Web application systems? Do they intuitively know where the information they are looking for is? 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. Generally, the Web application system conducts a questionnaire on the homepage to obtain feedback from the end user. For all usability tests, external personnel (not associated with Web application system development or few people in contact) are required, preferably end users.
Iv. Client compatibility test
1. Platform Testing
There are many different types of operating systems on the market. The most common types are Windows, Unix, Macintosh, and Linux. Which operating system is used by the end user of the Web application system depends on the configuration of the user system. In this way, compatibility issues may occur. The same application may run normally in some operating systems, but may fail to run in other operating systems. Therefore, before the Web system is released, you need to perform compatibility tests on the Web system under various operating systems.
2. browser testing
Browser is the core component of the Web Client. browsers from different vendors have different support for Java, JavaScript, ActiveX, plug-ins or different HTML specifications. For example, ActiveX is a Microsoft product, designed for Internet Explorer, JavaScript is a Netscape Product, and Java is a Sun product. In addition, the frameworks and hierarchies are displayed differently in different browsers, or even not at all. Different browsers have different security and Java settings. One way to test browser compatibility is to create a compatibility matrix. In this matrix, the adaptability of browsers of different vendors and versions to some components and settings is tested.
V. Security Testing
The Security Test Areas of Web application systems are as follows:
(1) The current Web application system is basically registered first and then logged on. Therefore, you must test valid and invalid user names and passwords. You must check whether the user name is case sensitive, how many times you can try, and whether you can directly browse a page without logging in.
(2) Whether the Web application system has a timeout limit. That is to say, if a user does not click any page within a certain period of time (for example, 15 minutes) after logging on, the user must log on again to use the system normally.
(3) log files are crucial to ensure the security of Web application systems. You need to test whether the information is written into the log file and traceable.
(4) When secure sockets are used