2016-04-07 9 views

答えて

1

は、コードソースの負のウェイトを見つけることができます(JavaやPythonやC#を使用してJavascriptを使用していない)セレンwebdriverをを使用しています

。ソリューションは、独自の条件を実装するために、次のようになります。

var webdriver = require('selenium-webdriver'); 
var until = webdriver.until; 
var By = webdriver.By; 

until.elementIsNotPresent = function elementIsNotPresent(locator) { 
    return new until.Condition('for no element to be located ' + locator, function(driver) { 
    return driver.findElements(locator).then(function(elements) { 
     return elements.length == 0; 
    }); 
    }); 
}; 

driver.wait(until.elementIsNotPresent(By.css(".popup-backdrop fade")), 15000); 
+0

を、 'until.Condition'はコンストラクタではありません。 –

0

あなたはまた、のような何かを試みることができる:セレン4のとおり

let faderElement = webdriver.By.css('.fader'); 
driver.wait(webdriver.until.elementLocated(faderElement)); 
let faderElementFound = driver.findElement(faderElement); 
driver.wait(webdriver.until.elementIsVisible(faderElementFound)); 
driver.wait(webdriver.until.elementIsNotVisible(faderElementFound)); 
+0

このコードがどのようにOPが何を求めているのかを説明してください – Luuklag

+0

コードは何とか自明ですが、最初の4行はフェーダーが見つかって見えることを確認します。多くの場合、フェーダーはすぐには見えないか、または識別できません。なぜなら、要素が配置されてから表示されるのを待っているからです。 5行目で、要素が徐々に消えたり消えたりするのを待っています。フェーダーがボタンを隠してしまったとすると、今度はそのボタンをクリックすることができます。 –

関連する問題