Webpack的Robot Framework库。
项目描述
简介
WebpackLibrary是Webpack的Robot Framework库。它允许启动和停止Webpack开发服务器。
安装
使用pip安装robotframework-webpack
$ pip install robotframework-webpack
文档
用法
为了编写您的第一个robot测试,请确保包含Selenium2Library和WebpackLibrary。创建一个包含以下内容的test.robot文件
*** Variables *** ${HOST} 127.0.0.1 ${PORT} 8080 ${BROWSER} chrome ${SERVER} http://${HOST}:${PORT} *** Settings *** Documentation WebpackLibrary Acceptance Tests Library Selenium2Library timeout=10 implicit_wait=0 Library WebpackLibrary Suite Setup Start Webpack and Open Browser Suite Teardown Stop Webpack and Close Browser *** Test Cases *** Scenario: Webpack Dev Server Go To ${SERVER} # Amend this line to check for the real content of your app. Otherwise this test will fail. Wait until page contains Hello World Page Should Contain Hello World *** Keywords *** Start Webpack and Open Browser Start Webpack yarn start Open Browser ${SERVER} ${BROWSER} Set Window Size 1280 1024 Stop Webpack and Close Browser Stop Webpack Close Browser
关键字
启动Webpack:启动Webpack进程。该关键字接受启动Webpack的命令行命令(例如,“yarn start”)。
启动Webpack yarn start
可选参数包括
path:执行命令的路径的相对或绝对路径。
check:关键字在Webpack输出中查找的字符串,以知道Webpack已完全启动(默认为“编译成功”)。
debug:返回调试信息
设置所有参数的示例
Start Webpack yarn start .. path=tests/test-create-react-app .. check=Compiled successfully .. debug=True
停止 Webpack:停止使用“启动 Webpack”启动的 webpack 进程。该关键字没有参数。
理由
您可以使用标准 Robot Framework 关键字启动 Webpack 进程。
Run process yarn run build shell=True cwd=${CURDIR} Run process yarn global add serve shell=True cwd=${CURDIR} Start process serve -s build shell=True cwd=${CURDIR}
您甚至可以在测试(套件)结束时终止进程。
Terminate All Processes kill=True
不过,您需要设置一个延时语句来等待 Webpack 进程完全启动并运行。由于这可能需要相当长的时间,这会使您的测试套件效率低下且难以扩展。
Robot Framework Webpack 将检查 Webpack 进程的输出,直到其完全启动并运行。一旦 Webpack 准备就绪,测试即可继续。
开发
项目设置
$ virtualenv-2.7 .py27 $ source .py27/bin/activate $ pip install -r requirements.txt $ python setup.py develop
运行测试
$ .py27/bin/pybot tests
1.1.3 (2018-03-03)
错误修复
当传递的字符串已经是字节字符串时,不要失败 safe_bytes。[timo]
1.1.2 (2018-03-03)
错误修复
修复在 Python 3 上调用“启动 Webpack”关键字时出现的“TypeError: a bytes-like object is required, not ‘str’”错误。[timo]
1.1.1 (2018-03-03)
错误修复
修复当 Webpack 进程引发运行时错误时 Python 3 上的 unicode 解码错误。[timo]
1.1.0 (2018-03-01)
新功能
Python 3 兼容性。[timo]
1.0.5 (2018-03-01)
错误修复
从 README.rst 中删除 br。这会在 Pypi 中中断。[timo]
1.0.4 (2018-03-01)
错误修复
修复“停止 Webpack”关键字中的错误,该错误在导入时破坏整个库。[timo]
1.0.3 (2018-03-01)
错误修复
当“启动 Webpack”和“停止 Webpack”失败时引发 RuntimeError。[timo]
1.0.2 (2018-02-15)
错误修复
从 README 中删除 br,这会破坏 pypi 页面。[timo]
1.0.1 (2018-02-15)
错误修复
修复 README 中的 ReST。[timo]
1.0.0 (2018-02-15)
破坏性更改
重构“启动 Webpack”关键字。删除“host”、“port”、“content_base”、“config”、“webpack_bin_path”、“debug”参数。保留“path”参数。添加必需的“command”参数和可选的“check”参数。[timo]
错误修复
使用进程组启动 Webpack,以便能够停止所有子进程。这解决了 create-react-app 中遗留的子进程问题。[timo]
1.0a8(2016-07-21)
破坏性更改
将 ROBOT_LIBRARY_SCOPE 更改为“GLOBAL”。为每个单个测试启动 webpack 没有意义。[timo]
1.0a7(2016-07-19)
错误修复
不要记录 webpack 路径。[timo]
1.0a6(2016-07-18)
错误修复
允许在未设置 debug 属性的情况下使用“启动 Webpack”关键字。这解决了 https://github.com/kitconcept/robotframework-webpack/issues/2。[timo]
1.0a5(2016-07-13)
新功能
将“webpack_bin_path”参数添加到“启动 Webpack”关键字。[timo]
1.0a4(2016-07-13)
破坏性更改
将所有参数从 WebpackLibrary 导入移动到“启动 Webpack”关键字。[timo]
错误修复
从依赖项中删除 requests。[timo]
修复包关键字。[timo]
1.0a3(2016-07-13)
错误修复
修复 content_base 参数。[timo]
在调用 webpack 时记录 OSErrors。[timo]
1.0a2(2016-07-13)
新功能
向 WebpackLibrary 添加 config 参数。[timo]
1.0a1(2016-07-12)
初始发布。[timo]