从运行时量角器上的元素文本中乘以值

时间:2016-10-17 21:26:32

标签: selenium protractor

在我的应用程序中,我在运行时填充了一个值。

<span id="uxUnitPrice">182.18</span>

我想提取此单价并乘以固定值,例如15。 一旦我在屏幕上得到结果,我想获取并比较以查看我完成的计算是否与屏幕上显示的内容相匹配。 对于例如结果应为182.18 * 15 = 2732.25 我尝试下面的代码,但它给了我NaN。有人可以建议如何使用Selenium或量角器正确执行数学运算吗?

MeltValueCoin = element(by.css('[id="uxUnitPrice"]'));
expect(ValidateMeltValueCalculator()).tobe(2732.25);
function ValidateMeltValueCalculator(){
      var units = 10;
      var MeltValue = parseInt(MeltValueCoin.getText());
      return units*MeltValue;}

1 个答案:

答案 0 :(得分:2)

方法getText返回一个承诺。因此,您首先需要使用then解决它以获取值:

MeltValueCoin = element(by.css('[id="uxUnitPrice"]'));

expect(ValidateMeltValueCalculator()).tobe(2732.25);

function ValidateMeltValueCalculator(){
    var units = 10;
    return MeltValueCoin.getText().then(text => text * units);
}