测试用例的目的是要验证一些操作否符合我们的预期结果,所以在测试用例中,断言函数是必不可少的一项。我们做的每一步操作都会有预期的结果,为了保证操作得到的结果符合预期,我们需要在测试用例中添加断言,来保证实际结果和预期结果一致。那么先让我们来认识一些常用的断言函数:

1、should be equal 与should not be equal

我们在第一行设置一个变量,并赋值1,第二行,意思是${var}应该等于1

运行:

会发现只是打印出了变量的值,一般来说,断言函数只起断言作用,符合断言没有任何操作,不符合则报错:

现在我们把${var}值改为2,断言不变,再运行:

我们发现用例报红,并且在这里给出了断言出错。

should not be equal恰好相反,用来断言不相等。

2、should be empty与should not be empty

断言为空或不为空。

如上图,create list是一个创建列表的函数,我们没有为列表赋值,则${var}是一个空列表,运行:

可以看到打印出了预期的空列表,并且用例成功运行。

3、should contain、should not contain与should contain x times

这里先说明一下,列表变量也可以用@{var}表示,但${var}既可以表示单个变量,也可以表示列表、字典,用起来比较方便~~~
我们创建了一个列表,内涵1、2、3值,断言列表中含有1:

运行通过,打印出了变量值,可以看到正如我们预期,${var}是一个列表,这里发现列表里每一个值前面都有一个u,这是因为RF默认是Unicode编码,这里的u对你的用例或断言都没有影响的。

should not contain不必解释。我们来说一下should contain x times,根据英文翻译即可,就是应该含有某值x次:

这里的断言意思是变量${var}中应该包含2个1,运行:

正如我们预期。

以上列出的是我在工作中最长用的断言,除此之外还有很多,他们的意思其实可以根据英文翻译即可,毕竟老外也是按着他们的目的写出来的:

Should Be Equal As Numbers与Should not Be Equal As Numbers

Should End With与Should not End With

Should start With与Should not start With

should match与should not match

以上是大家在工作中可能遇到的,如果用得上用法可以F5查询即可。

有时候我们的断言函数不能满足我们的需求,这时就需要我们用Python自己写脚本,实现相应的逻辑,然后导入系统关键字即可。

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

Robot Framework-断言函数的更多相关文章

  1. robot framework断言

    一.基础 RobotFramework带有丰富的系统关键,使用时无需导入,直接使用,为写自动化用例带来了极大的方便:不能停留在知道或者是会得程度,只有熟练使用各关键字,才能提升自动化用例的写作效率.下 ...

  2. Robot Framework与Web界面自动化测试学习笔记:简单例子

    假设环境已经搭建好了.这里用RIDE( Robot Framework Test Data Editor)工具来编写用例.下面我们对Robot Framework简称rf. 我们先考虑下一个最基本的登 ...

  3. python+robot framework接口自动化测试

    python+requests实现接口的请求前篇已经介绍,还有不懂或者疑问的可以访问 python+request接口自动化框架 目前我们需要考虑的是如何实现关键字驱动实现接口自动化输出,通过关键字的 ...

  4. 【Robot Framework 项目实战 01】使用 RequestsLibrary 进行接口测试

    写在前面 本文我们一起来学习如何使用Robot Framework 的RequestsLibrary库,涉及POST.GET接口测试,RF用例分层封装设计等内容. 接口 接口测试是我们最常见的测试类型 ...

  5. Robot Framework与Web界面自动化测试:简单例子

    假设环境已经搭建好了.这里用RIDE( Robot Framework Test Data Editor)工具来编写用例.下面我们对Robot Framework简称rf. 我们先考虑下一个最基本的登 ...

  6. Robot Framework操作

    Robot Framework 介绍 RobotFramework是一款基于python的开源自动化测试框架,遵守Apache License 2.0协议,在此协议下所有人都可以免费开发和使用.因为R ...

  7. [转]Python测试框架对比----unittest, pytest, nose, robot framework对比

      测试框架 什么是框架? 框架(Framework)是整个或部分系统的可重用设计,框架是用来解决代码的组织及运行控制问题的. 在我们编写自动化脚本的时候,经常需要读取配置文件,读取数据文件,发送请求 ...

  8. 2小时入门Robot Framework

    1.介绍 1.1.介绍Robot Robot Framework是一个基于关键字驱动的自动化测试框架.通过该框架,测试人员可使用python封装关键字,并在非代码环境下使用关键字构建可被执行的测试用例 ...

  9. Robot Framework测试框架学习笔记

    一.Robot Framework框架简介         Robot Framework是一种基于Python的可扩展关键字驱动自动化测试框架,通常用于端到端的可接收测试和可接收测试驱动的开发.可以 ...

  10. Robot Framework自动化测试(三)--- 封装系统关键字

    之前对robotframework-ride了解的不多,后来知道了引入Selenium2Lirary库后可以做web UI自动化测试,但发现和python没啥关系,今天学习了封装系统关键字算是和pyt ...

随机推荐

  1. 【Python】 \uxxxx转中文

    背景 写Python接口自动化过程中,使用到邮件发送测试结果详情,邮件呈现出来的内容为 \uxxxx ,不是中文 接收到的邮件内容: 成功: 110 失败: 1 失败的用例如下 : [(u'\u752 ...

  2. python:用setup.py安装第三方包packages

    python:用setup.py安装第三方包packages 原创 2016年12月10日 15:17:56 标签: python 8531 这次来介绍下python第三方包的安装,前面介绍了3种方式 ...

  3. PowerDesigner用法和技巧

    PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一.Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesign ...

  4. 5分钟弄懂Docker

    尽管之前久闻Docker的大名了,但是天资愚钝,对其到底是个啥东西一直摸不清,最近花了一段时间整理了一下,算是整理出一点头绪来. 官网的介绍是这样的: Docker is an open platfo ...

  5. linux加域退域

    realm list realm leave od.com realm join -U Administrator od.com

  6. 第五章 如何使用Burp Target

    Burp Target 组件主要包含站点地图.目标域.Target 工具三部分组成,他们帮助渗透测试人员更好地了解目标应用的整体状况.当前的工作涉及哪些目标域.分析可能存在的攻击面等信息,下面我们就分 ...

  7. 强连通分量算法-codevs1332

    解决有向图的强连通分量的算法,有两个,一个是tarjan,一个是kosaraju,上午只看了一下kosaraju,不算太难,理解之后写了个模板题. 先说kosaraju算法,算法的主要思路是进行两次d ...

  8. js Math对象的常用方法

    1,基本方法: Math.round();向上四舍五入. Math.ceil();向上取整,有小数就整数部分加1 Math.floor(5/2) ;向下取整 Math.abs();返回绝对值: Mat ...

  9. mysql学习之旅

    1,mysql安装脚本 #!/bin/bash RSYNC='10.39.2.120::wenhui/database/install' CMAKE='cmake-2.8.6.tar.gz' MYSQ ...

  10. T4模板的基本结构

    (转自:http://www.cnblogs.com/yank/archive/2012/02/14/2342287.html) T4模板的基本结构 代码块的总体分类,就是两种:文本.程序脚本. 我感 ...