Robot Framework使用Phantomjs进行无界面UI自动化测试

简介: 背景介绍Demo For Run Robot FrameworkRobot Framework 是一款关键字驱动的验收自动化测试框架,现在在国内使用的越来越广泛了。

背景介绍

img_6e65ad9b8f367a2456bad1f2efd3b0d7.gif
Demo For Run Robot Framework

Robot Framework 是一款关键字驱动的验收自动化测试框架,现在在国内使用的越来越广泛了。一种通用的Web UI自动化测试解决方案是Robot Framework+Selenium2Library (RFS)。一般要使用Selenium2Library库,必须配置好浏览器驱动(driver)。不然就无法驱动浏览器来执行自动化命令。

img_d1117ebe3c202065ef36fe8c4c53931b.png
浏览器驱动对应表

上表简要说明了不同的浏览器所需要的驱动程序。这里我们重点介绍如何基于rfs+phantomjs进行无界面UI自动化测试。

img_71dc12230ec1381da3838247025590ce.png
phantomjs

环境安装

第一步: 安装RFS环境

这里推荐用pip进行安装,其他安装方式不做介绍。
> pip install -U robotframework-selenium2library
安装Selenium2Library库会自动安装其依赖库Robot Framework.

第二步: 配置phantomjs执行环境

首先下载phantomjs, 可以下载windows版本,也可以下载linux版本。
这里我们介绍windows版本的配置。
去官方网站 http://phantomjs.org/download.html 下载对应的发布包即可。

下载完成后,加压压缩包,并且将其放到任意路径下,如D:\browser下。

img_c79671bc22ca0a68246e7bcd5f1fe4a6.png
phantomjs path

接下来, 配置系统环境变量,将D:\browser添加到系统环境变量Path中去。

img_851b32082024cf70faff9a02d8be997c.png
配置环境变量

至此,我们就配置好了phantomjs的执行环境了。可以在控制台上输入phantomjs.exe --version命令来验证是否配置正确。

img_813fe0cd09c714df1595e1f335eb0578.png
phantomjs version

上图正确输出了版本号,说明配置成功了。

用例执行

好的,接下来,我们就通过一个简单的测试用例,来验证rfs+phantomjs的无界面UI自动化测试功能。

编写Robot Framework测试用例 phantomjs_test.robot。


img_5af530b29af82fe9184d4023358815ae.png
robot framework test case

执行测试用例:
> robot phantomjs_test.robot

img_a47111b3466336c91b7b7bbbacbf11ec.png
test results

从上图我们可以看出,测试用例正确执行了,和基于chrome的执行结果一致。

推荐阅读

Robot Framework框架入门指南-1.1
加速Web自动化测试

目录
相关文章
|
25天前
|
计算机视觉 Python
基于Dlib的人脸识别客户端(UI界面)
基于Dlib的人脸识别客户端(UI界面)
45 2
|
3天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
20 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
14天前
|
开发框架 JavaScript 前端开发
HarmonyOS UI开发:掌握ArkUI(包括Java UI和JS UI)进行界面开发
【10月更文挑战第22天】随着科技发展,操作系统呈现多元化趋势。华为推出的HarmonyOS以其全场景、多设备特性备受关注。本文介绍HarmonyOS的UI开发框架ArkUI,探讨Java UI和JS UI两种开发方式。Java UI适合复杂界面开发,性能较高;JS UI适合快速开发简单界面,跨平台性好。掌握ArkUI可高效打造符合用户需求的界面。
59 8
|
1月前
|
Ubuntu API Python
Chat-TTS chat-tts-ui 实机部署上手测试!Ubuntu服务器实机 2070Super*2 8GB部署全流程
Chat-TTS chat-tts-ui 实机部署上手测试!Ubuntu服务器实机 2070Super*2 8GB部署全流程
60 1
|
25天前
|
机器学习/深度学习 数据可视化 计算机视觉
基于opencv的车牌识别系统(UI界面采用tkinter设计)
基于opencv的车牌识别系统(UI界面采用tkinter设计)
31 0
|
3月前
|
编解码 前端开发 vr&ar
从零开始的PICO教程(4)--- UI界面绘制与响应事件
这篇文章是PICO开发系列教程的第四部分,主要介绍了如何在PICO 4 VR环境中创建UI界面,包括Canvas和Panel的配置、UI元素的绘制、以及Button和Slider的事件响应绑定,并通过示例展示了数字增减和滑块功能的具体实现。
从零开始的PICO教程(4)--- UI界面绘制与响应事件
|
2月前
|
XML Android开发 UED
💥Android UI设计新风尚!掌握Material Design精髓,让你的界面颜值爆表!🎨
随着移动应用市场的蓬勃发展,用户对界面设计的要求日益提高。为此,掌握由Google推出的Material Design设计语言成为提升应用颜值和用户体验的关键。本文将带你深入了解Material Design的核心原则,如真实感、统一性和创新性,并通过丰富的组件库及示例代码,助你轻松打造美观且一致的应用界面。无论是色彩搭配还是动画效果,Material Design都能为你的Android应用增添无限魅力。
59 1
|
3月前
|
前端开发 测试技术 UED
【测试效率对比】深入分析:为何UI自动化测试的投资回报率通常低于接口自动化测试?
这篇文章深入分析了UI自动化测试与接口自动化测试的投资回报率(ROI)问题,指出UI自动化测试在某些情况下的ROI并不低,反驳了没有实施过UI自动化就轻易下结论的观点,并强调了实践的重要性和自动化测试在项目迭代中的作用。
77 1
|
3月前
|
容器 iOS开发 Linux
震惊!Uno Platform 响应式 UI 构建秘籍大公开!从布局容器到自适应设计,带你轻松打造跨平台完美界面
【8月更文挑战第31天】Uno Platform 是一款强大的跨平台应用开发框架,支持 Web、桌面(Windows、macOS、Linux)及移动(iOS、Android)等平台,仅需单一代码库。本文分享了四个构建响应式用户界面的最佳实践:利用布局容器(如 Grid)适配不同屏幕尺寸;采用自适应布局调整 UI;使用媒体查询定制样式;遵循响应式设计原则确保 UI 元素自适应调整。通过这些方法,开发者可以为用户提供一致且优秀的多设备体验。
119 0
|
3月前
|
测试技术 Swift iOS开发
探索iOS自动化测试:使用Swift编写UI测试
【8月更文挑战第31天】在软件开发的海洋中,自动化测试是保证船只不偏离航线的灯塔。本文将带领读者启航,深入探索iOS应用的自动化UI测试。我们将通过Swift语言,点亮代码的灯塔,照亮测试的道路。文章不仅会展示如何搭建测试环境,还会提供实用的代码示例,让理论知识在实践中生根发芽。无论你是新手还是有经验的开发者,这篇文章都将是你技能提升之旅的宝贵指南。
下一篇
无影云桌面