Mailingliste - Einträge 2014
Die Mailingliste ist seit Juli 2022 geschlossen, dient aber weiterhin als Informationsarchiv zu QF-Test.
Wenn Sie über Neuerungen zu QF-Test informiert bleiben wollen, können Sie einfach unseren Newsletter abonnieren:
Newsletter abonnieren
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [QF-Test] How to nicely iterate all DomNode such as Table Collection
Thanks for your help Martin May I share Approach# 3 - Class index of Component - In the component defined to the div element matching "class"="item" -> Set a variable into the "Class Index" structure field (e.g. input "$(myIndex)" into "Class Index" field) - Now back in the Test Case node add a "loop node" - in loop Node set "myIndex" variable into the "Iteration counter" field - within the previous loop node, insert a "Fetch text" node or any "check node" where "Component id" is set to that component defined to the div element matching "class"="item" - the loop now iterates all div child
elements This approach may required less Jython/Groovy programming for Business testers with less technical skills NOTE that you could set the "Number Of Iterations" of the loop node via SUT Script. Something like: node = rc.getComponent("COMPONENT-ID-OF-DIV-ELEMENT") children = node.getChildren() rc.setGlobal("myNumIterationVariable", len(children)) Le Jeudi 27 février 2014 14h09, Gwenael Plantefeve <gwen0504@?.com> a écrit : Thanks for your help. Approach works fine, even thought I was expecting to avoid scripting to iterate div elements. Le Mercredi 26 février 2014 14h30, Martin Moser <martin.moser@?.de> a écrit : Hi Gwen, there are several ways for doing this: 1) Approach 1 - Simlpe SUT script: You can record a click on the DIV element with the class list. Afterwards you can use a SUT-script (Insert node -> Control structures -> SUT script) like this: node = rc.getComponent("COMPONENT-ID-OF-DIV-ELEMENT") children = node.getChildren() for child in children: if child.getAttribute("class") == "item": #asserts on child 2.) Approach 2 - Use CustomResolver and SUT script: A more elegant approach could be that you tell QF-Test that a web object with the attribute class="list" should act as list. Therefore call the procedure "qfs.web.ajax.installCustomWebResolver" from the standard library qfs.qft. There you specify the argument "goodClasses" and set "item,list" as value. Afterwards you record a click at the object with the list again and insert a SUT-script, but with following code: node = rc.getComponent("COMPONENT-ID-OF-DIV-ELEMENT") children = node.getElementsByClassName("item") for child in children: #asserts on child Best Regards, Martin --On Dienstag, Februar 25, 2014 10:58:42 +0000 Gwenael Plantefeve <gwen0504@?.com> wrote: > Hi, > > In Web testing, I have the following Web page structure: > ... > > <div class="list"> > <div class="item">value1</div> > <div class="item">value2</div> > <div class="item">value3</div> > <div class="item">value4</div> > </div> > ... > > > I would like to iterate all div elements with same class name (here > class="item"). And do some asserts on value of each div element. > > > What is the best way to handle this? > > Thanks in advance for your help > > Gwen -- Martin Moser Development & Support E: martin.moser@?.de T: +49 (0)8171 38648-14 F: +49 (0)8171 38648-16 Quality First Software GmbH | www.qfs.de Tulpenstr. 41 | 82538 Geretsried | Germany GF Gregor Schmid, Karlheinz Kellerer HRB München 140833
|
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.