Robot Framework - 1 - 测试用例与测试库
01- 关于测试库(Test libraries)
- Standard: Builtin, OperatingSystem, String, Dialogs, Remote, Telnet, XML, etc.
- External: Selenium2Library, SSHLibrary, HTTP library, etc.
- Other: Creating test libraries, etc.
- robotframework.org:http://robotframework.org/#test-libraries
- PyPI:https://pypi.org/search/?q=robotframework
- pip install decorator
- pip install selenium
- pip install robotframework-selenium2library
02- 测试用例的组织层次结构
•测试集(Test Case Suite)
•测试用例(Test Case)
•自定义关键字(User Keyword )
•变量(Variables)
•资源文件(Resource files)
•变量文件(Variable files)
•测试库(Test libraries)
03- 创建简单自定义的test library
•确认要实现的内容
•编写test library
# -*- coding: utf-8 -*- import re ## re 模块提供了一系列功能强大的正则表达式 (regular expression) 工具
import hashlib ## Secure hashes and message digests
import random ## random 模块包含许多随机数生成器
import string ## string 模块提供了一些用于处理字符串类型的函数, class CreatNewLibrary():
def ABA(self,a,b):
'''
公式:(a+b)的a次方,a,b是正整数
Example:
| ${c} | aba | 2 | 3 |
结果${c}=25
'''
return (int(a)+int(b))**int(a) def Find_IP(self,url):
'''
从网址获取IP地址
Example:
| ${ip} | Find IP | http://www.example.com?ip=192.187.111.198&code=12345&name=cat |
结果${ip}=192.187.111.198
'''
ip = re.findall('ip=(.*?)&',url,re.I)
if(ip and ip[0]!=''):
return ip[0]
else:
return "没有匹配到IP" def MD5_RandStr(self,username,key='UYTYUT-65HGj-IYR8760-YRJKKL9'):
'''
(用户名+一个key)进行MD5加密,key有默认的,也可以执行设定
Example :
| ${string} | MD5 RandStr | tester |
| ${string} | MD5 RandStr | tester | UYTYUT-65HGj-IYR8760-YRJKKL9
'''
return hashlib.md5(username+key).hexdigest()
•编译调试test library

•导入及确认test library
正常的情况下,导入完成test library文件名称在settings中应显示为黑色。

按F5键,选择对应的Source名称,正常情况下,可以看到自定义库和说定义的关键字信息。

•应用test library
*** Settings ***
Force Tags CreatNewBasicLibrary
Library CreatNewLibrary.py *** Test Cases ***
CreatNewBasicLibrary
${c}ABA 2 3
Log${c}
${ip}Find IPhttp://www.example.com?ip=192.187.111.198&code=12345&name=cat
Log${ip}
${string1} MD5 RandStr tester
Log${string1}
${string2} MD5 RandStr tester123456-654321-98765-56789
Log${string2}


Robot Framework - 1 - 测试用例与测试库的更多相关文章
- Robot Framework: 自定义自己的python库
利用Robot Framework编写测试用例,往往需要开发自己的关键字,有的关键字需要通过自己编写python代码来实现.这在rf中,就需要自己定义python库.这个过程其实不复杂,本文来介绍下. ...
- Robot Framework(4)- 测试套件的基本使用
如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 前言 因为是基于 ...
- Robot Framework之测试用例分层实战
1.1 测试用例的第一层(交互层) 1. 创建项目资源(Resource). 操作步骤: 点”项目名称”->右键,选New Resource,在弹窗Name 输入框输入资源名称 mykeywo ...
- 执行robot framework 的测试用例 命令行pybot使用方式
1.执行整个项目下的所有用例: pybot 项目路径.例如: pybot D:\robot 2.执行某个suit中的所有用例: pybot 项目路径\suit文件名称. 例如:pybot D:\rob ...
- Robot Framework - 2 - 创建测试库
04- 创建测试库--基础概念 Robot Framework 实际的测试能力是由测试库提供的. ***** 支持的编程语言 Robot Framework 自身是用 Python 编写的,能使用 P ...
- Robot Framework(十四) 扩展RobotFramework框架——创建测试库
4.1创建测试库 Robot Framework的实际测试功能由测试库提供.有许多现有的库,其中一些甚至与核心框架捆绑在一起,但仍然经常需要创建新的库.这个任务并不复杂,因为正如本章所示,Robot ...
- Robot Framework - 4 - 创建和扩展测试库的示例
创建和扩展Library的示例 示例:Check status on Linux OS 创建与使用library的基本步骤: 1--- library实现的内容和实现的方式 ...
- Robot Framework - 3 - 测试库API
08- 创建测试库--发布测试库 ***** 测试库文档 为了便于维护,测试库文档应该从源代码中生成. Robot Framework 有自己的文档工具 libdoc.py生成 API 文档. 一个 ...
- Robot Framework自动化测试框架初探
Robot Framework是一款python语言编写,通用的功能自动化测试框架.它使用了比较易用的表格数据语法,基于关键字驱动测试,主要用来验收测试和验收测试驱动开发(ATDD). 本文主要介绍R ...
随机推荐
- echart 图例
说明:stack相同,两个bar合并但是不会重叠 如果需要重叠 用barGap: '-100%', 根据不同的需求来使用两者. <template> <div> echart ...
- powershell复制文件夹的文件
function CCopy($folder_a_path,$folder_b_path){ #遍历源文件夹下所有文件 $folders_a = gci $folder_a_path -Recurse ...
- Unity - Photon PUN 本地与网络同步的逻辑分离 (一)
服务器大家可以使用Photon官网提供的,这样会变得很简单,直接搭建下就好.或者下载到本地开启本地端Photon服务器 (大家也可以使用和我一样方式有时间做了个winform 程序用来管理本地服务器开 ...
- mysql伪列
<!-- NOTE:internal_name_trim使用的是伪列,而不是数据库返回的数据 --><select id="listByStoreIdAndPartsN ...
- cytoscape.js
http://js.cytoscape.org/ HTML 报告中插入动态网络关系图利器
- HttpWebRequest.AddRange 支持long类型
很久很久以前,在哪个FAT32格式还流行的年代,文件大小普遍还没超过4G的年代,.Net已经出来了. 而那时候.Net实现的HTTP断点续传协议,还没预料到如此普及(我猜的).那时候的HttpWebR ...
- temp--贵州银行
-------住宿----泊乐酒店----8905----与朱聿一起住 2018年 1月3日晚 1月4日晚 1月5日晚 1月6日晚 1月7日晚 1月8日晚 1月9日晚 已结清! ======= ...
- PowerShell工作流学习-5-自定义活动
关键点: a)除了内置活动和自定义活动,还可以用C# 编写自定义活动,并将其包括在 XAML 工作流和脚本工作流中,若要将自定义活动添加到脚本工作流中,请使用 #Requires 语句的 Assemb ...
- [转]BSD系统正在死亡?一些安全研究人员这样认为
摘要:在代码安全上被关注太少,漏洞没有被报告修补,FreeBSD.OpenBSD和NetBSD还能活下来吗? 在德国莱比齐的34c3网站上,IOActive的渗透测试主管Ilja von Sprund ...
- [swarthmore cs75] Compiler 2 – Boa
课程回顾 Swarthmore学院16年开的编译系统课,总共10次大作业.本随笔记录了相关的课堂笔记以及第4次大作业. A-Normal Form 在80年代,函数式语言编译器主要使用Continua ...