Module-5 UID 15CS832
Module-5 UID 15CS832
Interface Testing
Objective
To understand the testing features of Interface and selecting proper testing tool
To know about various layout design principles to implement
To acquire knowledge about hypermedia, www and visualization
To know about various software tools
Amount of information:
— Present the proper amount of information on each screen.
• Too little is inefficient.
• Too much is confusing.
— Present all information necessary for performing an action or making a
decision on one screen, whenever possible.
Organization:
— Provide an ordering that:
• Is logical and sequential.
• Is rhythmic, guiding a person’s eye through the display.
• Encourages natural movement sequences.
• Minimizes pointer and eye movement distances.
Control placement:
— Position the most important and frequently used controls at the top left.
— Maintain a top-to-bottom, left-to-right flow.
— If one control enables or affects another, the enabling control should be above
or to the left of the enabled control.
— Place the command buttons that affect the entire window horizontally, and
centered, at the window’s bottom.
Navigation:
— The flow of interaction should:
• Require as little cursor and pointer travel as possible.
• Minimize the number of times a person’s hand has to travel between the
keyboard and the mouse.
— Assist users in navigating through a screen by:
• Aligning elements.
• Grouping elements.
• Using line borders.
Dr.Lokesh M R, Professor, CSE, MIT, Mysore 2019-20
Aesthetics:
— Provide a visually pleasing composition through:
• Adequate use of white space.
• Balance.
• Groupings.
• Alignment of elements.
Visual clutter:
— Avoid visual clutter by:
• Maintaining low screen density levels.
• Maintaining distinctiveness of elements.
Focus and emphasis:
— Provide visual emphasis to the most important screen elements, its data or
information.
— Sequentially, direct attention to items that are:
1. Critical.
2. Important.
3. Secondary.
4. Peripheral.
Consistency:
— Provide consistency.
• With a person’s experiences and cultural conventions.
• Internally within a system.
• Externally across systems.
Organization Guidelines
Creating Groupings
General:
— Provide groupings of associated elements.
• Elements of a radio button or check box control.
• Two or more related fields or controls.
— Create groupings as close as possible to 5 degrees of visual angle.
White space:
— Provide adequate separation of groupings through the liberal use of white
space.
— Leave adequate space:
• Around groups of related controls.
• Between groupings and window borders.
— The space between groupings should be greater than the space between fields
within a grouping.
Headings:
— Provide section headings and subsection headings for multiple control
groupings.
— Provide headings that meaningfully and concisely describe the nature of the
group of related fields.
Borders:
Borders
Groupings can be further enhanced through the use of borders. Inscribe line
borders around elements of a single control such as a radio button or check box
and/or groups of related controls or fields.
Individual control borders should be visually differentiable from borders
delineating groupings of fields or controls.
Provide a border consisting of a thin line around single controls and a slightly
thicker line around groups of fields or controls.
Control Borders
— If the control caption exceeds the length of the choice descriptions, extend the
border two character positions to the right of the caption.
Section Borders
Either:
— Display these conditional controls in a subdued or grayed out manner.
• When a control is relevant, return it to a normal intensity.
— Do not display a conditional control until the information to which it relates is
set.
Inscribe a filled-in arrow between the selected control and its dependent
controls to visually relate them to each other.
List boxes:
— Left-align fixed list boxes.
— Captions:
• Those located above the boxes must be left-aligned.
Mixed controls
— Left-align vertically arrayed:
• Text boxes.
• Radio buttons.
• Check box boxes.
• Drop-down/pop-up list boxes.
• Spin boxes.
• Combination control boxes.
• List boxes.
— Captions may be left- or right-aligned.
Balancing Elements
General:
— Create balance by:
• Equally distributing controls, spatially, within a window.
• Aligning borders whenever possible.
Individual control borders:
— If more than one control with a border is incorporated within a column
on a screen:
• Align the controls following the guidelines for multiple-control
alignment.
• Align the left and right borders of all groups.
Section borders:
— If more than one section with borders is incorporated within a column
on a screen:
• Align the left and right borders of all groups.
• Establish the left and right border positions according to the
spacing required by the widest element within the groups.
Scope of Testing
Testing should begin in the earliest stages of product development and continue
throughout the development process.
It should include as many of the user’s tasks, and as many of the product’s
components, as reasonably possible.
Prototypes
Description:
— Screen sketches created by hand.
— Focus is on the design, not the interface mechanics.
— A low-fidelity prototype.
Advantages:
— Can be used very early in the development process.
— Suited for use by entire design team.
— No large investment of time and cost.
— No programming skill needed.
— Easily portable.
— Fast to modify and iterate.
— A rough approximation often yields more substantive critical comments.
— Easier to comprehend than functional specifications.
— Can be used to define requirements.
Disadvantages:
— Only a rough approximation.
— Limited in providing an understanding of navigation and flow.
— A demonstration, not an exercise.
— Driven by a facilitator, not the user.
— Limited usefulness for a usability test.
— A poor detailed specification for writing the code.
— Usually restricted to most common tasks.
Sketch Creation Process
o Sketch (storyboard) the screens while determining:
— The source of the screen’s information.
— The content and structure of individual screens.
— The overall order of screens and windows.
o Use an erasable medium.
o Sketch the screens needed to complete each workflow task.
o Try out selected metaphors and change them as necessary.
o First, storyboard common/critical/frequent scenarios.
— Follow them from beginning to end.
— Then, go back and build in exceptions.
o Don’t get too detailed; exact control positioning is not important, just
overall order and flow.
o Storyboard as a team, including at least one user.
o Only develop online prototypes when everyone agrees that a complete set
of screens has been satisfactorily sketched.
Description:
— Interface components (menus, windows, and screens) constructed of common
paper technologies (Post-It notes, transparencies, and so on).
— The components are manually manipulated to reflect the dynamics of the
software.
— A low-fidelity prototype.
Advantages:
— More illustrative of program dynamics than sketches.
— Can be used to demonstrate the interaction.
— Otherwise, generally the same as for hand-drawn sketches and scenarios.
Disadvantages:
— Only a rough approximation.
— A demonstration, not an exercise.
— Driven by a facilitator, not the user.
— Limited usefulness for usability testing.
Programmed Facades
o Description:
— Examples of finished dialogs and screens for some important aspects of the
system.
— Created by prototyping tools.
— Medium-fidelity to high-fidelity prototypes.
o Advantages:
— Provide a good detailed specification for writing code.
— A vehicle for data collection.
o Disadvantages:
— May solidify the design too soon.
— May create the false expectation that the ―real thing‖ is only a short time away.
— More expensive to develop.
— More time-consuming to create.
— Not effective for requirements gathering.
— Not all of the functions demonstrated may be used because of cost, schedule
limitations, or lack of user interest.
— Not practical for investigating more than two or three approaches.
Prototype-Oriented Languages
Description:
— An example of finished dialogs and screens for some important aspects of the
system.
— Created through programming languages that support the actual programming
process.
— A high-fidelity prototype.
Advantages:
Kinds of Tests
A test is a tool that is used to measure something. The ―something‖ may be:
Conformance with a requirement.
Conformance with guidelines for good design.
Identification of design problems.
Ease of system learning.
Retention of learning over time.
Speed of task completion.
Speed of need fulfillment.
Error rates.
Subjective user satisfaction.
Guidelines Review
Description:
— A review of the interface in terms of an organization’s standards and design
guidelines.
Advantages:
— Can be performed by developers.
— Low cost.
— Can identify general and recurring problems
— Particularly useful for identifying screen design and layout problems.
Disadvantages:
— May miss severe conceptual, navigation, and operational problems.
Heuristic Evaluation
Description:
— A detailed evaluation of a system by interface design specialists to identify
problems.
Advantages:
— Easy to do.
— Relatively low cost.
— Does not waste user’s time.
— Can identify many problems.
Disadvantages:
— Evaluators must possess interface design expertise.
— Evaluators may not possess an adequate understanding of the tasks and user
communities.
— Difficult to identify system wide structural problems.
— Difficult to uncover missing exits and interface elements.
Cognitive Walkthroughs
Description:
— Reviews of the interface in the context of tasks users perform.
Advantages:
— Allow a clear evaluation of the task flow early in the design process.
— Do not require a functioning prototype.
— Low cost.
— Can be used to evaluate alternate solutions.
— Can be performed by developers.
— More structured than a heuristic evaluation.
— Useful for assessing ―exploratory learning.‖
Disadvantages:
Think-Aloud Evaluations
Description:
— Users perform specific tasks while thinking out load.
— Comments are recorded and analyzed.
Advantages:
— Utilizes actual representative tasks.
— Provides insights into the user’s reasoning.
Disadvantages:
— May be difficult to get users to think out loud.
Guidelines:
— Develop:
• Several core or representative tasks.
• Tasks of particular concern.
— Limit session to 60 to 90 minutes.
Usability Test
Description:
— An interface evaluation under real-world or controlled conditions.
— Measures of performance are derived for specific tasks.
— Problems are identified.
Advantages:
— Utilizes an actual work environment.
— Identifies serious or recurring problems.
Disadvantages:
— High cost for establishing facility.
— Requires a test conductor with user interface expertise.
— Emphasizes first-time system usage.
Classic Experiments
Description:
— An objective comparison of two or more prototypes identical in all aspects
except for one design issue.
Advantages:
— Objective measures of performance are obtained.
— Subjective measures of user satisfaction may be obtained.
Disadvantages:
— Requires a rigorously controlled experiment to conduct the evaluation.
— The experiment conductor must have expertise in setting up, running, and
analyzing the data collected.
— Requires creation of multiple prototypes.
Guidelines:
— State a clear and testable hypothesis.
— Specify a small number of independent variables to be manipulated.
— Carefully choose the measurements.
— Judiciously select study participants and carefully or randomly assign them to
groups.
— Control for biasing factors.
— Collect the data in a controlled environment.
— Apply statistical methods to data analysis.
— Resolve the problem that led to conducting the experiment.
Focus Groups
Description:
— A discussion with users about interface design prototypes or tasks.
Advantages:
— Useful for:
• Obtaining initial user thoughts.
• Trying out ideas.
— Easy to set up and run.
— Low cost.
Disadvantages:
— Requires experienced moderator.
— Not useful for establishing:
• How people really work.
• What kinds of usability problems people have.
Guidelines:
— Restrict group size to 8 to 12.
— Limit to 90 to 120 minutes in length.
— Record session for later detailed analysis.
Test Participants
Hypermedia
Visualization
Fields of visualization
Educational visualization
Information visualization
Knowledge visualization
Product Visualization
Visual communication
Visual analytics
Visualization techniques
Constructing isosurfaces
direct volume rendering
Streamlines, streaklines, and pathlines
WWW
The World Wide Web (commonly shortened to the Web) is a system of interlinked
hypertext documents accessed via the Internet. With a Web browser, a user views Web
pages that may contain text, images, videos, and other multimedia and navigates between
them using hyperlinks.
The World Wide Web was created in 1989 by British scientist Sir Tim Berners-Lee,
working at the European Organization for Nuclear Research (CERN) in Geneva,
Switzerland, and released in 1992.
Since then, Berners-Lee has played an active role in guiding the development of Web
standards (such as the markup languages in which Web pages are composed), and in
recent years has advocated his vision of a Semantic Web.
Viewing a Web page on the World Wide Web normally begins either by typing the URL
of the page into a Web browser, or by following a hyperlink to that page or resource. The
Web browser then initiates a series of communication messages, behind the scenes, in
order to fetch and display it.
First, the server-name portion of the URL is resolved into an IP address using the global,
distributed Internet database known as the domain name system, or DNS. This IP address
is necessary to contact and send data packets to the Web server.
The browser then requests the resource by sending an HTTP request to the Web server at
that particular address.
In the case of a typical Web page, the HTML text of the page is requested first and parsed
immediately by the Web browser, which will then make additional requests for images
and any other files that form a part of the page.
Statistics measuring a website's popularity are usually based on the number of 'page
views' or associated server 'hits', or file requests, which take place.
Having received the required files from the Web server, the browser then renders the
page onto the screen as specified by its HTML, CSS, and other Web languages. Any
Standards
Many formal standards and other technical specifications define the operation of different
aspects of the World Wide Web, the Internet, and computer information exchange.
Many of the documents are the work of the World Wide Web Consortium (W3C),
headed by Berners-Lee, but some are produced by the Internet Engineering Task Force
(IETF) and other organizations.
Usually, when Web standards are discussed, the following publications are seen as
foundational:
Additional publications provide definitions of other essential technologies for the World
Wide Web, including, but not limited to, the following:
Java
Java client-side applets never gained the popularity that Sun had hoped for a variety of
reasons, including lack of integration with other content (applets were confined to small
boxes within the rendered page) and the fact that many computers at the time were
supplied to end users without a suitably installed Java Virtual Machine, and so required a
download by the user before applets would appear.
Adobe Flash now performs many of the functions that were originally envisioned for
Java applets, including the playing of video content, animation, and some rich GUI
JavaScript
JavaScript, on the other hand, is a scripting language that was initially developed for use
within Web pages. The standardized version is ECMAScript.
While its name is similar to Java, JavaScript was developed by Netscape and has very
little to do with Java, although the syntax of both languages is derived from the C
programming language.
In conjunction with a Web page's Document Object Model (DOM), JavaScript has
become a much more powerful technology than its creators originally envisioned. [citation
needed]
The manipulation of a page's DOM after the page is delivered to the client has been
called Dynamic HTML (DHTML), to emphasize a shift away from static HTML
displays.
In simple cases, all the optional information and actions available on a JavaScript-
enhanced Web page will have been downloaded when the page was first delivered.
This allows the page to be more responsive, interactive and interesting, without the user
having to wait for whole-page reloads. Ajax is seen as an important aspect of what is
being called Web 2.0. Examples of Ajax techniques currently in use can be seen in
Gmail, Google Maps, and other dynamic Web applications.
Web page production is available to individuals outside the mass media. In order to
publish a Web page, one does not have to go through a publisher or other media
institution, and potential readers could be found in all corners of the globe.
Many different kinds of information are available on the Web, and for those who wish to
know other societies, cultures, and peoples, it has become easier.
The increased opportunity to publish materials is observable in the countless personal and
social networking pages, as well as sites by families, small shops, etc., facilitated by the
emergence of free Web hosting services
The letters "www" are commonly found at the beginning of Web addresses because of
the long-standing practice of naming Internet hosts (servers) according to the services
they provide.
This use of such prefixes is not required by any technical standard; indeed, the first Web
server was at "nxoc01.cern.ch",[32] and even today many Web sites exist without a
"www" prefix. The "www" prefix has no meaning in the way the main Web site is
shown. The "www" prefix is simply one choice for a Web site's host name.
Some Web browsers will automatically try adding "www." to the beginning, and possibly
".com" to the end, of typed URLs if no host is found without them. ll major web browser
will also prefix "http://www." and append ".com" to the address bar contents if the
Control and Enter keys are pressed simultaneously.
Tools used for designing the interface, development environments for writing
code, and toolkits of graphical user interfaces.
Epark
o Windows95-like controls
o Easy to use geometry managers and containers
o Data presentation, application
o Binary and source code available
o No royalties or runtime fees
Converter
ICE Interface
WinRunner
LoadRunner
The Virtual User Generator allows us to determine what actions we would like our
Vusers, or virtual users, to perform within the application. We create scripts that generate
a series of actions, such as logging on, navigating through the application, and exiting the
program.
The Controller takes the scripts that we have made and runs them through a schedule that
we set up. We tell the Controller how many Vusers to activate, when to activate them,
and how to group the Vusers and keep track of them.
The Results and Analysis program gives us all the results of the load test in various
forms. It allows us to see summaries of data, as well as the details of the load test for
pinpointing problems or bottlenecks.
TestDirector
TestDirector, the industry’s first global test management solution, helps organizations
deploy high-quality applications more quickly and effectively. Its four modules
Requirements, Test Plan, Test Lab, and Defects are seamlessly integrated, allowing for a
smooth information flow between various testing stages. The completely Web-enabled
TestDirector supports high levels of communication and collaboration among distributed
testing teams, driving a more effective, efficient global application-testing process
Silk Test
2. Write the testcase manually using the Visual 4Test scripting language.
1. Record Testcase
The Record / Testcase command is used to record actions and verification steps as you
navigate through the application. Tests are recorded in an object-oriented language called
Visual 4Test. The recorded testreads like a logical trace of all of the steps that were
completed by the user. The Silk Test point and click verification system allows you to
record the verification step by selecting from a list of properties that are appropriate for
the type of object being tested. For example, you can verify the text is stored in a text
field.
We can write tests that are capable of accomplishing many variations on a test. The key
here is re-use. A test case can be designed to take parameters including input data and
expected results. This "data-driven" testcase is really an instance of a class of test cases
that performs certain steps to drive and verify the application-under-test. Each instance
varies by the data that it carries. Since far fewer tests are written with this approach,
changes in the GUI will result in reduced effort in updating tests. A data-driven test
design also allows for the externalization of testcase data and makes it possible to divide
the responsibilities for developing testing requirements and for developing test
automation. For example, it may be that a group of domain experts create the Testplan
Detail while another group of test engineers develop tests to satisfy those requirements.
In a script file, an automated testcase ideally addresses one test requirement. Specifically,
a 4Test function that begins with the test case keyword and contains a sequence of 4Test
statements. It drives an application to the state to be tested, verifies that the application
works as expected, and returns the application to its base state.
A script file is a file that contains one or more related testcases. A script file has a .t
extension, such as find .t
The main component of Robot lets you start recording tests in as few as two mouse
clicks. After recording, Robot plays back the tests in a fraction of the time it would take
to repeat the actions manually.
Rational Administrator Use to create and manage Rational projects, which store
your testing information.
Rational TestManager Log Use to review and analyze test results.
Object Properties, Text, Grid, and Image Comparators Use to view and analyze
the results of verification point playback.
Rational SiteCheck Use to manage Internet and intranet Web sites.