Handbuch
Version 8.0.2 |
Comboboxen bieten die Herausforderung, dass es einen Teil für die Texteingabe bzw. das Öffnen einer Auswahlliste gibt sowie die angezeigte Liste mitsamt ihren Einträgen. Eine Listauswahl wird entsprechend immer mit zwei Mausklicks aufgezeichnet. Der erste Klick, der die Liste öffnet, und der zweite Klick, der den Listeneintrag auswählt.
Ein HTML SELECT
Knoten wird automatisch zu einer ComboBox gemappt
und die Listenauswahl wird als ein 'Auswahl' Knoten aufzeichnet.
| |||||||||||||||||||||
Tabelle 50.5: Mapping von ComboBoxen |
Für die Liste würde es auch ausreichen reine Listen und Listeneinträge zu mappen,
also List
und Item:ListItem
, siehe Abschnitt 50.1.6.
Beispiel:
HTML-Code für eine ComboBox:
| ||||
Beispiel 50.28: HTML ComboBox |
Eine ComboBox
besteht aus dem Container-Element, in dem die
aktuelle Auswahl angezeigt wird, sowie aus einer Liste, die die auswählbaren
Werte enthält. In unserem Beispiel ist diese Liste im dem DIV
-Objekt
enthalten, das auch die ComboBox
selbst enthält. Oft ist die Liste
jedoch an einer ganz anderen Stelle im DOM definiert. Diese finden Sie, indem
Sie die Liste öffnen und sie dann im Analyse-Tool des Browsers betrachten. Die
CSS-Klassen des Listenobjekte und der Listeneinträge können Sie auch herausfinden,
indem Sie mit QF-Test einen Klick auf die Liste aufnehmen und die qfs:class
Informationen in der 'Weitere Merkmale' Tabelle der aufgenommenen Komponente
auswerten.
| ||||
Beispiel 50.29: HTML ComboBox |
Bei dieser ComboBox
haben wir verschiedene Möglichkeiten,
diese in QF-Test zu definieren. Wenn man Kontakt zu den Anwendungsentwicklern
hat, ist es am sichersten, bei diesen nachzufragen, welches Kriterium
eine bestimmte Komponentenklasse identifiziert. Ist dies nicht der Fall,
sollte man sich für ein aller Wahrscheinlichkeit nach eindeutiges Kennzeichen
entscheiden und dieses bei anderen Komponenten der gleichen Klasse gegenprüfen.
Außerdem sollte man bei ähnlichen Komponentenklassen nachsehen, ob diese nicht
dummerweise ebenfalls das ausgewählte Kennzeichen verwenden. In diesem Fall
wählt man dann ein anderes, hoffentlich eindeutiges Kennzeichen
oder konkretisiert die Zuweisung durch Hinzufügen von ancestor:
...
Konkret bei diesem Beispiel ist role=combobox
für die ComboBox
selbst vermutlich eindeutig. Ebenso role=listbox
oder alternativ
css: listbox
für die Liste. Für welches der beiden man sich entscheidet,
dürfte gleichgültig sein. Bei Überschneidungen mit normalen Listen
kann auch der Klassentyp weggelassen werden. D.h. die Zuweisungen wären nur
List: listbox
und Item:ListItem:
.
Auf die Funktionalität innerhalb QF-Test hat dies keinen Einfluss.
Bei dem Listeneintrag könnten jedoch sowohl
class=result
als auch role=option
bei anderen
Elementen eingesetzt sein. Daher wird sicherheitshalber
ancestor: List:ComboBoxList
hinzugefügt, um eine Eindeutigkeit
herzustellen.
Letzte Änderung: 4.12.2024 Copyright © 1999-2024 Quality First Software GmbH |
Wir verwenden Cookies zur anonymisierten Auswertung Ihres Besuchs auf unserer Webseite durch »Matomo«. Dafür benötigen wir Ihr Einverständnis, welches für zwölf Monate gilt. Ein Widerruf bzw. Opt-out ist jederzeit auf unser Datenschutz-Seite möglich.
1. Funktionale Cookies
Wir verwenden funktionale Cookies, um die Basisfunktionalität der Webseite zu gewährleisten.
2. Performance und Statistik Cookies
Wir verwenden Matomo zur Analyse und Optimierung unserer Webseite. Cookies erlauben eine anonyme Erfassung der Informationen und helfen uns, Ihnen einen benutzerfreundlichen Besuch unserer Webseite zu bieten.
Dieses Cookie enthält eine eindeutige jedoch pseudonymisierte Matomo-interne Besucher-ID zur Erkennung wiederkehrender Besucher.
Dieses Cookie wird verwendet, um zu tracken, von welcher Website der anonymisierte Benutzer auf die Website gekommen ist.
Das Session Cookie von Matomo wird verwendet, um die Seitenanforderungen des Besuchers während der Sitzung zu verfolgen.
wird erzeugt und versucht sofort wieder zu löschen (zur Prüfung, ob der Browser des Besuchers Cookies unterstützt).
Kurzzeit-Cookies für temporäre Besuchsdatenspeicherung.
Kurzzeit-Cookies für temporäre Besuchsdatenspeicherung.