如何使用量角器打印元素列表到控制台

时间:2018-06-07 10:53:25

标签: jasmine protractor

我是Stack Overflow的新手。在我的应用程序中,我必须创建一个组,并通过搜索列表中的组来验证是否创建了组。如果该组在列表中,我必须打开该组的聊天框。所有这些场景都应该使用量角器自动完成。我是量角器的新手,所以请你解答一下

  1. 尝试循环浏览组名以检查是否已创建。
  2. 尝试在控制台中打印组名,但仍然不成功。
  3. 尝试在量角器中打印组文本:

    this.getElements = function(){
      element.all(by.css('some text')).getText().then(function(text){
          console.log(text);
      });
    };
    

    HTML代码段:

    
    
    <ul class="list-unstyled users-list components">
          <!----><q4s-spinner _nghost-c4=""><div _ngcontent-c4="" class="spinner" hidden=""></div>
    </q4s-spinner>
          <!----><div class="user-profile-container">
            <!---->
            <!----><div class="row each-user">
              <div class="user-profile-picture">
                <!---->
                <!----><div>
                  <!----><img class="img-fluid user-picture" src="http://13.126.104.174/static/6286/BMP.jpeg">
                  <!---->
                  
                </div>
    
                <!---->
              </div>
              <div class="user-profile-details">
                <div class="row">
                  <p class="group-name-text">myGrpW</p>
                  <!----><span>
                    <!---->
                  </span>
                </div>
                <!----><p class="group-details-text"></p>
                <!---->
                <p class="group-members-text">2 Members</p>
                <!----><span>
                  <!----><p class="admin-text"> Admin </p>
                  <!---->
                </span>
              </div>
    
    
              <!----><div class="more-action-image-position">
                <div>
                  <img class="img-fluid more-icon" placement="left" src="assets/images/more-icon.svg">
                  <!---->
                </div>
              </div>
    
              <!---->
            </div>
          </div><div class="user-profile-container">
            <!---->
            <!----><div class="row each-user">
              <div class="user-profile-picture">
                <!---->
                <!----><div>
                  <!----><img class="img-fluid user-picture" src="http://13.126.104.174/static/6286/BMP.jpeg">
                  <!---->
                  
                </div>
    
                <!---->
              </div>
              <div class="user-profile-details">
                <div class="row">
                  <p class="group-name-text">newWWW</p>
                  <!----><span>
                    <!---->
                  </span>
                </div>
                <!----><p class="group-details-text"></p>
                <!---->
                <p class="group-members-text">3 Members</p>
                <!----><span>
                  <!----><p class="admin-text"> Admin </p>
                  <!---->
                </span>
              </div>
    
    
              <!----><div class="more-action-image-position">
                <div>
                  <img class="img-fluid more-icon" placement="left" src="assets/images/more-icon.svg">
                  <!---->
                </div>
              </div>
    
              <!---->
            </div>
          </div><div class="user-profile-container">
            <!---->
            <!----><div class="row each-user">
              <div class="user-profile-picture">
                <!---->
                <!----><div>
                  <!----><img class="img-fluid user-picture" src="http://13.126.104.174/static/6286/BMP.jpeg">
                  <!---->
                  
                </div>
    
                <!---->
              </div>
              <div class="user-profile-details">
                <div class="row">
                  <p class="group-name-text">AutoWa</p>
                  <!----><span>
                    <!---->
                  </span>
                </div>
                <!----><p class="group-details-text"></p>
                <!---->
                <p class="group-members-text">3 Members</p>
                <!----><span>
                  <!----><p class="admin-text"> Admin </p>
                  <!---->
                </span>
              </div>
    
    
              <!----><div class="more-action-image-position">
                <div>
                  <img class="img-fluid more-icon" placement="left" src="assets/images/more-icon.svg">
                  <!---->
                </div>
              </div>
    
              <!---->
            </div>
          </div><div class="user-profile-container">
            <!---->
            <!----><div class="row each-user">
              <div class="user-profile-picture">
                <!---->
                <!----><div>
                  <!----><img class="img-fluid user-picture" src="http://13.126.104.174/static/6286/BMP.jpeg">
                  <!---->
                  
                </div>
    
                <!---->
              </div>
    &#13;
    &#13;
    &#13;

2 个答案:

答案 0 :(得分:0)

如果您要检查元素中的文本,则需要使用expect

expect(element.all(by.css('some-text').getText()).toContain('expected text');

您还需要确保使用正确的CSS Selectors。要从示例html中获取组名,可以使用p.group-name-text。整个期望看起来像:

expect(element.all(by.css('p.group-name-text').getText().toContain('MyGrpW');

如果您只是尝试将文本打印到控制台,则代码看起来像

element.all(by.css('p.group-name-text').getText()).then(function(text){
  console.log(text);
});

答案 1 :(得分:0)

&#13;
&#13;
<div class="divs" id="#div1"></div>
<div class="divs" id="#div2"></div>


<script>
    $('.divs').hide();
</script>
&#13;
&#13;
&#13;

很抱歉,在CSS中没什么问题,需要一个小改动,我试过上面的代码它对我来说很好用