2018 bis heute | 2017 2016 2015 2014 | 2013 | 2012

Mailingliste - Einträge 2018 bis heute

<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:10pt"><div><span>Thanks for your help Martin</span></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><br><span></span></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>May I share <span style="font-weight: bold;">Approach# 3</span> - Class index of Component</span></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><br><span></span></div><div style="color: rgb(0,
 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>- In the component defined </span><span><span>to the div element matching "class"="item" -> </span>Set a variable into the "Class Index" structure field (e.g. input <span style="font-weight: bold;">"$(myIndex)</span>" into "<span style="font-weight: bold;">Class Index" field</span>)  </span></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>- Now back in the Test Case node add a "<span style="font-weight: bold;">loop node</span>" </span></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent;
 font-style: normal;"><span>- in loop Node set "<span style="font-weight: bold;">myIndex</span>" variable into the "<span style="font-weight: bold;">Iteration counter</span>" field</span></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>- within the previous loop node, insert a "<span style="font-weight: bold;">Fetch text</span>" node or any "check node" where "<span style="font-weight: bold;">Component id</span>" is set to </span>that <span>component defined </span><span><span>to the div element matching "class"="item" <br></span></span></div><div style="color: rgb(0, 0, 0); font-size: 13.3333px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span><span>- the loop now iterates all div child
 elements<br></span></span></div><div style="display: block;" class="yahoo_quoted"> <br>This approach may required less Jython/Groovy programming for Business testers with less technical skills<br><br><span style="font-weight: bold;">NOTE</span> that you could set the "<span style="font-weight: bold;">Number Of Iterations" of the loop node via SUT Script</span>.<br>Something like:<br>node = rc.getComponent("COMPONENT-ID-OF-DIV-ELEMENT")<br clear="none">children = node.getChildren()<br>rc.setGlobal("myNumIterationVariable", len(children))<br><br><br><br> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 10pt;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 12pt;"> <div dir="ltr"> <font face="Arial" size="2"> Le Jeudi 27 fvrier 2014 14h09, Gwenael Plantefeve <gwen0504@yahoo.com> a crit :<br> </font> </div>  <div
 class="y_msg_container"><div id="yiv5873978571"><div><div style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:10pt;">Thanks for your help.<br clear="none">Approach works fine, even thought I was expecting to avoid scripting to iterate div elements.<br clear="none"><div><span><br clear="none"></span></div><div class="yiv5873978571yqt3413145112" id="yiv5873978571yqt82994"><div class="yiv5873978571yahoo_quoted" style="display:block;"> <br clear="none"> <br clear="none"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:10pt;"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:12pt;"> <div dir="ltr"> <font face="Arial" size="2"> Le Mercredi 26 fvrier 2014 14h30, Martin Moser <martin.moser@qfs.de> a crit :<br clear="none"> </font> </div>  <div
 class="yiv5873978571y_msg_container">Hi Gwen,<br clear="none"><br clear="none">there are several ways for doing this:<br clear="none"><br clear="none">1) Approach 1 - Simlpe SUT script:<br clear="none">You can
 record a click on the DIV element with the class list.<br clear="none">Afterwards you can use a SUT-script (Insert node -> Control structures -> <br clear="none">SUT script) like this:<br clear="none"><br clear="none">node = rc.getComponent("COMPONENT-ID-OF-DIV-ELEMENT")<br clear="none">children = node.getChildren()<br clear="none">for child in children:<br clear="none">    if child.getAttribute("class") == "item":<br clear="none">        #asserts on child<br clear="none"><br clear="none">2.) Approach 2 - Use CustomResolver and SUT script:<br clear="none">A more elegant approach could be that you tell QF-Test that a web object <br clear="none">with the attribute class="list" should act as list.<br clear="none">Therefore call the procedure "qfs.web.ajax.installCustomWebResolver" from <br clear="none">the standard library qfs.qft.<br clear="none">There you specify the argument "goodClasses" and set
 "item,list" as value.<br clear="none"><br clear="none">Afterwards you record a click at the object with the list again and insert <br clear="none">a SUT-script, but with following code:<br clear="none"><br clear="none"><br clear="none">node = rc.getComponent("COMPONENT-ID-OF-DIV-ELEMENT")<br clear="none">children = node.getElementsByClassName("item")<br clear="none">for child in children:<br clear="none">    #asserts on child<br clear="none"><br clear="none"><br clear="none">Best Regards,<br clear="none">Martin<br clear="none"><br clear="none">--On Dienstag, Februar 25, 2014 10:58:42 +0000 Gwenael Plantefeve <br clear="none"><<a rel="nofollow" shape="rect" ymailto="mailto:gwen0504@yahoo.com" target="_blank" href="mailto:gwen0504@yahoo.com">gwen0504@yahoo.com</a>> wrote:<div class="yiv5873978571yqt5096494962" id="yiv5873978571yqtfd34430"><br clear="none"><br clear="none">> Hi,<br clear="none">><br clear="none">> In Web
 testing, I have the following Web page structure:<br clear="none">> ...<br clear="none">><br clear="none">> <div class="list"><br clear="none">>     <div class="item">value1</div><br clear="none">>     <div class="item">value2</div><br clear="none">>     <div class="item">value3</div><br clear="none">>     <div class="item">value4</div><br clear="none">> </div><br clear="none">> ...<br clear="none">><br clear="none">><br clear="none">> I would like to iterate all div elements with same class name (here<br clear="none">> class="item"). And do some asserts on value of each div element.<br clear="none">><br clear="none">><br clear="none">> What is the best way to handle this?<br clear="none">><br clear="none">> Thanks in advance for your help<br clear="none">><br clear="none">>
 Gwen</div><br clear="none"><br clear="none"><br clear="none"><br clear="none">-- <br clear="none">Martin Moser<br clear="none">Development & Support<br clear="none"><br clear="none">E: <a rel="nofollow" shape="rect" ymailto="mailto:martin.moser@qfs.de" target="_blank" href="mailto:martin.moser@qfs.de">martin.moser@qfs.de</a><br clear="none">T: +49 (0)8171 38648-14<br clear="none">F: +49 (0)8171 38648-16<br clear="none"><br clear="none">Quality First Software GmbH | www.qfs.de<br clear="none">Tulpenstr. 41 | 82538 Geretsried | Germany<br clear="none">GF Gregor Schmid, Karlheinz Kellerer<br clear="none">HRB Mnchen 140833<br clear="none"><br clear="none"></div>  </div> </div>  </div></div> </div></div></div><br><br></div>  </div> </div>  </div> </div></body></html>