1 App test basic Process 2
1.1 Flowchart 2
1.2 Test Cycle 3
1.3 Test Resources 3
1.4 daily newspaper and product launch report 3
2 App Test points 3
2.1 Safety Test 3
2.1.1 Software Permissions 3
2.1.2 Installation and uninstallation security 4
2.1.3 Data Security 4
2.1.4 Communication Security 5
2.1.5 Man-Machine interface Security 5
2.2 Installing and uninstalling tests 5
2.2.1 Installation 6
2.2.2 Uninstall 6
2.3 UI Test 6
2.3.1 Navigation Test 7
2.3.2 Graphics Test 7
2.3.3 Content Test 7
2.4 Functional Test 7
2.4.1 Run 8
Front and rear switch for 2.4.2 applications 8
2.4.3 Free Login 9
2.4.4 Data Update 9
2.4.5 Offline Browsing 10
2.4.6 App Update 10
2.4.7 positioning, Camera service 10
2.4.8 Time Test 11
2.4.9 Push Test 11
2.5 Performance Test 11
2.6 Cross-event test 12
2.7 Compatibility Test 12
2.8 Regression Test 12
2.9 Upgrade, update test 12
2.10 User Experience Test 13
2.11 Hardware Environment Test 13
2.11.1 gesture Operation Test 13
2.11.2 Network Environment 13
2.11.3 server down or 404, 502, etc. test 14
2.12 Interface Test 14
2.13 Client Database Test 14
1 App Testing Basic process
1.2 Test cycle
The test cycle can be determined by the project development cycle to determine the test time, the general test time is two or three weeks (that is, 15 working days), depending on the project situation and version quality can be properly shortened or extended test time. Confirm the project schedule with the supervisor before the formal test.
1.3 Testing Resources
Before the test task begins, examine the test resources.
– Product functional requirements documentation;
– The product prototype diagram;
Products
– Definition of behavioral statistical analysis documents;
– Test equipment (ios6.1.3-ios8.1;android3.0-android5.0)
Other
1.4 daily newspaper and product launch report
1) Testers are required to send test daily to the project.
2) The contents of the test daily include:
– The quality of the current beta version is graded;
– An example of a more serious problem, prompting the developer to modify it first;
– The overall situation of the version is evaluated.
3) before the product goes live, the tester sends the product on-line report.
4) The contents of the online report include:
-Grading the current version quality;
-Attach test report (Functional test report, Compatibility test report, performance test report and app available performance standard results);
– Summarize the basic situation of the on-line version. If you have a legacy issue, you must list and record the solution.
2 app Test points
2.1 Safety Testing
2.1.1 Software permissions
1) risk of deduction: including sending text messages, making calls, connecting networks, etc.
2) Privacy disclosure risk: including access to mobile phone information, access to contact information, etc.
3) Check the application's input validity, authentication, authorization, sensitive data storage, data encryption, etc.
4) Restrict/allow access to the Internet using mobile phone function
5) Restrict/allow the use of mobile phone to send reception information function
6) Restrict/Allow application to register auto-start Application
7) Restrict or use local connections
8) Restrict/allow use of mobile phone photo or recording
9) Restrict/allow use of mobile phone to read user data
10) Restrict/allow use of phone to write user data
11) Detection of user authorization levels, data leaks, unauthorized access to the app, etc.
2.1.2 installation and uninstallation Security
1) The application should be installed correctly on the device driver
2) be able to find the appropriate icon for the application on the installation device driver
3) Whether it contains digital signature information
4) The Jad file and all the managed properties contained in the jar package and their values must be correct
5) The data content displayed by the Jad file should be consistent with the content displayed by the application
6) The installation path should be able to specify
7) without the user's permission, the application cannot pre-set auto-start
8) Uninstall is safe, its installed files are all uninstalled
9) Uninstall users in the process generated by the file is prompted
10) whether its modified configuration information is restored
11) uninstall affects the functionality of other software
12) Uninstall should remove all files
2.1.3 Data Security
1) when a password or other sensitive data is lost to the application, it will not be stored in the device, and the password will not be decoded
2) The sender's password is not displayed in clear text
3) password, credit card details, or other sensitive data will not be stored in their pre-lost position
4) the individual ID or password length of different applications must be at least 6-12 digits in length
5) When the application processes credit card details, or other sensitive data, Data is not written in clear text to other separate files or temporary files.
6) prevents the application from terminating abnormally without deleting its temporary files, which may be attacked by intruders and then read the data.
7) When sensitive data is passed to the application, it will not be stored in the device
8) The backup should be encrypted, the recovery data should consider the recovery process anomalies, communication interruption, etc. should be verified before use after data recovery
9) The application should take into account the user prompts or security warnings generated by the system or virtual machine
10) The application cannot ignore user prompts or security warnings generated by the system or virtual machine, nor can it deceive the user by displaying misleading information before the security warning is displayed. The application should not impersonate a security warning to mislead the user
11) before the data is deleted, the application should notify the user or application to provide a "cancel" command of the Operation
12) The Cancel command operation can implement its function according to the design requirements
13) The application should be able to handle situations where the application is not allowed to connect to personal information Management
14) When you perform a read or write user information operation, the application will send a message to the user with an incorrect action
15) The application reads and writes the data correctly without the user's explicit permission without damaging any content in the Personal Information management application (μ
16).
17) Applications should have exception protection.
18) If important data in the database is about to be rewritten, you should notify the user in a timely manner
19) can reasonably handle the error
20) The user should be prompted in unexpected circumstances
2.1.4 Communication Security
1) In the course of running its software, if there is a call, SMS, EMS, MMS, Bluetooth, infrared and other communications or charging, whether it can suspend the program, the priority of processing communications, and after processing can be normal recovery software, continue its original function
2) When the connection is established, the application can handle the interruption of the connection due to the interruption of the network connection.
3) should be able to handle communication delay or interruption
4) The application will remain working until the communication time-out, which in turn sends the user an error message indicating a connection error
5) should be able to handle network anomalies and timely notify users of anomalies
6) Disconnect when the application shuts down or the network connection is no longer in use
7) HTTP, HTTPS overlay test
–app and background services are generally interactive through HTTP, verifying that the HTTP environment is normal;
– In the Public free network environment (such as McDonald's, Starbucks, etc.) to enter a user name and password, through SSL authentication to access the network, you need to use the HTTP client library exception for capture processing.
2.1.5 Man-Machine interface security
1) Return menu always remains available
2) command has priority order
3) Sound settings do not affect the functionality of the application
4) The application must use the full-screen size applicable to the target device to display the above content
5) The application must be able to handle unpredictable user actions, such as wrong actions and pressing multiple keys at the same time
2.2 Installing and uninstalling tests
Verify that the app is properly installed, run, uninstalled, and used for system resources before and after operation and operation
2.2.1 Installation
1) The software is installed properly under different operating systems (Palm OS, Symbian, Linux, Android, IOS, Black Berry OS 6.0, Windows Phone 7).
2) After the installation of the software can be normal operation, the installation of the folder and files are written to the specified directory.
3) The combination of the various options for the software installation conforms to the summary design instructions
4)) UI test of the Software Installation Wizard
5) Whether the software installation process can be canceled, after clicking Cancel, the written file is treated as a summary design note
6) Whether the process of accidental handling during software installation meets the requirements (e.g., crash, restart, power loss)
7) If the installation space is insufficient when the appropriate prompt
8) No redundant directory structures and files are generated after installation
9) for installation that requires network authentication, try it out in the case of off-screen
10) also need to test the installation manual, according to the installation manual can be installed smoothly
2.2.2 Uninstall
1) Delete the installation folder directly uninstall whether there is a prompt message.
2) test the system directly uninstall the program if there is a prompt message.
3) After testing the uninstall file, delete all the installation folders.
4) Testing of unexpected conditions during uninstallation (e.g., freezing, power-down, restart).
5) Uninstall whether to support the cancellation feature, click Cancel after the software uninstall situation.
6) The system directly uninstall the UI test, whether there is an uninstall status progress bar hint.
2.3 UI Test
Test the layout of the user interface (such as menus, dialogs, windows, and other customizable controls), whether the style meets customer requirements, whether the text is correct, whether the page is beautiful, the text, the picture combination is perfect, whether the operation is friendly, etc.
The goal of the UI test is to ensure that the user interface will provide the user with the appropriate access or functionality by testing the functionality of the object. Ensure that the user interface complies with company or industry standards. Including user-friendly, humanized, easy to operate test.
Personal Summary:
Interface layout
Content display is appropriate
Graphics loading on different machines, especially for phones with different screen sizes
Pop-up prompt information is correct, some sloppy development often copied over others code, do not modify the content
The correctness of the text content, some people do not look at the demand, directly according to their own meaning to write the text content
A lot of text content when the page display, symbols, numbers are a lot of time when the page display. Frequent text content can cause some problems on the page
Whether the page has extra monitoring, controls. For people who copy code, the controls for other pages will be copied too.
Common controls, date selection space, and year conversions can often be problematic
2.3.1 Navigation test
1) Buttons, dialog boxes, lists and windows, etc., or navigating between different connection pages
2) is easy to navigate, navigation is intuitive
3) Whether a search engine is required
4) navigation help is accurate and intuitive
5) The style of navigation and page structure, menu, Connection page is consistent
2.3.2 Graphics Test
1) Horizontal comparison. All controls operate in a uniform manner
2) Adaptive interface design, the content according to the window size adaptive
3) page label style is unified
4) Whether the page is beautiful
5) The picture of the page should have its actual meaning and require the overall orderly appearance
6) Picture quality is high and the picture size should be as small as possible when the design meets the requirements
7) The overall use of the interface color should not be too much
2.3.3 Content Testing
1) Input box description text content and system function is consistent
2) Whether the length of the text is limited
3) Whether the text content is unclear
4) Whether there is a typo
5) Whether the information is displayed in Chinese
6) Whether there are sensitive words, keywords
7) Whether there are sensitive images, such as: copyright, patents, privacy and other pictures
2.4 Functional Testing
According to the software description or user requirements to verify the implementation of the various features of the app, the following methods to implement and evaluate the functional testing process:
1) Use the time, place, object, behavior and background five elements or business analysis methods to analyze and refine the user use scene of the app, compare the description or demand, collate the internal, external and non-functional directly related requirements, build test points, and clear test standards, if the user needs no clear standard to follow, Refer to industry or relevant international standards or guidelines.
2) According to the characteristics of the measured function points bowl out the corresponding type of test cases to cover them, such as, the place involved in the input needs to consider equivalence, boundary, negative, abnormal or illegal, scene rollback, association test and other test types to overwrite it.
3) keep track of the coverage of the test implementation and requirements input at all stages of the test implementation, and revise the business or demand comprehension errors in a timely manner.
2.4.1 Run
1) After the app installs the test run, can open the software normally.
2) app open test, whether there is a progress prompt to load status.
3) App open speed test, whether the speed is considerable.
4) Whether the switch between the app pages is smooth and the logic is correct
5) Registration
– Same Form editing page – User name password length – Prompt after sign-up page – Front desk registration page and background Admin page data is consistent – after registering, page tips in admin
6) Login
– Use a legitimate user login system. – Whether the system allows multiple illegal landings, and whether there are times limit. – Use the logged in account to log on to the system for proper processing. – Use the disabled account to log on to the system for proper handling. – If the user name, password (password) is wrong or missing, can login. – Delete or modify the user after the original user logs in. – Do not enter the user password and user, repeat point (OK or Cancel button) to allow login. – After landing, login information on the page. – There is a logout button on the page. – Processing of login timeouts.
7) Logout
– Unregister the original module and the new module system can handle it correctly. – Terminate logoff can return the original module, the original user. – Log off the original user and the new user system can handle it correctly. – Log off with an incorrect account number, password, and a disabled account with no permissions
Front and rear switch for 2.4.2 applications
1) The app switches to the background and back to the app, checking to see if it stays on the last user interface.
2) app switch to the background, then back to the app, check the function and application status is normal, IOS4 and IOS5 version of the processing mechanism are different.
3) The app switch to the background, and then back to the foreground, notice whether the program crashes, functional status is normal, especially for switching back from the background to the foreground data has automatic updates.
4) Mobile phone lock screen unlocking after entering the app note whether it will crash, functional status is normal, especially for switching back from the background to the foreground data has automatic updates.
5) When the app is in use, when the phone comes in and then switches to the app, is the function status normal?
6) When the app process is killed, the App,app can start normally.
7) The prompt box must be processed, switch to the background, and then switch back, check whether the prompt box is still there, and sometimes the application will automatically skip the hint box defects.
8) for the data exchange of the page, each page must be the front and rear switch, lock screen test, this page is most prone to crashes.
2.4.3 Free Login
Many apps offer a login-free feature that automatically uses the app as soon as the app is turned on with the user's identity.
1) When the app has a login-free feature, you need to consider the iOS version differences.
2) Consider the ability to enter the non-logon state normally without network conditions.
3) After switching user login, to verify the user login information and data content is updated to ensure that the original user exit.
4) According to the existing rules of Mtop, an account is allowed to log on only one machine. Therefore, it is necessary to check the situation that one account is logged in to multiple phones. The user in the original phone needs to be kicked out and given a friendly hint.
5) The app switches to the background, then back to the front of the check
6) switch to the background and switch back to the foreground test
7) After the password change, check if there is a valid identity verification of the data exchange
8) An application that supports automatic login checks to see if the system is automatically logged on and the data is operating correctly when the data is exchanged.
9) Check that the user is actively logged out, the next time you start the app, you should stay in the login screen
2.4.4 Data Update
determines the optimal data update scenario based on the business rules applied and the amount of data updates.
Personal Summary:
Data Update is a frequent problem, involving the local cache data and server data inconsistencies, inconsistencies often lead to bugs, the intermediate process of simulating such data updates often use firewalls, simulating network anomalies, resulting in server data cannot be synchronized to the local. View data changes before and after synchronization
list refresh, first read the local cache, get to the server data and then use direct refresh;
Problem point: 1 frequently occurs, network exception, local cache data is not displayed properly, 2 network recovery does not go to update data; 3 Some show the local cache first. More than a few clicks, the local cache data does not display a
paging request, loading only part of the data at a time, drop-down to refresh more data. Large data volumes are tested, and if all data is loaded at once, it is very slow. The
control is displayed, and some controls display the need to wait for the server to return results.
When a network exception occurs, clicking often causes the program to crash out. Simulation: The network is normal, let the control display, in the simulation scene, so that the control should not display, and then click the control. Look at the process of processing
Network anomalies, every place with data interaction to test it
some places do not have network time-out mechanism, some people can network exception processing or do not do the
local time and server time inconsistent, need to focus on testing
often appear, display and actual inconsistency. Some apps only get the server's time when the connection is established, and other situations do not get the server's time. If other operations require the latest server time, there will be a problem. The server time is only acquired when the connection is re-established.
Some places need to refresh the data, because the local cache does not go to refresh, need to increase to get server side data
Auto Refresh and manual refresh
1 should trigger automatic refresh after creating new content
2 Some unimportant data can be manually refreshed, the amount of data is very large, Manual refresh. After the network exception refresh fails, the refresh needs to be manually refreshed; there is a difference between iOS and Android
after clearing the local cache, whether to reload the data from the server
account switch, switch to another account, should not be able to see other people's local data, this also often out of question
2) You need to update the data to determine where to switch back from the background to the foreground.
3) According to the reasonable allocation of business, speed and traffic, determine which content needs to be updated in real time and which needs to be updated regularly.
4) Determine the processing logic of the data Presentation section, whether it is requested from the server or cached locally, so that the corresponding test can be targeted.
2.4.5 Offline Browsing
Many apps support offline browsing, where local clients cache part of the data for users to view.
1) can browse local data without network condition
2) When you exit the app and then open the app, you can browse
3) switch to the background and cut back to the front desk for normal browsing
4) lock screen and then unlocking back to the application foreground can be viewed normally
5) When the data on the server is updated, the corresponding prompt will be given offline.
2.4.6 App Update
1) There is an update prompt when the client has a new version.
2) When the version is a non-mandatory upgrade version, users can cancel the update, the old version can be used normally. The update prompt will still appear the next time the user launches the app.
3) When the version is a forced upgrade, when the user does not make an update after the mandatory update is given, the client exits. The next time you start the app, a mandatory upgrade prompt still appears.
4) If the client has a new version, the direct update check will update properly if the client is not deleted locally.
5) When the client has a new version, if the client is not deleted locally, check whether the updated client features are new versions.
6) When the client has a new version, if the client is not deleted locally, check whether the file with the same name can be updated to the latest version properly. If the above cannot be updated successfully, also belong to the flaw.
2.4.7 positioning, Camera services
1) app useful to camera, location service, need to pay attention to system version difference
2) useful to location services, camera services, the need for a front and rear switch test, check whether the application is normal.
3) If the location service is not turned on, use the location service and the friendly popup will allow setting the location prompt. When you are sure to allow the positioning to be enabled, you can automatically jump to the location settings to turn on location services.
4) Testing the positioning, camera services, you need to use the real machine for testing.
2.4.8 Time Test
The client can set the phone's time zone and timing itself, so it needs to verify the impact of the setting on the app.
– China is East 8, so when the phone is set to a time other than the East 8, see where the time needs to be displayed, whether the time is displayed correctly, and whether the application function is normal. Time generally need to be based on the server time and then converted to the corresponding time zone of the client to display, this user experience is better. For example, to publish a microblog on the server record is 10:00, when the Washington time is 22:00, when the client to browse, if the setting is Washington time, the display of the published time is 22:00, when the time is set back to the East 8 zone time, then the view is displayed as 10:00.
2.4.9 Push Test
1) Check whether the push message is sent according to the specified business rules
2) Check that the user is no longer receiving push when the push message is not accepted.
3) If the user has set a time-out period, the user cannot receive push during the time-free period.
During a non-intrusive time period, the user receives the push normally.
4) When the push message is for the logged-on user, you need to check that the received push is consistent with the user's identity and that no error has been sent to the other person's message. In general, only the last logged-on user on the phone is sent a message push.
5) test push, you need to use a real machine to test.
2.5 Performance Testing
Evaluate the time and space characteristics of your app:
1) Limit test: In the case of various boundary pressure, such as battery, storage, speed, etc., verify that the app can respond correctly.
– Install the app when the memory is full
– The phone loses power when running the app
– Disconnect the network while running the app
2) Responsiveness test: Test whether the various types of operations in the app meet user response time requirements.
–app response time for installation and uninstallation
–app the impact time of various functional operations
3) Stress test: Under the repeated/long-term operation, the system resources are not occupied abnormally.
–app load and unload repeatedly to see if the system resources are normal
– Other features are repeatedly manipulated to see if system resources are working properly
4) Performance evaluation: Evaluate the usage of system resources in typical user scenarios.
5) Benchmark Test (baseline test): Benchmarking with competitive products, product evolution comparison test, etc.
2.6 Cross-event testing
This paper presents a test method for the classification of service level and real-time characteristics of intelligent terminal applications. Cross-testing, also known as an event or conflict test, is a test in which a feature is executing while another event or operation interferes with the process. Such as: The app in front/background running state with the call, file download, music listening and other key applications such as interactive testing. Cross-event testing is important to identify potential performance issues in many applications.
Whether multiple apps run at the same time affect normal functionality
Does the app runtime pre/background switch affect normal functionality
make/Receive phone calls while the app is running
Send/Receive messages while the app is running
Send/Receive messages while the app is running
App Runtime Switch Network (2G, 3G, WiFi)
Browsing the web while the app is running
Use Bluetooth to transmit/receive data while the app is running
Use your device with your camera, calculator, and more when your app is running
2.7 Compatibility test
Main test internal and external compatibility
1) compatibility with local and mainstream apps
2) based on the different development environment and production environment, the test is in various network connection (WiFi, GSM, GPRS, EDGE, WCDMA, cdma1x, CDMA2000, HSPDA, etc.), the app's data and application is correct
3) compatibility with various devices, if there is cross-system support, it is necessary to check whether the various behaviors are consistent under each system.
– Compatibility with different operating systems, suitability for
– Compatibility with different phone screen resolutions
– Compatibility of different phone brands
2.8 Regression Test
1) After a bug is fixed and a regression test is required after the new version is released.
2) The regression test after the bug is delivered, and the regression test of the full quantity use case is carried out before delivery.
2.9 Upgrade, update test
After the release of the new version, with the different network environment of self-updating prompts and download, installation, update, launch, run verification test.
1) test whether the function after upgrade is the same as the requirement description
2) test the function of modules related to the Upgrade module to match the requirements
3) Upgrade the installation of the test (such as the crash, power, restart)
4) UI testing of the Upgrade interface
5) upgrade Test between different operating systems
2.10 User Experience Testing
To perceive the comfort, usefulness, ease of use and friendliness of a product or service in the perspective of a subjective, ordinary consumer. Through different individuals, independent space and non-empirical statistical multiplexing methods to effectively evaluate the product experience characteristics of the proposed amendments to improve the product's potential customer satisfaction.
1) Whether there is an empty data interface design, to guide users to perform operations.
2) Whether user guidance is abused.
3) Whether there is a non-clickable effect, such as: Your button is not available at this time, then must be gray, or take off the button, otherwise it will mislead users
4) is the menu level too deep?
5) Are there too many branches of the interaction process
6) Whether the relevant options are far away
7) Whether to load too much data at once
8) Whether the button in the interface can be clicked in a moderate range
9) Whether the tab is not affiliated with the content, when switching the label, the content is switched
10) The operation should have primary and secondary affiliation
11) Whether to define back logic. When dealing with hardware and software interactions, the back key should be defined specifically
12) Whether there is a horizontal screen mode design, applications generally need to support the horizontal screen mode, that is, adaptive design
2.11 Hardware Environment Test
2.11.1 Gesture Action Test
1) The effect of a mobile unlock screen on a running app
2) switch the network's impact on running apps
3) effects of front-and back-desk switching in running apps
4) Switching between multiple running Apps
5) App runtime shutdown
6) App Runtime restart system
7) app runtime charging
8) app runtime kill process and open
2.11.2 network environment
The mobile phone network is mainly divided into 2G, 3G, WiFi. At present, the 2G network phase is relatively slow, especially in testing the test of this block.
1) When there is no network, perform the operation that requires the network, give the friendly prompt, ensure that the program does not appear crash.
2) In the intranet test, you should pay attention to the selection of the external network operation when the exception handling.
3) When the network signal is not good, check the function status is normal, to ensure that the failure to submit data caused by crash.
4) When the network signal is not good, check whether the data will remain in the status of the submission, there is no timeout limit. If the data exchange fails to give a hint.
5) When the network signal is not good, after the operation, when the callback is not completed, exit this page or perform other operations, there is no abnormal situation. This issue also often occurs with program crash.
2.11.3 server outage or test in 404, 502, etc.
Background services involve DNS, space service providers, the situation will affect its stability, such as: when the domain name resolution failure, your request for the background API is likely to be 404 error, throw an exception. The exception will need to be handled correctly, or it may cause the program to not work properly.
Analog 404 Error
Analog 503 Error
Think about it, add it later, and learn more about the Internet.
2.12 Interface Test
The server typically provides JSON-formatted data to the client, so we need to perform interface testing on the server side to ensure that the interface provided by the server and the JSON content is translated correctly, with the corresponding return value for the branch and exception stream. This block test can be tested using the ITest framework. The most convenient is to use HttpClient for interface testing.
When conducting a service-side test, you need to develop an interface document.
Personal Summary:
It is not simple to send the message of the analog interface, to verify the return result of the interface, it is best to simulate the business scenario to test, combine the database, verify the interface logic and data processing problems.
Interface data processing, normal exception condition for each field, boundary value, equivalence class. It's better to know what each field means before you test it.
The invocation permissions of the interface, which are often directly called, lack permission validation
The business logic and role of the interface
interface and database data binding verification, it can be said that the service-side interface of all operations are the data to increase, delete, change, check. So know the meaning and function of each field of the interface, but also know the function of each field of the database, and the correspondence with the interface. Know the logical relationship between interface and data, and make logical verification
The rationality of interface design, whether the function is complete, expansibility, security, fault tolerance
Exception Handling for interfaces
Whether the interface is shared with other modules, and whether sharing affects other module functions
2.13 Client Database Testing
1) General increase, delete, change, check test.
2) If the table does not exist, whether it can be automatically created, when the database table is deleted and can be self-built, the data can be automatically retrieved from the server and saved.
3) Whether the client can save data locally when the business needs to retrieve data from the server to the client.
4) When the business needs to fetch data from the client, can the app data be automatically removed from the client data when the client data is checked, or will it still be fetched from the server side? Check whether the app data is automatically fetched from the server side and saved to the client when the client data does not exist
5) If the business changes the data, after the deletion, the client and the server will have a corresponding update.
Personal Summary:
2.14 Server-Side database testing
Validation of the database is important, and sometimes the validation of the database reveals many issues that the front-end can easily overlook. Of course, sometimes through data validation can also be very convenient for our testing work, improve efficiency
Personal Summary section:
Data integrity, required fields for business needs, whether to save the full in each scenario
The data is correct, the value of the field is consistent with the values entered by the user, simulating some anomalies, whether the data is saved properly, for example: Picture, array
Data Association validation between data tables
Version number verification, the general database will save the version information, updated to pay attention to the impact of the version number on the business. Whether the version number will be updated in time
Whether there are redundant parameter values, mainly MongoDB, this unstructured database, if the client to determine this value, then there may be errors, fault tolerance is not good.
The impact of junk data on the business, sometimes the database has garbage data to cause the client's normal data can not be displayed, fault tolerance is poor, the client needs to do appropriate processing
Other:
Client
1 Calling interfaces repeatedly
2 Request extra parameters (some parameters not shown on the page are not necessary to display)
3 Do not modify any fields, click Save, send a request (wasting resources, not necessary)
4 Paging Request (limited paging, large amount of data must do page load)
5 Call the redundant interface, some operations do not need to call the interface, but do the interface call
6 Pass the extra parameters, iOS and Android often appear uncoordinated, resulting in the passing of redundant parameters, resulting in one side cannot resolve
Backend
1 call frequency, no limit may be malicious brush screen, malicious tools (some need to do this limit)
2 Security, no session calls (prevents direct invocation, each interface requires authentication)
3 Back to private information
4 return redundant information (wasting network resources, is the client's time increase)
Concurrency scenarios are also a frequent problem scenario
The data server has been deleted, the client still has the cache and is operated by the client. Verify that the results are returned
The database data has been deleted, the local cache is still in place, the local garbage cache should be cleaned up when it is updated directly, and should not be displayed
User at the same time, whether the background has a succession of judgment
Personal Summary:
Sometimes need to jump out of the inertial thinking, clear logic
App Functional Test Knowledge Summary