更新行顺序后如何验证Angular网格的第一行?

问题描述

我正在尝试为Angular Grid创建量角器测试。

为了进行测试,我单击了网格上的一列,然后对行进行了重新排序。

单击此键后,我想通过检查该行的第一个单元格来验证行的顺序是否已正确更新。

下面是我的测试代码

myNavbarPage.API_610_Table_H1_button.click();
browser.sleep(2000);
myApi610TableH1.Parts_table_header.click();
browser.sleep(5000);
const first = element.all(by.css('div.ag-cell[aria-colindex="1"]')).first();
expect(first.getText()).toBe('Case Gaskets');

我面临的问题是first.getText()以原始顺序而不是更新的顺序返回第一行的值。

有人可以告诉我网格更新后如何验证第一行中的单元格吗?

注意:我已经为自己添加browser.sleep(),因此我可以验证按钮的点击,重新排序等是否都按预期进行。

解决方法

发生这种情况可能有很多原因,但首先请尝试添加async/await

it('test case',async () => {
  await myNavbarPage.API_610_Table_H1_button.click();
  await browser.sleep(2000);
  await myApi610TableH1.Parts_table_header.click();
  await browser.sleep(5000);
  const first = element.all(by.css('div.ag-cell[aria-colindex="1"]')).first();
  expect(await first.getText()).toBe('Case Gaskets');
});