Software testing how to find more bugs

Source: Internet
Author: User

1. Familiar with the company's product business as soon as possible

For example, your company to do ERP software, you must be quickly familiar with the EPR business process, for example, your company is a court software, then you must be familiar with the court case process, only familiar with the product business process, you can quickly find out some important defects in the software, The software flaw you find is valuable. Otherwise, even if you can find some software defects, it is pure software defects, the value is not big.

2. Think of yourself as a user

Think of yourself as a user to use the system, such as in the process of using the system.

2.1 For example, in a large number of user input software interface, some users prefer to use the TAB key to the full keyboard input, at this time the correct interface should take from left to right, from top to bottom order.

2.2 For example, some users like to use shortcut key operation (CTR+C,CTR+V,CTR+F), but in reality, some of the software developed by the shortcut keys do not work at all.

2.3 For example, the software in need of user input information when (especially when filling in personal data), must be filled with * and other prominent signs, to let users know this place must fill in.

2.4 The drop-down box should have a default value when it is not selected, and check multiple drop-down boxes in the program, because in many cases the drop-down box does not have a value.

3. Be good at doubting, don't be a superstitious master

There is no absolute right in the world, there is always the wrong place, with rebellious mentality, others think that it is impossible to happen, I think it may happen. Others think it's right, but I don't think it's right. If you think that someone or some programmer level is very high, he wrote this place should be OK, then I say you are wrong, so it is easy to omit the Bugin the software. Because the program developers are ordinary people, as long as the person will make mistakes.

4. Don't let the program developer's Point of view: "Users don't do this" and convince themselves

In this situation, you have to stick to your own right ideas, and the other side will understand you. For example, in a system to enter the basic information of employees, the system of the employee's age as negative, but not as a judge , can also be saved to the database , at this time you do not be the programmer's users do not have the idea of such operations to persuade themselves, You have to stick to your correct point of view and use this as a bug, and be brave. Your choice is not good.

5. Keep track of a complete process of data during the software Testing process

In software testing to track a complete process of data, to ensure the correctness of the data is really too important: if you are testing a sales type of software: You should do the order-warehousing-Inventory-sales-query. First you need to make sure that the flow of this data is correct and accurate. If you are testing the court software, you must first cases-filing-sending approval-schedule---trial trial-closing judgment-filing-inquiry. In short, tracking a data flow, to ensure the correctness of the data. If the software you are testing is not going to work in the process of user use, then the software you say passes your test, but what is the difference between a person's opinion and no test?

6. The finer items to be aware of in regression testing

After the programmer submits a new version of the program, the tester should immediately communicate with the programmer about the functionality of the modification, and what functionality the newly modified feature affects. Give a simple example: in a software, for example, a program developer modifies a field information for a "member". As a tester first you have to test the function of "member" This is the first thing you need to do. In addition you have to communicate with the programmer to ask them the newly modified member of the field, will affect the member's sales function. Will it affect the query of the member's previous sales records? If you have an impact on these features, these features are where you focus your testing on regression testing and where you're most prone to bugs.

7. Defects in interacting with users

7.1 If you fill in the information error, you should be able to prompt the wrong location, let the user know is this place input data wrong.

7.2 Before deleting the data, be sure to give the confirmation prompt whether to delete.

7.3 Do not use the Chinese and English mixed hints in the software such as: For example, the user an action error, do not use "error", one will use "succeed" and another will use "success", in short, to unify.

7.4 In addition to the programmer to check for typos, such as "login" as "landing".

7.5 In addition, in the software do not use very professional terminology such as "record", "field" and so on.

7.6 New/modified information after saving the submission, the system gives the "save/Submit/Modify Success" message and updates the display automatically.

7.7 After the user has made a lot of input, click on the "Save" button, just because the input selection is not correct, click OK to find all the input content is completely emptied, take a long time input, just a place of input is not correct, and the user's all the input of the other The content is also emptied, and if you are the user of the software, you must feel quite annoyed.

7.8 for the query function in the software, when the test set the start time > Greater than the end time to see if the record can be queried, which is a mistake the programmer easily make.

8. Software boundary value

Software is most likely to have problems with boundary values. It is well known that software is most likely to have problems with boundary values, so as a tester it is important to test more on the boundary value, such as the maximum and minimum number of values in the user input box, and the case when it is empty.

9. Illegal fault tolerance

For example, enter a letter where you need to enter a number, enter a number where you want to enter a letter, and copy the entire article in a text box that requires user input to test how the software is handled. , the divisor is set to 0 in the calculation with division and so on to verify the software fault tolerance.

10. Testing of software interfaces

If the different parts of the software are done together by multiple programmers, check them out in the context of their program interfaces, because sometimes in the interface, a programmer thinks the B programmer has done the processing; B programmers think that a programmer has handled it, but in fact neither of them has handled it. The author's personal experience: once did a sales type of software, a programmer to do orders, b programmer to do storage, each of their programs can be run alone, the results are integrated into the error, the problem in the test process was not found, In the user's actual use environment, the user found that the results of the report query is inaccurate, only to find the problem.

11. Compatibility detection

Software testing to be tested under different hardware, software ( including operating system , IE browser )

11.1 Hardware: Sometimes the software in the high-configuration machine, sometimes hide some errors, such as the CPU is too fast, a lot of phenomena flashed through, can not find defects.

11.2. Software: For example, the author recently tested a software under different browser to see the menu permissions are not the same, the following image of the same user in the IE6.0 and IE7.0 see the menu permissions are not the same (we can look at the IE7.0 significantly less than a lot of things), this is certainly a bug in the software.

12. Software is prone to error under pressure

Software is prone to errors under pressure, as an experienced tester is generally known: Put your software under pressure for a long time to run tests, and then see if the software can withstand the stress of the test.

13. Random test

Even if the test after a lot of full testing, and can not find all the defects in the software, so testers can do some random tests when testing, such as random on the software interface randomly, sometimes also found some intended software defects.

14. Learn from the experience of others

Most

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.