Javascript 用量角器在页面上做标记

Javascript 用量角器在页面上做标记,javascript,jasmine,protractor,Javascript,Jasmine,Protractor,我希望能够在页面上四处搜索并获得元素的焦点,但在尝试这样做时遇到了问题 我一直在使用我在这里找到的一些代码,我在谷歌上试用过,效果很好。但是我不能使用我正在测试的页面上的方法。 Google.com的工作代码: describe('Test', () => { it('should browse to google', () => { browser.waitForAngularEnabled(false); browser.ignoreSynchronizati

我希望能够在页面上四处搜索并获得元素的焦点,但在尝试这样做时遇到了问题

我一直在使用我在这里找到的一些代码,我在谷歌上试用过,效果很好。但是我不能使用我正在测试的页面上的方法。 Google.com的工作代码:

describe('Test', () => {
  it('should browse to google', () => {
    browser.waitForAngularEnabled(false);
    browser.ignoreSynchronization = true;
    browser.driver.get('https://www.google.com');
    expect(browser.getCurrentUrl()).toEqual('https://www.google.com/');
  });

  it('should unfocus the search field', function () {
    const search = element(by.name('q'));
    search.sendKeys(protractor.Key.TAB);
    expect(element(by.css('.xPnqmf')).getAttribute('aria-label'))
      .toEqual(browser.driver.switchTo().activeElement().getAttribute('aria-label'));
  });
});
然而,我不能在我自己正在测试的页面上使用这种方法

我为这个有棱角的建筑站点使用的代码:

const header = element(by.cssContainingText('Selector', 'Text'));
        header.sendKeys(protractor.Key.TAB);
我收到错误消息:-失败:元素不可交互
但在我达到这一点之前,我已经使用了几次完全相同的元素,并且工作正常。因此,我完全不知道如何从这里开始:(是否有其他方法可以尝试?

首先,确认定位器从页面中找到所需的元素,然后确认代码等待足够的时间加载页面,定位器工作正常,因为在进入制表阶段之前,我使用了完全相同的定位器大约5次。这就是为什么我感到困惑,为什么我会在此时收到错误消息测试的第三阶段。我也尝试过在制表时间前后使用长睡眠来查看是否有效,但不幸的是没有。请显示目标元素的HTML代码HTML非常基本。有一个表包含一个表头,该表包含两个表头列。我正在使用该方法“by.cssContainingText”来选择带有特定文本的表格标题列。我是这项工作的新手,他们告诉我复制HTML代码是不好的,因为其中有太多的名称,他们不想在这里看到(为政府工作)。在同一测试中,我在同一个元素上单击了几次,效果很好。我认为您的问题在于您使用的元素不是输入或文本区域。量角器sendKeys不适用于其他元素