盖伦:如何等待具有相同 url 的动态新页面
galen: how to wait dynamic new page with same url
我开始与 Galen 合作,我的测试非常完美:
this.HomePage = $page('Welcome Page', {
aboutButton: 'nav.navbar .about'
});
this.AboutPage = $page('About page', {
modalContent: 'div.modal-content',
supportLink: '.support-link',
dismissButton: '.dismiss'
});
var homePage = new HomePage(driver);
homePage.waitForIt();
homePage.aboutButton.click();
var aboutPage = new AboutPage(driver);
aboutPage.waitForIt();
我理解 waitForIt
方法等待页面定义的所有属性,以便框架知道何时执行下一条语句。
现在,我想 运行 这是一个 g运行t 任务,我一直在使用 grunt-galenframework
,并且我配置正确,一切正常,但我可以'使前面的测试通过,任务代码如下:
load('../gl.js');
forAll(config.getDevices(), function (device) {
test('simple test on ' + device.deviceName, function () {
gl.openPage(device, config.getProjectPage(), "Welcome Page", {
aboutButton: 'nav.navbar .about'
});
elements.aboutButton.click();
// MISSING WAIT FOR ABOUT_PAGE
gl.runSpecFile(device, './test/responsive/galen/about.gspec');
});
});
如你所见,我进入Welcome Page
然后我需要点击一个按钮,等待对话框出现,然后勾选about.gspec
规范(他们验证对话框中的元素)。
那么如何添加等待新元素出现在同一个 URL 上? 感觉 grunt-galenframework
只提供 wait
当使用 openPage
方法输入新的 url 时。
你可以试试
elements.newElement.waitToBeShown()
here 中的方法应该可用。
PS: 我是 Galen 的 grunt 插件的作者,也参与了 Galen 框架本身的开发
我开始与 Galen 合作,我的测试非常完美:
this.HomePage = $page('Welcome Page', {
aboutButton: 'nav.navbar .about'
});
this.AboutPage = $page('About page', {
modalContent: 'div.modal-content',
supportLink: '.support-link',
dismissButton: '.dismiss'
});
var homePage = new HomePage(driver);
homePage.waitForIt();
homePage.aboutButton.click();
var aboutPage = new AboutPage(driver);
aboutPage.waitForIt();
我理解 waitForIt
方法等待页面定义的所有属性,以便框架知道何时执行下一条语句。
现在,我想 运行 这是一个 g运行t 任务,我一直在使用 grunt-galenframework
,并且我配置正确,一切正常,但我可以'使前面的测试通过,任务代码如下:
load('../gl.js');
forAll(config.getDevices(), function (device) {
test('simple test on ' + device.deviceName, function () {
gl.openPage(device, config.getProjectPage(), "Welcome Page", {
aboutButton: 'nav.navbar .about'
});
elements.aboutButton.click();
// MISSING WAIT FOR ABOUT_PAGE
gl.runSpecFile(device, './test/responsive/galen/about.gspec');
});
});
如你所见,我进入Welcome Page
然后我需要点击一个按钮,等待对话框出现,然后勾选about.gspec
规范(他们验证对话框中的元素)。
那么如何添加等待新元素出现在同一个 URL 上? 感觉 grunt-galenframework
只提供 wait
当使用 openPage
方法输入新的 url 时。
你可以试试
elements.newElement.waitToBeShown()
here 中的方法应该可用。
PS: 我是 Galen 的 grunt 插件的作者,也参与了 Galen 框架本身的开发