在 Protractor 中调用 getText() 时 ElementFinder 正在记录

ElementFinder is logging when calling getText() in Protractor

我正在尝试在 Protractor 测试中获取以下文本:

我得到了 <a> 标签的 XPath 并试图在下面的测试中使用它,但是当我 运行 时,测试 Samsung Note 8 没有被记录,而是一个包含以下内容的大型对象已记录:

ElementFinder {
  browser_: ProtractorBrowser {
    controlFlow: [Function],
    schedule: [Function],
    setFileDetector: [Function],
    getExecutor: [Function],
    getSession: [Function],
    getCapabilities: [Function],
    quit: [Function],
    actions: [Function],
    touchActions: [Function],
......

这是我的测试代码:

it('does something', () => {
    selectItems("Samsung Note 8");
    element(by.css("a[class='nav-link btn btn-primary']")).click().then(() => {
        var EC = protractor.ExpectedConditions;
        var myTitle = element(by.xpath('/html/body/app-root/app-shop/div/div/div/table/tbody/tr[1]/td[1]/div/div/h4/a'));
        browser.wait(EC.elementToBeClickable(myTitle.getText()), 5000).then(() => {
            console.log(myTitle);
        });
    });
});

有人可以告诉我我做错了什么吗?

打印 getText 的解析值而不是元素查找器

    var myTitle = element(by.xpath('/html/body/app-root/app-shop/div/div/div/table/tbody/tr[1]/td[1]/div/div/h4/a')); 
browser.wait(EC.elementToBeClickable(myTitle), 5000);
    myTitle.getText().then((t)=>{
    console.log(t);
    })

而且我鼓励使用相对 xpath 而不是绝对 xpath。例如:'.media-heading a' 将是 css 选择器