Angularjs 量角器:识别不可见元素。
当我在量角器中运行测试时,我收到错误消息说 信息: 失败:元素不可见 是否仍然可以找到不可见的元素 堆栈: ElementNotVisibleError:元素不可见 (会话信息:chrome=56.0.2924.87) (驱动程序信息:chromedriver=2.26.436362(5476ec6bf7ccbada1734a0cdec7d570bb042aa30),平台=Windows NT 6.3.9600 x8664)(警告:服务器未提供任何堆栈跟踪信息) 形态: 规格jsAngularjs 量角器:识别不可见元素。,angularjs,jasmine,protractor,Angularjs,Jasmine,Protractor,当我在量角器中运行测试时,我收到错误消息说 信息: 失败:元素不可见 是否仍然可以找到不可见的元素 堆栈: ElementNotVisibleError:元素不可见 (会话信息:chrome=56.0.2924.87) (驱动程序信息:chromedriver=2.26.436362(5476ec6bf7ccbada1734a0cdec7d570bb042aa30),平台=Windows NT 6.3.9600 x8664)(警告:服务器未提供任何堆栈跟踪信息) 形态: 规格js 如果您单击的元
如果您单击的元素应该是可见的,并且应该在页面上(不是条件外观或随机性),那么您可以通过以下方式进行操作:
browser.executeScript("$('#toast-container').remove();");
element.all(by.css('.dx-datagrid-table')).all(by.css('.dx-data-row')).get(0).click().then(function () {
element.all(by.css('.dx-row.dx-data-row.dx-column-lines.bold_item.dx-selection')).first().click().click().then(function () {
var currentUrl = browser.driver.getCurrentUrl();
expect(currentUrl).toMatch('/itemMaintenance/edit');
browser.sleep(2000);
browser.executeScript("$('#toast-container').remove();");
var family = element.all(by.css('.selectize-input')).get(4);
//added-start
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(family), 5000, 'Element was not visible in time');
//added-end
family.click().then(function () {
browser.sleep(12222);
element.all(by.css('.selectize-input input')).get(4).sendKeys(121212);
browser.sleep(10000);
var content = element.all(by.css('.selectize-dropdown-content')).get(0);
content.all(by.css('.option')).get(1).click();
browser.sleep(2000);
});
});
browser.sleep(1000);
});
如果您单击的元素应该是可见的,并且应该在页面上(不是条件外观或随机性),那么您可以通过以下方式进行操作:
browser.executeScript("$('#toast-container').remove();");
element.all(by.css('.dx-datagrid-table')).all(by.css('.dx-data-row')).get(0).click().then(function () {
element.all(by.css('.dx-row.dx-data-row.dx-column-lines.bold_item.dx-selection')).first().click().click().then(function () {
var currentUrl = browser.driver.getCurrentUrl();
expect(currentUrl).toMatch('/itemMaintenance/edit');
browser.sleep(2000);
browser.executeScript("$('#toast-container').remove();");
var family = element.all(by.css('.selectize-input')).get(4);
//added-start
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(family), 5000, 'Element was not visible in time');
//added-end
family.click().then(function () {
browser.sleep(12222);
element.all(by.css('.selectize-input input')).get(4).sendKeys(121212);
browser.sleep(10000);
var content = element.all(by.css('.selectize-dropdown-content')).get(0);
content.all(by.css('.option')).get(1).click();
browser.sleep(2000);
});
});
browser.sleep(1000);
});
check
isDisplayed
当元素存在但不存在时,返回falsevisible@maurycy不管怎样,我们可以了解堆栈跟踪信息中的不可见元素吗?checkisDisplayed
当元素存在但不存在时,返回falsevisible@maurycy不管怎样,我们可以了解堆栈跟踪信息中的不可见元素吗?
browser.executeScript("$('#toast-container').remove();");
element.all(by.css('.dx-datagrid-table')).all(by.css('.dx-data-row')).get(0).click().then(function () {
element.all(by.css('.dx-row.dx-data-row.dx-column-lines.bold_item.dx-selection')).first().click().click().then(function () {
var currentUrl = browser.driver.getCurrentUrl();
expect(currentUrl).toMatch('/itemMaintenance/edit');
browser.sleep(2000);
browser.executeScript("$('#toast-container').remove();");
var family = element.all(by.css('.selectize-input')).get(4);
//added-start
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(family), 5000, 'Element was not visible in time');
//added-end
family.click().then(function () {
browser.sleep(12222);
element.all(by.css('.selectize-input input')).get(4).sendKeys(121212);
browser.sleep(10000);
var content = element.all(by.css('.selectize-dropdown-content')).get(0);
content.all(by.css('.option')).get(1).click();
browser.sleep(2000);
});
});
browser.sleep(1000);
});