簡體   English   中英

如何從 nightwatch 中的 .getText 返回變量?

[英]How to return a variable from .getText in nightwatch?

我有一個函數.getText ,我需要從中返回一個變量num3以在以下頁面上進行比較。 但是最后的斷言失敗了,因為 num3 是“未定義的”。

var num3;
... 
.getText('my_selector', function(result) {
                const num = (number * result.value) * 0.05;
                const num2 = (number * result.value) - num;
                num3 = Math.round(num2 * 100) / 100;

this.expect.element('my_selector').to.have.value.equal(num3); })
...
.assert.containsText('my_selector2', num3) //undefined

我找到了這個問題的解決方案。 我們需要 .perform 函數。 http://nightwatchjs.org/api#perform

var num3;
... 
.getText('my_selector', function(result) {
            const num = (number * result.value) * 0.05;
            const num2 = (number * result.value) - num;
            num3 = Math.round(num2 * 100) / 100;

this.expect.element('my_selector').to.have.value.equal(num3); })
...
.perform( function(){
          this.api
              .useXpath()//it's necessary if you use Xpath selector
              .assert.containsText('my_selector2', num3)
            })

有關為什么需要這樣做的更多信息,請閱讀Nightwatch 命令隊列

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM