Reports in software testingTest Case Design MethodSummary
ReportTestThe interface is mainly divided into the following aspects,SecurityPerformance, accuracy, display speed (Performance)
Data Statistics
1. Report statistics are correct;
2. Integrity of report statistics;
3. Validity of report statistics; for example, statistical amount FieldRequirement"$" And so on are required;
Report Format
1. correctness of the header field representation;
2. Integrity of the header field;
3. the font, font size, and aesthetics of the header field;
4. Whether the display of each statistical field meets the requirements. For example, if the data is too long, the data needs to be folded or shrunk;
5. Expression of the header and page angle;
Preview and print reports
1. display integrity in the preview;
2. In the case of multiple pages, the header of page 2nd is displayed;
3. Whether or not specific printing conditions are met; (for example, the specified template is used for printing)
4. Print after preview;
5. Print directly without Preview
6. Requirements for testing various types of printers;
Data Accuracy TestReport TestThere are two types of systems: Business Systems with statistical analysis modules, which contain analysis reports. The main body of the system is the business system, reports Help with business processing.
For example, the annual inspection statistical report and the statistical report of vehicles with fines should be submitted in a month. If such report data is accurate or not, you can add, delete, or modify the parameters of related services or related services, view statistical report data changes and check data accuracy.
The other type is that the system only has the statistical function, that is, the Data Warehouse display class, which is separated from the business system and processed in multiple layers, such as the data in the data warehouse, extracted and cleaned, data is mined and processed before presentation. Some fields are not rooted in the original data table. Such data accuracy tests are complicated. Of course, it is not easy to modify and locate data errors.
From the perspective of project cost saving, layer-by-layer testing is the best. The full modification rate is also the highest.
First, create a test data model, simulate all application tables, and create simple and easy-to-trace data cases. Test the underlying data table. The method is very primitive.SQLStatement and manual calculation to compare the data. Accuracy of report data in the systemTest MethodFlexible,
① Comparison of overlapping reports in the system
② Compare the subreport summary with the parent report, that is, compare the monthly report summary with the annual report, and compare the daily report summary with the monthly report. This is only one aspect. You can consider the dimension relationship, region, summarize and compare administrative levels, time, and individuals
③ If this method is extended, the Business logical relationship between reports can be used as the basis for comparison. Well, it depends onTesterNeeds to understand the depth of personal capabilities. Insert a few words and do not want to do it.WorkIt always keeps me happy. One of my colleagues two days ago said that no one in the company liked to do the test work. This job is too boring. Hey, I said that I have never felt bored after so many years of testing. Repetitive work doesn't mean boring, but programming is actually not repetitive. Who does not repeat yesterday's things every day? eat and eat this action and repeat it for a lifetime?
④ Use SQL and manual calculation for comparison. The above is the error method. Next, let's look at what is wrong? Error-prone locations
● Original table usage error: because there are many tables and there is no unified data relationship corresponding to the table, it is easy to use the table error. Of course, this should beUnit TestCheck the error.
● Data processing logic error: This is easy because testers andDevelopmentThere is a conflict between the personnel's understanding of the demand, so during the demand review, the data processing rules are clearly expressed using expressions or pseudo code. There isProgrammerErrors, deviations in logic writing, improper handling of boundary values and special circumstances.
● Data permission: different users have different viewing permissions on data. This is related to data security.
● Data error: the number of reserved digits of the Data. Whether the data is processed or not is calculated for the last calculation.
● Data errors caused by dictionary tables and data errors, such as the number of purchases based on gender statistics, the table's male/male inversion, or the absence of missing gender items, use if Else, in this way, the content missing from the table is calculated as the else condition. Or the user status should be considered in the logic. Fields with similar data status are easy to ignore and the test should be considered.
● In the last item, when the data volume is large, statistics should be taken into account. The cutting speed, that is, the data integrity, results in incomplete data due to the lag of Data cutting, the statistical results are incomplete. For example, the sales statistics for yesterday are counted, and the data for yesterday is not completely from the business system data to the data pool. Furthermore, the data for the end of the month is, the number of statistics in April is inaccurate due to incomplete data cutting on the last day.
Report interface and input/output test
The interface consists of an input interface and an output interface. unified interface requirements: Beautiful, unified, and easy to operate.
The input interface must be:
① The length of the input field cannot exceed the length of the field;
② If the input does not meet the field requirements, query is not allowed. For example, for the money type, you cannot enter Chinese characters, letters, or special characters.
③ Input beyond the user permission range cannot be queried. If a user does not enter a customer number within the permitted range, the user cannot query the number and has a friendly operation prompt.
You should not select any option other than user permissions.
For fuzzy query of Chinese characters, the storage of Chinese characters may be garbled due to decoding issues, for example.
Output interface requirements:
① As a report, printing, preview, export, and other functions should be available. Data cannot be lost due to report export, or a report table box is missing due to printing.
② The report arrangement method is adjustable. You can sort the reports in ascending or descending order of any column, or sort the reports according to certain rules of a key column.
③ The report title is clear and cannot be vague to mislead users
④ Items that can be associated with the query in the report should be displayed in special mode. For example, if the cursor has an arrow, The subreport format is consistent with the parent report format, and the data is consistent.
Report testing is based on the definition of a project. Sometimes it is only used as a part of the software. Sometimes the entire project is used to test various reports. however, in any case, the role of a report is always to calculate, process, organize, and summarize existing data in the system based on user settings, and finally display the data to users in a clear format, this allows you to perform further data analysis or statistics.
The report implementation in software is generally divided into two parts: defining the data required for a report (generally, you can select or manually enter the conditions to narrow the data range) and defining the report format. in addition to the fixed format specified in national industrial standards, most reports are customized based on the needs of enterprises or users.
Therefore, pay attention to the following aspects during report testing:
1. The data is correct.
You can use reports to quickly find the data you need on a simple and convenient platform. therefore, when testing a report, you must first check whether the data in the report is the data that the user needs. If no data is processed, check whether the original data is maintained; check whether the processed data structure is consistent with that of manual processing. in short, you need to test the following content.
Data source: the source table and Field,DatabaseFor example, the neutral data in the database may be 0 or 1, but the interface is displayed as a male or female. Is the corresponding relationship correct.
Data range: whether only the corresponding range set in the report is displayed. Pay special attention to the boundary data. Whether the selected data needs to be filtered out must be clear about the report requirements. for example, the time range is ~ 2007-9-27, should it include 9-27.
Data ing: whether the fields in the Database correspond to the information in the report
Data format: whether the data format is consistent with the report settings, such as decimal places, kilobytes, and rounding; whether the unit or tax rate conversion is correct; whether the data displayed in the combination is reasonable
Sort data: whether the sorting method is consistent with the report setting (if not set, whether there is a clear default sorting method, such as sorting by letters or numbers)
Serial number: if the report uses a serial number, whether the serial number is generated and the format is correct. whether to cancel the operation will generate a serial number.
Consistency between details and total: whether the details or sections of each part are consistent with the final sum
Others
This part of the test should be quite familiar with the business logic and be very familiar with the database design. If necessary, you can write your own query statement to view the data.
Some reports have fewer conditions, but the test methods are the same. various condition combinations are set based on condition division and arrangement and combination of equivalence classes. do not perform tests blindly. Otherwise, the tests will fail, and a bunch of additional tests will be performed .. generally, there is a classification (generally the interface is shown as a drop-down box), and each category should be tested, such as male and female in gender. the input data can be divided by equivalence classes.
2. The format is correct.
After the data is verified correctly, check whether the report output format meets the requirements.
Overall report style: whether the report meets the requirements or the format set by the user
Report title: whether the report title is the correct report name. For example, the report contains embedded data (which varies with the user's choice ). check whether the data is correct. For example, XX enterprise's financial report for June is selected by the user in June, or XX Company's financial report for June ~ The website traffic during this period is also selected.
Company logos: such as logos, names, addresses, and so on.
Report header and end: whether the same rule is used.
Paging: If the output content is too large, whether the paging is correct. Whether the paging function is correct
Friendliness: whether the data or charts are clear and clear, and whether the data display conforms to the user's habits; whether the data (such as the total and abnormal data) that requires special reminders is highlighted; where the complex algorithms are located, whether the user does not understand or easily obfuscation is annotated; whether some default formats make people feel comfortable, such as alignment, boundary, interval, etc.
3. Permission Control
For a system with permission control, the report should also be consistent with the user's permissions. Permission control needs to be verified from two aspects.
Condition definition of a report: In the condition selection area, data outside the user permission range should not be displayed in some drop-down boxes. For example, when a common clerk uses a report, the report name drop-down box cannot display reports that can be viewed by managers. When some input text boxes are classified into different levels, you should test the data that exceeds the permission input.
Note that each entry must be tested here.
Report Content: The report content cannot display data that the user does not have the permission to view.
4. Report output
After a report is generated on a computer, it is not the end of the report. Reports usually need to be printed out for other purposes, such as meeting or submitting for approval. Therefore, the report printing function is also very important. The test is divided into three parts:
● Print settings
● Print and preview
● Actual printing effect
In addition to printing, you may need to export reports for further analysis or comparison with other reports. Therefore, the report export function should also be provided. Generally, it can be exported to CSV, Excel, PDF, HTML, and XML formats.
Report Test Summary