Testing heuristic problems

Source: Internet
Author: User
Tags truncated

This is the test master Elisabeth Hendrickson test heuristic problem.

First, the general heuristic

These revelations are absolutely applicable to any kind of interface and whatever kind of system.

Abstract

Rejects the details in the model. By ignoring the low-level minutiae, this simplifies the model so that it can focus less on detail, and many others focus on the conceptual level.

For example, for an interaction diagram, there is no need to describe a group of communications in detail, and you can simply draw a line and then take a name to describe the core interaction of these communications.

Suppose it was a test mail client. Then the client may have to go through the following steps when sending a message: Connect to server, authentication, data transfer. Instead of documenting all of the steps in the model, you can simply mark this complete interaction between the clientserver ends as " sending mail "to eliminate detail and elevate the abstraction level.

Never and always

Things that the software should always do (such as ensuring balance of accounts) or never doing (such as destroying user data). Find more domain experts and business stakeholders to chat. To be able to ascertain what the system has " never " and " always ".

Start, middle, end

Change where the element is located.

You can change the elements in a particular sequence. Or you can take action on an element in a particular location. The practice is to use this revelation method:

    • Deletes entries from the beginning, middle, or end of the list.
    • Pastes the text to the beginning, middle, or end of a line.
    • Place a specific character at the beginning, middle, or end of a value.

    • Runs an operation on the beginning, middle, or end of a sequence.

Watch out for signs of change in position. The same should also pay attention to bad behavior. For example, data attached to the end position is truncated. Data inserted in the beginning or middle of the position causes other content to be truncated.

Focus on everything

Assuming that things are scattered, subdivided, or made into a separate block of one, put them all in the same place. Like what:

    • Software for organizing entries in a directory structure: Select a large number of non-empty directories, all moving into a single directory, or a directory that is deeply nested.
    • Software that can transfer ownership of items between accounts: Transfer ownership of a large number of different account holdings to a single account name.

Change the Model

Describe the model of your system in a different form of presentation.

A state chart usually renders its state and transformation with circles and arrows, changing it into a tabular form. For example, a state is represented by a column, an event is represented by a row, and then a cell data is used to represent its result state.

Change the linear schema to a mind map or change the mind map to a linear outline.

CRUD(Increase and deletion)

Create (C), read (R), update (U), delete (D).

These are basic operations that you can run against whatever data element is in the system. Together with other revelation methods, use the CRUD revelation method.

Like what:

    • combine start, middle, end "

    • combine " blonde girls " : Update the value of a data element. Change to a value that is too small, too large, or just as good.
    • Union 0, single, multi " : Delete entries that have no child records, only child records, or have very many note records.

Disperse everything

Suppose everything is in one place. Then divide, subdivide or group them into separate blocks. Same. You also need to establish connections across distributed systems.

Like what

    • Software to organize entries in a directory structure: Create a large number of directories. Put in a small number of each.
    • Ability to configure the software used in a distributed environment: Configure the system so that each part can exist on its own separate machine, separated by a subnet or firewall.

Trailing data

Run a series of data-related operations. Check the integrity of the data for each step you run. This approach is suitable for any system that allows users to run input, search, report, import, export, update, and view data.

When used in conjunction with other data-related revelation methods, the trailing data-revelation method is particularly effective.

Like what

    • use data that contains special characters, including SQL or JavaScript injection attacks. Import it, search it, view it, execute the report that includes it, export it.
    • Create data that violates domain-specific rules and then import it. Sometimes, the bulk import function will miss the function logic that prevents data entry from being corrupted.
    • combined " 0, single, multi- " : Performs data-centric operations on entities with 0, one, or more sliver records. such as executing reports or exporting data.

Blonde Girls

Too small, too big or just fine. This applies to any object that has a fixed size range, such as date range, numeric value. string or text length, file size. Wait a minute.

It is necessary to pay attention to its behavior, including some of the following:

    • Delete large amounts of data without making announcements.
    • Saving data fails without making a notification.

Interference

Find ways to disrupt critical processes. For example, log out, shut down, restart, kill the operating system, break the network, force hibernation, cause the session to time out, cancel the operation, and so on. Observe undesirable behavior, such as:

    • Invalid error message. For example, an exception that shows stack traces, or a riddle-like error code.

    • You cannot (and cannot) start the process again.

    • Data that cannot be recovered is lost or corrupted.

