Chapter 2. Introduction

Table of Contents

2.1. Structure and Objects
2.2. Project - Managing a Test Project
2.3. Test Case - Defining a Test
2.4. Test Step - Determine the Test Activity Sequence
2.4.1. Test Step Result
2.4.2. Automated Test Cases
2.5. Test Segment - Reusing Test Steps
2.6. Test Suite - Arranging Test Cases
2.7. System under Test - The Test Object
2.8. Test Environment - The External Influence on the Test Result
2.9. Test Run - The Results of Executed Test Cases
2.10. Requirement – Properties of the System under Test
2.11. Iteration - Subdividing a Project into Phases
2.12. Job - Planning the Test Process
2.13. User - Users and their Rights
2.14. Overview of Objects
2.15. Issue - Reporting and Resolving Defects

2.1. Structure and Objects

Klaros-Test­management is a web-based test management solution for organizing, executing and evaluating all test activities. The functional scope covers all areas of the test process: test planning, test creation, test execution, assignment and evaluation of test tasks as well as test evaluation and report generation.

In this introduction the internal structure and function of the individual components, the objects, described. The following elements are defined as Objects in Klaros-Test­management: Project, Test Case, Test Step, Test Segment, Test Step Result, Test Case Result, Test Suite, Test Suite Result, Test Environment, Test System, Test Run, Requirement, Iteration and Job.

2.2. Project - Managing a Test Project

The top-level object is the Project. It contains all other objects required to define, plan, execute, and evaluate a particular test project.

Projects are typically self-contained units, but there are however also ways to reference objects in other projects. For more details on defining projects see Section 6.1.

2.3. Test Case - Defining a Test

Test Cases are the central objects of a project and may contain any number of test steps. They can be executed manually or automatically.

Test Case Structure

Figure 2.1. Test Case Structure


Test cases can be provided with attributes and include more detailed information:

Descriptive Attribute

  • Description
  • Precondition
  • Postcondition
  • Expected result
  • Test steps

Classifying Attributes

  • Execution type (Manual/Automated)
  • Priority (High/Medium/Low)
  • Status (Draft/Locked/Approved/Skip)
  • Test Type (Functional, Non-Functional, Structural, Regression, Re-Test)
  • Design Technique (Black-Box, White-Box)
  • Test Level (Component Test, Integration Test, System Test, Acceptance Test)
  • Variety (Positive, Negative)
  • Requirement reference (Document/traceability)

Additional fields can be defined for special requirements.

The test cases consist of individual test steps in which the test activities are defined and described.

2.4. Test Step - Determine the Test Activity Sequence

The Test Steps describe the test execution procedure. Each test step contains an instruction to the tester as to which action to perform. If desired, images and documents can be attached to each test step.

Test Step

Figure 2.2. Test Step


The description of the test step includes the following components:

Action

The textual description of the action the tester has to perform.

Precondition

The state the test system is in before the action begins.

Expected Result

The predicted behavior of the test system or component, based on the specification.

Postcondition

The expected state of the test system after the action has been performed.

2.4.1. Test Step Result

Klaros-Test­management guides the tester through the test execution step by step. Each step is completed by the tester with a Test Step Result and automatically recorded.

The test step result contains the following information:

Result

  • Passed: The test was completed as planned.
  • Failure: The test does not deliver the expected result.
  • Error: The test could not be performed.
  • Inconclusive: The test does not deliver a clear result
  • Skipped: The test step has been skipped.

Summary (optional)

A short summary of the test step result.

Description (optional)

A textual description of the test step result.

Duration

The automatically logged execution time of each individual test step.

2.4.2. Automated Test Cases

Automated test cases usually do not have test steps, since they are executed by an automated test tool (e.g. JUnit). The test results are provided in the form of a result file which will be imported into the system. Once Manual and automated test results are available can be jointly evaluated.

2.5. Test Segment - Reusing Test Steps

A Test Segment is a predefined sequence of test steps that is created as a separate object that can be inserted into any test case.

Test Segment

Figure 2.3. Test Segment


Often, certain test steps or sequences of test steps occur exactly the same in several test cases. To ensure that they are identical, these steps can be encapsulated in test segments and centrally managed, edited and stored.

The test steps of a test segment have exactly the same attributes as the test steps of a test case.

2.6. Test Suite - Arranging Test Cases

Test cases can be grouped into Test Suites to be executed together one after the other in one test run.

Test Suite

Figure 2.4. Test Suite


A test case can occur in multiple test suites. It is merely referenced, so that changes to the test case automatically affect all test suites that contain this test case.

