量角器:验证结果已排序

时间:2017-07-27 06:48:04

标签: sorting protractor verify

使用量角器我尝试在单击排序依据按钮后验证排序是否有效。我在这里看到了类似的解决方案,但它们都不适用于我的情况。

在页面上我列出了不同的值(15,13,​​67,...),为此我有home.myValues(使用element.all)。流程将是:

  1. 将所有数字存储在数组中,并使用.slice()。sort()
  2. 对它们进行排序
  3. 点击按价值排序按钮
  4. 将已排序的数字存储在数组中
  5. 验证排序值是否匹配
  6. 目前我写了以下内容,但不起作用:

    home.myValues.map(function(eachName) {
          return eachName.getText().then(function(unSortedValues) {
            initialSortedValues = unSortedValues.slice().sort();
            return initialSortedValues;
          });
        });
    
        // click on sort by values
        home.sortByValues.click();
    
        home.myValues.map(function(eachName) {
          return eachName.getText().then(function(checkSortedValues) {
            return checkSortedValues;
          });
          expect(initialSortedValues).toEqual(checkSortedValues);
        });
    

    任何建议都表示赞赏。

1 个答案:

答案 0 :(得分:0)

经过一些额外的研究后,我发现这个有用:

// verify my values are sorted
        home.myValues.map(function(eachName) {
      return eachName.getText().then(function(unSortedValues) {
        return unSortedValues;
      });
    }).then(function(unSortedValues) {
      // click on sort by value
      home.sortByValue.click();

      sortedValues = unSortedValues.slice();
      sortedValues = sortedValues.sort(function(a, b){return a-b});

      home.myValues.map(function(eachName) {
        return eachName.getText().then(function(sortedValuesCheck) {
          return sortedValuesCheck;
        });
      }).then(function(sortedValuesCheck) {
        // verify sorted values equal expected
        expect(sortedValues).toEqual(sortedValuesCheck);
      });
    });