我正在尝试使用量角器从多个页面获取文本,但是递归似乎不起作用...
这个想法是:
代码是(coffeescript):
# define function getMyList
getMyList = (CL, CLTemp) ->
console.log "In function"
tabs = element.all(By.css "[name='some selector']").map((elm) -> elm.getText())
tabs.then((text) ->
CL.push text
return)
browser.wait(->
CL.length != CLTemp.length).then ->
console.log CL.length
nextPage = element(By.css "[title='Next Page']")
# hasClass is a function determining if the button is enabled or not
return hasClass("[title='Next Page']", 'disabled').then (class_found) ->
if class_found
console.log CL
return CL
else
console.log "Enabled"
CLTemp = CL
# scroll down to the button
browser.executeScript("arguments[0].scrollIntoView();", nextPage.getWebElement()).then ->
nextPageGo = element(By.css "[title='Next Page'] span[class=ng-binding]")
nextPageGo.click().then ->
getMyList (CL, CLTemp)
return
return
return
# Run the function. myList = [] and myListTemp = []
getMyList (myList, myListTemp)
结果打印:
In function 1 Enabled In function
意味着它可以运行到第一次递归(即,转到下一页),但是停止获取第二页的文本?
我已经抓了两天但仍然无法弄清楚为什么递归不起作用......
我是量角器的新手。如果我能得到一些提示,那将是很棒的!非常感谢你。