Reverse

Turn around and do things in a different direction.

Undo everything. Jump to the end. Run in reverse. Like what:

    • Software that supports undo operation Love: Run a large number of operations. Then all are withdrawn in step-by-step.
    • software for a given workflow: Accept all default values. Until the last step of the workflow ; then use " back " the button changes the value on the page one by one.

Part, all, none

A set of items may include one part of the entry. It may also not be an entry. It may also include all the entries. Very similar to " 0, single, many " , but more suitable for sets of the appearance of the items or attributes. For example, permissions, configuration options, labels, multiple-selection fields and checkboxes, and so on. Some of the behaviors that need to be noted include, for example, the following:

  • " all without " with " All " enjoy the same treatment ---- For example, the system treats ordinary users who do not have any permissions, and super users who have ownership restrictions.
  • The number or percentage of the problem. Contains a error except for 0 and a difference.
  • display problems, especially " all without " or " All " the situation.

  • " All " the data phase of the case.

Starving

Starve the program, and do not give it the required resources, including CPU, memory, network bandwidth, or disk space. Take a look at the response:

    • Unrecoverable data is lost or corrupted.
    • Invalid error message, such as an exception showing stack traces, or a riddle-like error code.
    • Unexpected program or session termination.

Too little

Applicable to the number of cases that can be counted.

produce a condition that is less than expected to be processed by the software, such as. There are too few entries in the implant list or too few items in the invoice arrangement.

Excessive

Applicable to the number of cases that can be counted.

Create an excess of conditions that allow the software to process, for example, an active session or an excessive number of connections.

Valid approximate values

Especially when dealing with complex areas, it is almost impossible to accurately infer the results that a particular experiment should have. In that case, you can infer its accuracy with an approximate value. You can use this result to compare with the range of possible values. See if it is within this range. You can also check the characteristics of the results. For example, the calculated value is increased or decreased.

violate data formatting rules

The software expects that the data it receives is compliant with the rules.

Age should not be negative. The IP address should consist of 4 values from 0 to 255.

e-mail addresses should include username and domain names, separated by a ' @ ' symbol.

The file structure that you define has a specific structure.

Attempt to violate these rules. See how the software handles data that has serious problems in the format, either calmly or not.

Zero

The 0 law of Cem Kanner is. Only 0 exists, there will be something to be removed with it. It usually means that, assuming the software expects a set, it is often not possible to properly handle an empty collection (0 elements).

0, single, multi-

0 things, a thing, a number of things.

The counts may include the results returned by the search, the characters inside the string, the bytes in the data stream, the child nodes in the hierarchy, some files, the lines in the file, the accounts, the activities in the log, or the properties of a particular object, regardless of domain. Observe its behavior. Contains for example some of the following:

    • Plural lattice problem. such as "0 record found" or "1 record found".

    • The number or percentage of the problem. Contains a error except for 0 and a difference.
    • Quantity adds signs that cause performance problems.

Zoom

Pay attention to detailed details and narrow your horizons when necessary.

For example, in a state model, you can first identify the events in the model. Then, the state transitions of the software are split into specific steps in order to discover the sub-state from it.

Give a specific example of the software that agrees to create and update entries for the user. You can choose the "Save" event to split into data transfer, validation data, and response steps.

Each of these steps consists of a state and an event that triggers its state transition.

Ii. Web Revelation Law

These revelations are ideal for use in Web-based applications.

Back, forward, history

Users can use the Web App in the form of direct interaction, as well as the browser's history feature. Contains the back, Forward button, and history. Rich Web applications are not always handled properly.

Note For example the following conditions:

    • A warning about the post data being re-sent to the server.
    • Repeated transactions.
    • 404 error.
    • A webpage that displays only part of the data.
    • Various errors, including corrupted images and broken links.

Save As Bookmark

Users will save various types of pages as bookmarks. Contains pages that are not designed to be saved as bookmarks. In particular, try to save the pages that appear in the middle of the action flow as bookmarks. For example, the checkout page in the purchase process. Need to note the "retreat, advance, history" like the Italian issue of observation.

Copyright notice: This article Bo Master original articles, blogs, without consent may not be reproduced.

Testing heuristic problems

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.