实验简介
本节实验主要为大家讲解如何利用Robot Framework结合常用的关键字完成对Agileone系统中的“需求提案”模块进行GUI级别的自动化测试脚本开发。本实验主要是基于Selenium WebDriver插件进行,所以读者要能够掌握本实验的关键知识,需要首先熟悉Selenium WebDriver。如这方面的知识储备比较欠缺的话,建议先观看强哥的视频:http://www.woniuxy.com/course/11
实验目的
(1) 掌握RF的Selenium库的常用关键字及用法。
(2) 能够熟练运用Slenium库来完成GUI级自动化测试脚本开发。
(3) 掌握在RF中对话框或确认框的处理方法。
实验流程
1. 实现Agileone的登录与断言

我们对上述脚本进行简单的解释:
(1) 第2行:Wait Until Element Is Enabled,等待某个元素可用,后面跟的是一个“ID”属性为“username”的元素,无论这个元素是什么类型。
(2) 第6行:Sleep 3s,这是RF内置库的关键字,表示等待3秒钟。
(3) 第7行:Page Should Contain Element,用于断言,表示当前页面中应该包含一个超链接且文本内容为“个人设定”。
通过关键字和对应的参数,我们可以看出,与我们直接用原生的代码写一个方法,并传递相应的参数是类似的。当然,由于我们在前面的实验中已经知道如何使用Selenium IDE来进行简单的测试脚本开发,所以对于RF的关键字驱动其实并不陌生,两者唯一的区别是RF的功能更加强大,也获得了更多的支持和更好的发展。
2. 需求提案的新增功能测试

在上述测试脚本中,我们看到了一些陌生的用法,现解释如下:
(1) 第4行:“${random} Evaluate random.randint(10000,99999) random”,这行脚本的主要目的是利用RF的关键字“Evaluate”来调用Python的random库中的方法randint()来生成一个5位数的随机整数并赋值给变量${random},供后面的步骤中自动生成一条需求提案的标题和内容。
(2) 第5行:第三个参数“这是提案的标题-${random}”则是用于获取上一行的${random}变量的值。