gpt4 book ai didi

javascript - Protractor 返回一个对象但预期 - element.getText() 的值

转载 作者:数据小太阳 更新时间:2023-10-29 04:07:02 26 4
gpt4 key购买 nike

无法理解为什么它返回一个对象而不是文本值,一些测试代码:

describe('columns swap', function () {

describe('location column ', function () {
it('should swap right', function () {
browser.sleep(10000);
var fColumn = element(by.xpath('(//*[@class="k-link"])[2]')).getText();
console.log(fColumn);

控制台输出:

>   columns swap
> location column { ptor_: { controlFlow: [Function],
> schedule: [Function],
> getSession: [Function],
> getCapabilities: [Function],
> quit: [Function],
> actions: [Function],
> executeScript: [Function],
> executeAsyncScript: [Function],
> call: [Function],
> wait: [Function],
> sleep: [Function],
> getWindowHandle: [Function],
> getAllWindowHandles: [Function],
> getPageSource: [Function],
> close: [Function],
> getCurrentUrl: [Function], ...

此外,如果我将此部分与 expect() 一起使用:

    expect(columnSorting.acpColumn.getText()).to.eventually.equal(fColumn);

我明白了:

  1) columns swap location column  should swap right:
AssertionError: expected 'Location' to equal { Object (ptor_, parentElement
ArrayFinder, ...) }

所以出于某种原因我可以从 expect 获取文本并且它是正确的 - 'Location'

我做错了什么?

最佳答案

getText() 返回 promise 。如果你想记录一个实际值,你需要解析它:

element(by.xpath('(//*[@class="k-link"])[2]')).getText().then(function (value) {
console.log(value);

expect(columnSorting.acpColumn.getText()).to.eventually.equal(value);
});

请注意,expect() 在 protractor/jasminewd 中被“修补”以隐式解析 promise 。换句话说,您可以断言 getText() 等于所需的文本:

expect(element(by.xpath('(//*[@class="k-link"])[2]')).getText()).toEqual('My Text');

关于javascript - Protractor 返回一个对象但预期 - element.getText() 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28811661/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com