この関数は、要素のサイズの代わりに未定義を返します。私は約束に精通していないので、私は別の方法でそれを書くことができませんでした。定義されていないが約束が返されるように書き直すにはどうすればよいですか?selenium-webdriverで未定義の返り値
コンソール:Expected undefined to be less than undefined.
var s1 = utilitiesPageObject.getElemSize("css", "#main-content > div > div > div.col-xs-12.col-md-6.align-left");
driver.findElement(By.css('#main-content > div > div > div.col-xs-12.col-md-6.align-left > div.slide-down-container > div.slide-down-btn.btn')).click()
var s2 = utilitiesPageObject.getElemSize("css", "#main-content > div > div > div.col-xs-12.col-md-6.align-left")
expect(s1).toBeLessThan(s2);
とutilitiesPageObjectから機能getElemSize
getElemSize(css, elem){
switch(css) {
case 'css':
this.driver.findElement(By.css(elem)).getSize().getHeight.then(s => {return s});
break;
case 'xpath':
this.driver.findElement(By.xpath(elem)).getSize().getHeight.then(s => {return s});
break;
default:
return null;
}
}
"main-content> div> div> div.col-xs-12.col-md-6.align-left'の要素を探しているところでHTMLを投稿できますか? – DomeTune
可能な複製[非同期呼び出しから応答を返すにはどうすればよいですか?](@stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call) – Andreas
@Andreas Whereあなたは質問で非同期呼び出しを見つけましたか? – DomeTune