Tabelle

Dieses Kapitel beschreibt die Steuerung von Tabellen mit der Tosca TBox. Beispiele für gängige Anwendungsfälle finden Sie am Ende dieses Kapitels. Wie Sie Tabellen mit dem Tabellensteuerungs-Editor bearbeiten finden Sie in Kapitel "Tabellen mit dem Tabellensteuerungs-Editor bearbeiten".

Sie können die folgenden Aktionen verwenden, um Spalten, Zeilen und Zellen in Tabellen zu steuern:

Aktion

Wert

Beschreibung

Input

<value>

Wert eingeben

Verify

<Wert>, <Eigenschaft>

Wert oder Eigenschaft überprüfen

Constraint

<value>

Suche einschränken

Buffer

<Buffername>, <Eigenschaft>-><Buffername>

Schreibt den Wert einer Zelle, Zeile oder Spalte in den Buffer.

Ausschließen

{TableCompare}

Dies schließt Zeilen und Spalten vom Baseline-Vergleich aus.

Darüber hinaus verwenden Sie die Aktion Select, um die Tabelle auszuwählen.

Wird die Aktion Constraint in einer Tabelle verwendet, werden beim Vergleich eines Wertes Leerzeichen, Tabulatoren und Zeilenumbrüche ignoriert.

Für Zellen kann die Aktion Input nur mit dem Wert CLICK verwendet werden. Um einen anderen Input-Wert für Zellen zu verwenden, müssen Sie eingebettete Controls erstellen.

Neben den allgemeinen Eigenschaften können Sie die folgenden Eigenschaften überprüfen:

Eigenschaft

Beschreibung

Verfügbar für

ColumnCount

Anzahl der Spalten der Tabelle.

tabelle

RowCount

Anzahl der Zeilen der Tabelle.

tabelle

ColumnNumber

Index der ausgewählten Spalte; für eine Kopfspalte ist der Wert 0, der Index für die anderen Spalten ist relativ zu dieser Spalte.

spalte

RowNumber

Index der ausgewählten Zeile; für eine Kopfzeile ist der Wert 0, der Index für die anderen Zeilen ist relativ zu dieser Zeile.

row

RawColumnNumber

Index der ausgewählten Spalte; dieser beginnt immer mit 1.

spalte

RawRowNumber

Index der ausgewählten Zeile; dieser beginnt immer mit 1.

row

ResultCount

Verwenden Sie diese Eigenschaft, um die Anzahl der Zellen mit dem angegebenen Inhalt innerhalb einer Zeile oder Spalte zu überprüfen. Beachten Sie Folgendes:

Zeile, Spalte

In diesem Beispiel erstellen Sie ein Modul aus der folgenden Tabelle:

Tabellenbeispiel

Sie erstellen dann die Eigenschaften des Testschritts Table Properties, um alle Tabelleneigenschaften erfolgreich zu überprüfen.

Überprüfung jeder Tabelleneigenschaft

Tabellenaufbau

Das Control Tabelle besteht aus den Attributen <Col> für Spalte und <Row> für Zeile. Jede Zeile oder Spalte kann beliebig viele Zellen mit dem Attribut <Cell> beinhalten.

Aufbau einer Tabelle

Die Angaben für Zeilen, Spalten und Zellen müssen über den Namen des jeweiligen Attributs erfolgen. Dadurch wird der Name des Attributs geändert. Werte in einer Zelle werden über die Spalte Wert angegeben. Für die Identifikation einer Zelle gibt es unterschiedliche Möglichkeiten:

Tabellenattribute

Tabellenattribut

Beschreibung

Baseline

Zeigt an, dass das Tabellen-Control eine Baseline enthält (siehe Kapitel "Baseline-Vergleich").

<Row>

Mögliche Werte zur Identifikation einer Zeile:

  • <Zeilenname>: ein Name, den Sie mit der Kopfzeile definieren (siehe Kapitel "Kopfzeile definieren").

  • $1: steuert die erste Zeile der Tabelle.

  • $<Zeilenposition>: steuert die angegebene Zeile der Tabelle.

  • $header: steuert die Kopfzeile der Tabelle.

  • $last: steuert die letzte Zeile der Tabelle.

  • $header: steuert eine Zelle in der Kopfzeile der Tabelle.

  • $lastContentRow: steuert die letzte Zeile einer Tabelle, die mit einem Wert befüllt ist.

  • $firstEmptyRow: steuert die erste Zeile einer Tabelle, die keinen Wert besitzt.

  • Geben Sie den Zellenwert in der Spalte Value an.

Das Präfix $ steuert eine Zeile in Bezug auf ihre Kopfzeile. Um eine Zeile basierend auf ihrer absoluten Position in einer Tabelle zu steuern, verwenden Sie das Präfix #.

<Col>

Mögliche Werte zur Identifikation einer Spalte:

  • <Spaltenname>: ein Name, den Sie mit der Kopfzeile definieren (siehe Kapitel "Kopfzeile definieren").

  • $1: steuert die erste Spalte der Tabelle.

  • $<Spaltenposition>: steuert die angegebene Spalte der Tabelle.

  • $last: steuert die letzte Spalte der Tabelle.

  • Geben Sie den Zellenwert in der Spalte Value an.

Das Präfix $ steuert eine Spalte in Bezug auf ihre Kopfzeile. Um eine Zeile basierend auf ihrer absoluten Position in einer Tabelle zu steuern, verwenden Sie das Präfix #.

