内容发布更新时间 : 2024/11/5 19:36:03星期一 下面是文章的全部内容请认真阅读。
实用标准文档
? Test Library: 每一个technical keyword需要一个新的Test Library实现。但是除非你用的是非常特出的技术,一般来说不需要写新的technical keywords。而且实现一个Test Library并不费力。
必须强调,当使用keyword时,无论使用本地实现的Test Library还是使用现存的keywords组合,没有任何区别。
Robot Framework和他的核心库是Python写成的. 所以Robot Frameword天然支持
Python。通过Jython,我们可以使用java来实现Test Library,或者甚至任何能够通过Java调用的语言。通过IronPython,Robot Framework可以和.NET集成。
可能的安装是:
远程库(Remote Libraries)
文案大全
实用标准文档
远程库使我们可以在没有安装Robot Framework的机器上运行测试库(Test Library),并且只要支持XML-RPC的语言就可以编写测试库。
远程库与普通的库的使用没有很大区别,除了在测试用力或者资源文件的导入方式上。RIDE同时也支持远程库。如果想学习远程库的开发,可以参看数据库库(Database Library)。远程库的功能实际上是一个测试库的addon提供的,另外,远程库启动后,成为一个server,而robot framework作为client去连接的它。
当使用Robot Framework创建一个新的工程时,首先我们可能需要思考以下几个问题:
1. 使用哪种编程语言:Python、Jython还是Java? 2. 测试脚本应该使用哪种格式(HTML、TEXT、BDD)? 3. 是否需要使用Robot IDE(RIDE)? 4. 如何在本地或CI环境上执行测试?
文案大全
实用标准文档
5. 如何执行测试(scripting、ANT、Maven)? Robot Framework提供给我们很多的设置选择,那么,应该如何取舍?当然,你可以在Eclipse中使用Maven开始Robot测试,然后使用BDD格式编写你的测试用例(比使用HTML格式更加灵活),这是一个很不错的方式。
但是我们的核心思想是:简明!
那么,让我们一起来创建一个简明且稳定的Robot Framework工程……
2.1 初步思考
在新建Robot Framework工程前,我们要分析被测系统需要使用哪些测试库。来看几个例子:
web程序测试:我们需要导入SeleniumLibrary或者Selenium2Library 数据库测试:可以使用Database库(Python或者Java) SSH/SFTP测试:可以尝试SSHLibrary库
除了上述例子外,还有许多其他测试库。如果现有库无法满足你的测试要求,你可能需要编写一个自定义库文件。
测试库的选择很重要,因为你在部署Robot Framework之前所安装的编程语言环境(Python或Jython/Java),将直接影响你可选择测试库的范围。不过,你也可以在Python环境中使用远程库接口调用Java的测试库。
文案大全
实用标准文档
让我们设想一下,有一个使用数据库的web应用程序例子。为了让例子看上去尽可能像一个web被测应用,我们将用google和本地MySQL数据库为例。该实例将展示如何混合使用多个不同的测试库(本例中使用
SeleniumLibrary和DatabaseLibrary),并同时使用DatabaseLibrary的远程库功能。
Tip:本章的完整的示例源码可以从GitHub下载
2.2 测试部署结构
下图展示了测试部署结构的模型:
文案大全
实用标准文档
概述
Selenium通常需要一个Server。你可以把Server和Robot Framework部署在同一台机器上,也可以部署在任何一台通过TCP/IP协议连接的计算机上。DatabaseLibrary也是一样,DatabaseLibrary运行需要RPC。
文案大全