Nightwatch:无法在页面对象中创建动态选择器

Nightwatch: Can't make dynamic selector in page objects

我找不到使页面对象中的选择器动态化的方法。这个问题有解决方法吗?

 module.exports = {
      searchSelect: {
          selector: '//span[contains(.,'+dynamicVar+')]',
          locateStrategy: 'xpath'
      },
}

我尝试直接使用 this.globals.arrayGet() 更改我插入的值等等。似乎没有任何效果。从 2016 年找到了另一个关于此的主题,但那里没有有用的信息。

不确定是否有解决方法,但您可以创建一个函数,例如:

function verifyElementWithText(text){
    browser.expect.element(`//span[contains(.,'+text+')]`).to.be.visible;    
}

并从您的页面对象中调用它:

browser.page.yourPage().verifyElementWithText('John Doe');