2017-05-08 2 views
0

Mein HTML wie folgt aussieht:Funksteuerung unsichtbar in Codeception Test

<label class="btn-radio "> 
 
    <input type="radio" value="1" name="pens" class="input_normal">     
 
    <span></span>Yes 
 
</label> 
 
...

In meinem codeception Test Ich versuche Funksteuerung zu setzen:

$I->selectOption("//*[@name=pens]/ancestor::label", "1"); 

aber es funktioniert nicht mit Fehler:

"Die Option konnte nicht ausgewählt werden" // * [@ name = 'pens' und @ wert = '1']/ancestor :: label "," 1 ": ElementNotVisibleException: Element nicht sichtbar".

Wenn ich die Wrapping-Tags entfernen, funktioniert es, aber UI ist ruiniert. Hat jemand dieses Problem schon einmal erlebt?

+1

Hast du diese http://automated-testing.info/t/kak-pravilno-vybrat-radio-button-esli-on-pererisovan- na-js/12064? – mcklayin

Antwort

0

mcklayin gab den richtigen Link zu der Lösung in seinem Kommentar. Hier ist meine Lösung (für andere bei Bedarf zu folgen). Ich hatte selectOption() mit Klick() ersetzen:

$pensionRequestField = "form#loan_application>div.form_fieldset>section>div#step1>div.row>div.col-19-24>fieldset#pension_registry>label#pension_option1"; 
$I->click(self::$pensionRequestField);