2016-06-22 10 views
0

Mit Ruby on Rails betreibe ich einen Selenium-Dienst. Ich laufe oft durch eine Webseite.Wie man pausiert/wartet, bis die Schaltfläche nicht deaktiviert wird

Ich habe ein bisschen Ärger, da ich manchmal darauf warten muss, dass die 'Taste' aktiv ist (in einem nicht deaktivierten Zustand).

# wait for a specific element to show up 
wait = Selenium::WebDriver::Wait.new(:timeout => 10) # seconds 
wait.until { driver.find_element(:id => "foo") } 

So versuche ich unter die wait.until Methode zu verwenden, aber die Syntax nicht bekommen kann. Ich habe es versucht.

``` 
    def css_removed_timeout(css) 
    wait = Selenium::WebDriver::Wait.new(timeout: 10) 
    wait.until { !find_css(css).displayed? } 
    end``` 

Gibt es trotzdem zu erkennen 'nicht angezeigt'? (Gibt es ein 'is_empty' in Ruby)?

Antwort

0

Es gibt eine .empty? Methode auf Arrays.

Wenn Sie ActiveSupport einschließen, gibt es eine .blank?-Methode, die auf Arrays, Strings und Hashes funktioniert.

Einfacher können Sie überprüfen if array.length == 0

Verwandte Themen