02_RobotFramework的官方示例阅读(SeleniumLibrary)

  • 官方examples地址:http://robotframework.org/#examples
  • 官方demo地址:https://bitbucket.org/robotframework/webdemo
  • SeleniumLibrary的github地址:https://github.com/robotframework/SeleniumLibrary
  • SeleniumLibrary的keyword使用说明:http://robotframework.org/SeleniumLibrary/SeleniumLibrary.html

1、RobotFramework和SeleniumLibrary应用于web测试

RobotFramework是一个开源自动化测试框架,SeleniumLibrary是一个RobotFramework的库。这个示例就是展示将RobotFramework和SeleniumLibrary结合进行web测试,同时,示例展示了RobotFramework的基本测试数据语法、测试执行方式、日志和报告输出方式。

image.png

2、Demo的安装

  • 打开官方demo地址,按照官方说明进行操作;
  • 下载地址:https://bitbucket.org/robotframework/webdemo/downloads/?tab=downloads
  • 下载解压后,查看文件夹中应该包含2个目录:demoapp and login_tests

3、Demo的运行

  • 启动demo:E:\robotframework-webdemo-9206bb637e9d>python demoapp/server.py
  • 访问demo:http://localhost:7272
  • demo是一个登陆页面,默认用户名为demo,密码为mode


    image.png

4、运行用例

  • demo的login_test目录下有4个robot文件,是预先写好的用例,可以阅读查看
  • 在运行用例前,需要先检查是否安装了robotframework和robotframework-seleniumlibrary,pip show robotframework,pip show robotframework-seleniumlibrary
  • 若库已经安装,则可执行命令:

E:\robotframework-webdemo-9206bb637e9d>robot login_tests

  • 查看执行结果,发现用例全部fail了,接下来需要排查报错原因


    image.png
  • 从图中可以看出,resuorce.robot中导入的库错误以及关键字错误
    问题1: RobotFramework 3.0及以上版本,支持的是SeleniumLibrary,所以需要修改测试用例
    问题2:关键字Open Browser找不到,查看resuorce.robot,Open Browser调用了2个参数:${LOGIN URL} ${BROWSER}${BROWSER}的值为Firefox。那么问题来了,要打开浏览器怎么能没有驱动呢?
    划重点:根据Selenium的规则,下载浏览器版本对应的驱动。驱动的目录要加入path哟。
  • 2个问题解决了,那么再次运行一下用例:
image.png

5、读用例

  • 官方示例的tests_login中共有4个robot文件,但是从用例的执行过程看,只执行了3个测试用例集,这是为什么呢?
  • 查看执行的3个用例集文件,可以看到,在settings中都导入了Resource resource.robot,所以resuorce.robot是一个公用文件,将其他用例集需要用到的库、变量、关键字都定义在这个文件夹中
  • 每个robot中,都有关键字,有的关键字是自己定义的,有的是内置关键字,有的是第三方库关键字,应该如何查看这些关键字的含义及使用示例呢?
  • 划重点:查阅官方文档,http://robotframework.org/#libraries,在library模块下,找到你要了解的库,点击进入查看关键字。
  • 举个例子:

resuorce.robot中有一个Open Browser关键字,这个SeleniumLibrary的关键字,那这个关键字应该如何使用呢?
查阅SeleniumLibrary的文档,了解关键字的含义和需要的参数及参数顺序,使用规则

image.png

6、总结

  • 要阅读用例,首先需要知道用例中每个步骤所表达的意思,那就需要理解关键字所代表的含义
  • 自定义关键字是以内置关键字、第三方库关键字为基准的,在此基准上进行组合,定义符合业务逻辑的关键字
  • 学会查找和阅读文档,梳理文档架构,在需要用到对应的信息的时候能快速使用文档进行查阅
  • 关键字:keywords由2部分构成:Keyword和Arguments,某些Keyword没有对应的Arguments,需要根据文档确定

写在最后

  • 本次通过阅读用例,学会了如何查阅关键字及关键字的基本使用方法
  • 还需要掌握settings的构成,如:settings中的备注信息、setup和teardown如何分类和使用(分为suit和test等)
  • 实践出真知

你可能感兴趣的:(02_RobotFramework的官方示例阅读(SeleniumLibrary))