1、安装
C:\Users\Administrator>pip install robotframework
Collecting robotframework
Downloading robotframework-3.0.2.tar.gz (440kB)
100% |################################| 450kB 151kB/s
Installing collected packages: robotframework
Running setup.py install for robotframework ... done
Successfully installed robotframework-3.0.2
2、使用
随便写一个文本文件testsuite1.txt
* Test Case
first case
Log hello world!
> robot.bat testsuite1.txt
=========================================================================
Testsuite1
=========================================================================
first case | PASS |
------------------------------------------------------------------------------
Testsuite1 | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
=========================================================================
Output: F:\gaofeng\python\rf\output.xml
Log: F:\gaofeng\python\rf\log.html
Report: F:\gaofeng\python\rf\report.html
测试用例文i件,可以是纯文本格式,也可以是tsv格式,还可以是html格式。
但本质上,都是表格,只是表格的分隔符不同。纯文本格式中,两个或多个空格,就是表格分割符。一个空格是字符串内部的空格。
注意1:第一行的第一个单元格串必须写 * Test Case 否则robot会说这不是一个测试用例文件。其实 * * Test Case或*** Test Case**也可以。
第一个字符串只要匹配了Test Case,并且前后都是 *或空格就行。第二个字符串是什么,robot就不关心了,你随便乱写也可以
注意2:一个文件是一个测试套。第一个字符串非空,就是一个测试用例的标题。第一个字符串为空,就是测试脚本内容。
测试报告中,测试套的首字母会被robot大写,测试用例的首字母则不会改变。
内建的这个Log函数,支持2个参数,第二个为日志级别,比如debug、info、warn、error
注意3:library, keyword 都是大小写不敏感的。但是导入的库名,是大小写敏感的,比如要用 Collection库,大小写必须写对,否则提示找不到关键字。
3、例子2
* Test Case
first case
Log hello world! error
高峰
${res} Evaluate 1+2+3
Should Be Equal ${res} 6
Second Case
${res} Evaluate 1+2+3
Should Be Equal ${res} ${6}
注意保存为utf8格式,可以支持中文。注意字符和数字的区别。 6是字符串,${6}是数字。
4、例子3
**setting**
library t1.py
library t2.py
**Variable**
${var1} abc
* Test Case
first case
Log hello world! error
log ${var1} warn
fff1
t1.fff2 pk
ff21
t2.ff22
高峰
${res} Evaluate 1+2+3
Should Be Equal ${res} 6
Second Case
${res} Evaluate 1+2+3
Should Be Equal ${res} ${6}
t1.py
def fff1():
print "hehe"
def fff2(pp):
if pp=='kk':
raise Exception("Invalid level!", 1)
t2.py
class t2:
def ff21(self):
print "ff"
def ff22(self):
print "ff"
通过这个例子,可以看出,py可以直接写函数,调用时可以带文件名,也可以不带文件名。
py也可以写类,但类名必须为文件名,调用时可以带文件名,也可以不带文件名。
同一个py内,不能混用
2021.1.2 import t4.t4 --导入文件夹t4下的t4.py这个文件。 使用时这样写 t4.t4.t4().ff42(name) ---因为文件中定义了t4这个class
测试用例中,要写py文件的相对路径 例如 library lcs/t3.py
在那个目录执行测试用例都是可以的。[root@code]# robot rf/test1/test1.txt 或 [root@rf]# robot test1/test1.txt 或 [root@test1]# robot test1.txt
还有变量,关键字
http://blog.sina.com.cn/s/blog_654c6ec70100zj6p.html
Robotframework入门教程(三)
for循环和 if判断
https://blog.csdn.net/satiling/article/details/53188461
yy
${a} Set Variable 'hello'
${b} Set Variable 'hello world'
Run Keyword If ${a} in ${b} log 1
-------------------------
python 操作浏览器
#! python
# encoding=utf-8
from selenium import webdriver
import os
#引入chromedriver.exe
chromedriver = "D:/soft/chromedriver_win32_forChrome62/chromedriver.exe"
os.environ["webdriver.chrome.driver"] = chromedriver
browser = webdriver.Chrome(chromedriver)
#设置浏览器需要打开的url
url = "http://www.baidu.com"
browser.get(url)
#在百度搜索框中输入关键字"python"
browser.find_element_by_id("kw").send_keys("python")
#单击搜索按钮
browser.find_element_by_id("su").click()
#关闭浏览器
#browser.quit()
Robot Framework学习笔记(十)------Selenium2Library库
pip install robotframework-selenium2library
*** Settings ***
Library Selenium2Library
*** Test Cases ***
测试1
Open Browser https://www.baidu.com chrome