当前位置:网站首页>What are the common error types and solutions of black box testing?
What are the common error types and solutions of black box testing?
2022-07-29 07:40:00 【Software testing Lao Mo】
Catalog
3、 FALSE 、 Misleading or confusing information
1、 User interface error
Functionality
Ease of use ( Time for users to learn how to use the program and remember how to use the program )
Execution speed ( Most of them are starting speed , Query speed , Refresh speed and response speed )
The rate at which users make errors when using ( When users are allowed to use it at will , The lower the better )
User satisfaction ( Largely decided UI The quality of design and function design )
Functionality
If one of the following occurs , Think the program may have functional errors :
Some things that the program can accomplish are very difficult , clumsy ( tedious ), It's confusing and even unbearable .
Mainly for the following aspects :
Excessive functionality
Complicate simple functions , This is a common problem in design . Systems that try to do too many tasks will be difficult to learn and master , And easy to forget. . It requires a lot of documentation ( Developing documents , Help documents and screens ). The performance may be better , But the time spent on complexity is relative to performance ( function ) It's not worth improving ; and , If the functional modules are close , Then the probability of occurrence of correlation errors should be improved a lot .
Exaggerated functional impression
User manuals and marketing leaflets cannot make the program function more . remember , In the user manual, even if you prefer to slightly understate the functions, you can't exaggerate ( Of course , We don't want this , We always record truthfully ).
Inappropriateness of the task at hand
Because the key items of function do not exist 、 Too limited ( Most of it is because it is not finished ) Or too slow ( Need to improve the program structure or internal algorithm ) And can't finish the real work . for instance , Query a with 8000 The database of records needs 1 Hours ( Oh my god , I think I even 10 I can't wait for minutes ), Although it has the function of query , But I really doubt whether this function will be used .
Missing function
The function is not implemented , But it appears in the user manual . Or it is the characteristic function that should have , You can only see one in the program “ shadow ”( There is no truth in its name ). In most cases, the manual is not checked and updated when the requirements change , Some are also due to missing functions that should be included in the requirements specification .
Error function
A function that should have completed the query work did the sorting work . This oversight is not generally due to the failure to implement the function , Instead, there is a problem when allocating functions .
Functionality must be created by the user
One of the most common situations is to require users to configure their own soft environment ( Such as configuring data sources , Generally, it can be completed automatically in the program ; Of course, it also includes that the components used by the program do not exist in the system , Users also need to buy by themselves , This is unacceptable to users ).
Can't do the work expected by users
for example , Few people would expect a program originally written to sort names to follow ASCII Order of codes . They also don't expect to use it to calculate the first space or to be case sensitive . Of course, the sorting of user names still needs to be done , The problem is that developers need to rethink a new sorting rule to meet user needs .
human-computer interaction
human-computer interaction , Communication and exchange between programmers and operators . This is not a science fiction movie , We may do it every day .
2、 Missing information
You should know , All things can get effective messages from the computer screen .
There are no screen instructions
How to find the name of the programmer ? How to exit the program ? How should you get help ? If the program uses a command language , How to get the command list ? The program may only display these contents when it starts . Of course, you can also get this information from the help manual , But it's not necessary . Programs without any on-screen instructions may be unbearable , It may take longer to consult the manual —— This may make users feel that software learning is too complicated .
It is assumed that the printed document is readily available
What if you lose the user manual ? Experienced users don't have to rely on printed documents , Provide an electronic version .
No formal documentation ( explain ) Functional features of
If most functional features or commands provide file descriptions on the screen , Then everything should be like this . Skipping only a few functional features will lead to confusion . Again , If the programmer describes it for many commands “ A special case ” The behavior under , Then all commands need to provide such instructions .
It seems impossible to quit
How to cancel a command or backup in a deep menu tree ? The program should allow you to avoid situations you don't want to encounter . such as , During software installation , Disk insertion required , You cannot exit setup without inserting the correct disk . Not telling you how to avoid it is as bad as not providing an escape path .
No cursor
Most users rely on the cursor . A cursor can make the user feel that the computer is still working ( Although sometimes the crash is the same ), Every interactive program should display the cursor , Of course , Don't forget to tell the user when closing the cursor .
No response to input
Every program should respond to input . without , ha-ha , safekeeping 80% The above users will have doubts about the software : Why didn't you respond ? How much longer will it take? ?
If there are the following situations , Generally regarded as normal :
1. When selecting a menu item , If your keystroke doesn't respond , As long as the next screen appears immediately and the title on this screen is the same as the menu item , It can be regarded as normal .
2. If the program ignores the wrong command or key operation , Of course, you can't respond to it .
3. If you tell the program not to enter a response , It must not respond , If it responds , Developers should be told : well , Look at that , It's not obedient ( May be forgetting to continue to deal with another situation ).
4. If you enter a security code ( Such as passwords ), Then the program should never respond on the screen ( If you make a mistake, it's another matter ).
It does not indicate its activity when it is delayed for a long time
Delay an appropriate response for a long period of time , Will be a very necessary move . I believe that in this way, there is no need to explain too much to users .
When a change is about to take effect, no suggestions are given
A program may execute a command earlier or later than you expect , for example : When deleting some important data ,( And this process will last for some time ), Necessary hints are necessary .
The file that has been opened is not checked
According to statistics , This error is very common . Users may not notice , But in the future work, a slight change will lead to a lot of problems . You can't guarantee that the program will make different changes to the same file at some time . therefore , Never allow the same file to be opened twice or more at the same time .
3、 FALSE 、 Misleading or confusing information
Every mistake will make you doubt everything else the program shows . Small mistakes that make users make false induction , Missing conditions or inappropriate analogies will annoy testers more than clear factual errors ―― Because it is more difficult to correct them .
1. Simple factual errors
After a program change , Updating the screen display is a low priority task , The result is : A lot of information on the screen is out of date . remember : Whenever the program changes , Carefully check every message that may indicate the characteristics of the program , The simplest way is to refresh the changed screen directly .
2. Spelling mistakes ( Wrongly written characters )
I Believe , This is definitely not a design problem , I also believe that developers may not think so .Oh, But customers will care , Will complain about these ―― Better correct them .
3. Inaccurate simplification
In the desire to keep the description of a feature as simple as possible , The creator of a message may only cover the simplest aspects of the characteristic behavior , While ignoring important conditions . for instance , This situation may cause ambiguity , For example, close ( Close the file or close the program ?). As a tester , You need to study any trivial details that may cause problems carefully enough . Better kill by mistake , I can't let it go !( Although we should try our best to avoid killing by mistake .)
4. Invalid metaphor ( Things like charts that can indicate functional characteristics )
for example : The icon of the recycle bin may not be a good metaphor ; For the case that once the file is removed, it will disappear forever , The icon of the shredder may be better .
5. Puzzling features ( function ) name
If a command name has a standard meaning in the computer field or language , It must be consistent with its meaning . Don't expect your arm to twist over your thigh , Determine that the current standards are reliable .
6. The same characteristics ( function ) Has multiple names
One name is enough for the same functional feature ―― As long as it can be clearly stated ; Users may not have time to play synonyms . in addition , This situation also affects the complexity of the software displayed in front of users .
7. Information overload
Don't make your documentation and help screen look too professional ―― Too many technical details . Users will be impatient , Besides, the effect is not good . If you really need , You can list them separately . Try to be frank , Express this information if the user can understand .
8. When data is saved
Suppose you enter some information that the program needs to save . When you switch or the program exits , When you need to save at regular intervals , Will it save the data in the way you want ? When will it be finished ? If you are confused about the answer , That means there may be a problem . I have found this situation many times in my colleagues' projects : Switch after each modification , Do not prompt to save ―― I only know that , I did it for nothing again . When modifying a module , You'll find that , Is missing the necessary steps .
9. Poor external modularity
External modularity refers to the degree of modularity that the program looks like the product from the outside ( Just like the program is separable ). How can you easily understand module components ? Poor external modules will spend a lot of time learning products , It will scare away new users ―― Oh, my God , It looks too complicated ! Try to show the information independently , For any particular task , The less you need to know, the better .

Thank everyone who reads my article carefully !!!
If you can use the following information, you can take it away directly :
1、 Self study development or test the necessary complete project source code and environment
2、 Test all templates in the work ( test plan 、 The test case 、 Test report, etc )
3、 Classic interview questions for software testing
4、Python/Java Automation test practice .pdf
5、Jmeter/postman Interface test full set of video acquisition
I personally sorted out some technical materials I have sorted out in my software testing career in recent years , contain : e-book , Resume module , Various work templates , Interview treasure , Self study projects, etc . If you encounter problems in your study or work, you can directly join the group and ask , There will also be great gods in the group to help solve , You can call me if you need it. Thank you .
边栏推荐
- Credit card shopping points
- [summer daily question] Luogu p6320 [coci2006-2007 4] sibice
- The beauty of do end usage
- 准备esp32环境
- Prepare esp32 environment
- 状态机dp三维
- Better performance and simpler lazy loading of intersectionobserverentry (observer)
- Output 1234 three digits without repetition
- 在js中,0表示false,非0表示true
- 分析25个主要DeFi协议的路线图 预见DeFi未来的七大趋势
猜你喜欢

Amazon cloud assistant applet is coming!

QT连接两个qslite数据库报错QSqlQuery::exec: database not open

Chaos and future of domestic digital collections

Segger's hardware anomaly analysis

207.课程表

NLP introduction + practice: Chapter 5: using the API in pytorch to realize linear regression

NFT 的 10 种实际用途
![[WPF] realize language switching through dynamic / static resources](/img/23/1e089ce4a07128323824b25897a8c4.png)
[WPF] realize language switching through dynamic / static resources

How does MySQL convert rows to columns?

Meizhi optoelectronics' IPO was terminated: annual revenue of 926million he Xiangjian was the actual controller
随机推荐
Introduction and introduction of logback
UPC 小C的王者峡谷
Meizhi optoelectronics' IPO was terminated: annual revenue of 926million he Xiangjian was the actual controller
【暑期每日一题】洛谷 P4413 [COCI2006-2007#2] R2
【暑期每日一题】洛谷 P7760 [COCI2016-2017#5] Tuna
MySQL 45 讲 | 07 行锁功过:怎么减少行锁对性能的影响?
08 dynamic programming
Credit card shopping points
《nlp入门+实战:第五章:使用pytorch中的API实现线性回归》
UPC little C's King Canyon
Female graduate students do "mind mapping" and quarrel with their boyfriend! Netizen: the "king of infighting" in the quarrel
【无标题】格式保存
How much data can a single MySQL table store at most?
[WPF] realize language switching through dynamic / static resources
QT专题:基础部件(按钮类,布局类,输出类,输入类,容器类)
新生代公链再攻「不可能三角」
【暑期每日一题】洛谷 P4414 [COCI2006-2007#2] ABC
Cs61abc sharing session (VI) detailed explanation of program input and output - standard input and output, file, device, EOF, command line parameters
【暑期每日一题】洛谷 P6500 [COCI2010-2011#3] ZBROJ
Meeting notice of OA project (Query & whether to attend the meeting & feedback details)