zoukankan      html  css  js  c++  java
  • Cypress系列(12)- Cypress 编写和组织测试用例篇 之 断言

    如果想从头学起Cypress,可以看下面的系列文章哦

    https://www.cnblogs.com/poloyy/category/1768839.html

    前言

    • 断言是测试用例的必要组成部分
    • 没有断言,咱们就不知道测试用例的有效性,到底通过没通过
    • Cypress 的断言基于 Chai 断言库,并且增加了对 Sinon-Chai、Chai-jQuery 断言库的支持,其中就包括 BDD 和 TDD 格式的断言

    BDD 格式的断言

    • expect
    • should

    TDD 格式的断言

    assert

    常见的断言方式

    以下列出了常见的元素断言

    长度(Length)

    // 重试,直至找到3个匹配的<li.selected>
    cy.get('li.selected').should('have.length',3)

    重点: hava.length 

    类(Class)

    // 重试,直至这个input不再有disabled的class
    cy.get('form').find('input').should('not.hava.class','disabled')

    重点: not.hava.class 

    值(Value)

    // 重试,直至这个textarea的值为 poloyy
    cy.get('textarea').should('have.value','poloyy')

    重点: have.value 

    文本内容(Text Content)

    // 重试,直至这个span不再包含'click me'
    cy.get('a').parent('span.help').should('not.contain','click me')

    重点: not.contain 

    针对元素是否可见(Visibility)

    // 重试,直至button可见
    cy.get('button').should('be.visible')

    重点: be.visible 

    针对元素是否存在(Existence)

    // 重试,直至 id=loading 元素不再存在
    cy.get('#loading').should('not.exist')

    重点: not.exist 

    针对元素状态(State)

    // 重试,直至radio状态是checked
    cy.get(':radio').should('be.checked')

    重点: be.checked 

    针对 CSS

    // 重试,直至complete这个类有匹配的css为止
    cy.get('.completed').should('have.css','text-decoration','line-through')

    重点: hava.css 

    针对回调函数(callback)

    如果内建的断言没有满足你的需求,可以自己写断言函数,然后作为一个回调以参数的形式传给 .should() 

    假设源HTML如下

    <div class="main-abc123 heading-xyz987">Introduction</div>

    自己写的断言函数

  • 相关阅读:
    GitLab 介绍
    git 标签
    git 分支
    git 仓库 撤销提交 git reset and 查看本地历史操作 git reflog
    git 仓库 回退功能 git checkout
    python 并发编程 多进程 练习题
    git 命令 查看历史提交 git log
    git 命令 git diff 查看 Git 区域文件的具体改动
    POJ 2608
    POJ 2610
  • 原文地址:https://www.cnblogs.com/poloyy/p/13044532.html
Copyright © 2011-2022 走看看