2.7. System under Test - The Test Object

The System under Test is the component or system that is to be tested. Usually this is a software version, but can also be a specific device or other hardware. A test case can only be executed once a test system has been defined.

2.8. Test Environment - The External Influence on the Test Result

A Test Environment represents external conditions that may affect the test result. This can consist of hardware or software, such as a browser version used or the operating system in which the test system software was installed. A test case cannot be executed until a test environment has been defined.

2.9. Test Run - The Results of Executed Test Cases

A Test Run is automatically created when the tester starts to execute a test case or test suite. It is assigned to the test environment and system under test in use and collects all results that occur during the execution of the test case or test suite. The test runs thus document the entire test activities.

Test Run with Test Results

Figure 2.5. Test Run with Test Results


Test runs can be paused and continued later. The result (Passed, Failed, Error, Inconclusive, Skipped) appears in the evaluation only after all test cases of the test run have been completely executed. Until then, the test run with its collected results is not displayed.

Logged Parameters of a Test Run

During a test run, the following parameters are automatically logged and can be used for evaluation:

  • The test system used
  • The test environment used
  • The executed test case/test suite
  • The execution date
  • The executing user

2.10. Requirement – Properties of the System under Test

A Requirement is a predefined condition to be fulfilled that describes the desired properties of the system under test. To ensure that the system under test satisfies these properties, test cases are defined and these are assigned to the requirement that check the test cases. In this way, it can be verified which requirements are covered by tests ( coverage) and which of them were executed with the result passed ( conformity).

From this set of information Klaros-Test­management is able to automatically determine coverage and compliance information for the whole project or selected objects once the first test results are available.

Attributes

  • Name
  • Priority (High/Medium/Low)
  • Short Description
  • Long Description

2.11. Iteration - Subdividing a Project into Phases

An Iteration represents a selected phase of a project. It encapsulates a subset of objects including all tasks and test results executed during that phase. Grouping objects in this way makes it easier to identify different test cycles in a project and enables better integration of the testing process, especially with agile software development practices.

In an iteration, the test systems, test environments and requirements under consideration are defined within a project for a specific period of time.

2.12. Job - Planning the Test Process

Test activities are planned and coordinated by means of a Job. For this purpose, the execution of a test case or a test suite is specified in the job.

After a job is created, it can be assigned to a user and executed and evaluated by him. Jobs can be repeated and executed multiple times, so that they can be assigned to multiple test runs. Jobs can be arranged hierarchically and dependencies between jobs can be specified.

Job

Figure 2.6. Job


In addition to test execution, other job types are supported. These are used for checking test cases, planning requirements and formulating any other jobs in text form.

Jobs can be nested and individually assigned to users. Therefore, it is possible to track progress of larger, distributed test activities.

2.13. User - Users and their Rights

Klaros-Test­management offers four different user roles, which are assigned when the user is created and can be changed later if necessary: Administrator, Manager, Tester and Guest.

Administrator

An Administrator always has access to all functions in Klaros-Test­management. In addition to the test-specific activities, this also includes user administration, backups and recovery as well as system-wide settings.

Test Manager

Test Managers have full read and write access to all data of a project. They can create and delete objects and manage project settings. This also includes creating, editing and deleting users with the Tester or Guestrole.

Tester

Testers can run tests, edit test results and issues, and display reports. Beyond this, they have read-only access.

Guest

The Guest role is intended for project managers, customers or reviewers. This role has complete but read-only access to all data and can display, save and export reports in other formats.

The global user roles apply to all existing projects. However, if necessary, the role of a user can be assigned individually in each project.

Project Specific User Roles

In addition to the global assignment, it is possible to reassign the user roles per project or to exclude users from individual projects. The user retains his global role, but receives extended or restricted rights or no access in the selected project.

This is useful, for example, when integrating external employees who are only active in a specific project. On the other hand, a tester may need test manager rights in certain projects and can receive the corresponding assignment.

Detailed information about the role permissions can be found in Appendix A.

2.14. Overview of Objects

Objects Overview

Figure 2.7. Objects Overview


2.15. Issue - Reporting and Resolving Defects

Klaros-Test­management integrates with issue tracking systems like Jira, Redmine, GitLab and many others (see Section 12.5). If a defect is found in a test step, it can be passed directly from Klaros to the connected issue management system without leaving the application.

The entry is automatically linked in both systems. Changes in the issue tracker are regularly synchronized with test management in the background. An automatically generated backlink in the issue management system leads back to the test case in Klaros-Test­management with one click.