我是否需要在then()中包含更多的waitFor()步骤?

时间:2013-12-14 20:34:40

标签: javascript casperjs

据我所知open()waitFor()要求将以下步骤包含在then()中:

casper.click(x('//button[text()="Login"]'));

casper.waitForSelector(x('//span[text()="Navigation"]]'));

casper.capture('1.png');

casper.then(function () {
  casper.capture('2.png'); // Only this shows the navigation
});

当我有多个waitFor()步骤时,我是否需要自己链接它们或者链接自己?

casper.click(x('//button[text()="Login"]'));
casper.waitForSelector(x('//span[text()="Navigation"]]'));
casper.waitWhileSelector(x('//span[text()="Loading"]]'));
casper.then(function () {
  casper.capture('1.png'); // Under which condition will this be executed?
});

1 个答案:

答案 0 :(得分:0)

casper.wait*函数的步骤与casper.then的步骤相同。因此,它们不需要包含在then中。如果您这样做,请记住,wait*的内部步骤将在更高(层次)级别的所有其他步骤之后添加到队列中。

第二个代码执行与描述的相同。 wait*函数会等待。