<Cell>

Mögliche Werte für die Identifizierung von Zellen, die innerhalb eines Zeilen- oder Spaltenattributs verfügbar sind:

  • <Spalten- oder Zeilenname>: ein Name, den Sie mit der Kopfzeile definieren (siehe Kapitel "Kopfzeile definieren").

  • $1: steuert die erste Zelle der Tabelle.

  • $<Zellenposition>: steuert die angegebene Zelle einer Zeile oder Spalte.

  • $last: steuert die letzte Zelle der Zeile oder Spalte.

  • $header: steuert eine Zelle in der Kopfzeile der Tabelle.

  • $lastContentRow: steuert die letzte Zeile einer Tabelle, die mit einem Wert befüllt ist.

  • $firstEmptyRow: steuert die erste Zeile einer Tabelle, die keinen Wert besitzt.

  • Geben Sie den Zellenwert in der Spalte Value an.

Das Präfix $ steuert eine Zelle in Bezug auf eine Kopfzeile. Um eine Zelle basierend auf ihrer absoluten Position in einer Zeile oder Spalte zu steuern, verwenden Sie das Präfix #.

In diesem Beispiel erstellen Sie ein Modul aus der folgenden Tabelle:

Tabellenbeispiel

Sie erstellen dann den Testschritt Table Attributes, um einige der Attribute erfolgreich zu überprüfen.

Überprüfung unterschiedlicher Tabellenattribute

Kopfzeile definieren

Tabellen-Controls besitzen die Steering-Parameter HeaderColumn und HeaderRow. Diese werden vom Tosca XScan automatisch erkannt und können als technische Informationen in das Modul übernommen werden. Der Wert dieser Eigenschaften definiert, welche Zeile oder Spalte als Kopfzeile gilt. Die Kopfzeile wird über die Angabe des Wertes $header gesteuert.

Tabellen-Control mit Steering-Parameter für Kopfzeilen

Spalten, die sich vor einer definierten Kopfzeile oder Spalte befinden, werden über negative Zeilen- und Spaltennummern gesteuert.

In der folgenden Tabelle sind Beispiele für die Steuerung der jeweiligen Zelle über Zeilen- und Spaltennummern eingetragen.

 

 

 

 

 

 

$-2, $-2

 

 

 

 

$-2, $3

 

$-1, $-1

 

$-1, $1

 

 

 

$header, $-1

$header

$header, $1

$header, $2

 

 

 

 

$1, $1

$1, $2

 

$2, $-2

 

 

 

 

 

 

 

 

 

 

$3, $3

Dieser Testfall steuert die Tabelle. Es erfolgt ein Klick in die Kopfzeile in Zelle -1.

Steuerung einer Tabelle mit definierter Kopfzeile

Beachten Sie, dass die Befehle FirstEmpty und LastContent nicht bei Spalten oder Zeilen außerhalb der definierten Kopfzeile oder -spalte funktionieren.

Wertebereich für Zellen definieren

Die Werte der Zellen einer Tabelle werden als Wertebereich des Parameters ExplicitName in das Modul übernommen. Diese Namen können als Eingabewert für die Steuerung über einen Spalten-, Zeilen- oder Zellen-Testschritt-Teilwert aus dem Ausklappmenü ausgewählt werden (siehe "Tabellenattribute").

Für die Definition der Werte können auch dynamische Datums- und Zeitangaben, reguläre Ausdrücke und Zufallswerte verwendet werden.

Wertebereich für Zeilen und Spalten

Controls in einer Zelle definieren

Controls können in die Zelle einer Tabelle eingebettet werden, um die Zelle zu steuern. Ein eingebettetes Control muss keine eindeutige technische Identifikation besitzen, da das Control über die Zelle identifiziert wird. Für die Steuerung eines Controls müssen Sie allerdings ein entsprechendes Modulattribut für den jeweiligen Control-Typ erstellen. Das gilt für die Control-Typen Button, CheckBox, ComboBox, Link, Image, RadioButton, TextBox, Label und SAP TrafficLight. Sie können auch TextBoxen mithilfe von Zellen-Controls steuern.

  1. Selektieren Sie im Modul das Zellen-Control eines Zeilen- oder Spalten-Controls.

  2. Wählen Sie im Kontextmenü die Option Create Embedded <Control-Type> control.

Eingebettetes Control erstellen

Die Steuerung von Controls in einer Zelle erfolgt wie in den jeweiligen Kapiteln der einzelnen Control-Typen beschrieben.

Controls in einer Zelle

Decisive Column definieren

Einzelne Spalten einer Tabelle können vollständig mit Standarddaten befüllt sein - beispielsweise mit Währungs- oder Datumsangaben. Die Zellen dieser Spalten müssen jedoch keine relevanten Daten enthalten. Eine Spalte, die entscheidende Daten enthält, wird in Tosca als Decisive Column bezeichnet.

Es können jene Zeilen ausgelesen werden, die mit Werten befüllt sind.

Definieren Sie eine oder mehrere entscheidende Spalten über den Parameter DecisiveColumns eines Tabellenattributs. Mehrere Werte werden durch einen Strichpunkt getrennt angegeben (siehe "Beispiel 9 - Steuerung mit decisive columns").

Parameter DecisiveColumns