一、bat文件要求windows环境;
二、脚本中已指定使用chrome浏览器,因此最好是有chrome;
三、有安装python + Robot Framework,同时已装好Selenium2Library库;
四、modify_task.bat
和ModifyJenkins.txt
在同一目录下(不建议放在桌面,最好单独放在一个文件夹);
五、定时设好后,别忘了让电脑禁止进入睡眠(或者也能够设置唤醒电脑再执行);html
ModifyJenkins.txt只是用于修改项目配置,并将项目加入待构建列表,不表明立刻就开始构建;
(能够根据须要来增长这个功能:关闭排在它前面的项目,以便当即开始构建);
定时任务须要结合windows下的任务计划程序使用。
思路是:
一、在bat中写好执行RF脚本的命令(就一句 pybot + 脚本名称);
二、使用任务计划程序来启动这个bat;(其实也能够直接执行脚本不经过bat,可是这样更方便些)python
在ModifyJenkins.txt中修改要配置的参数。
打开该文件后,能够看到“* Variables *”部分以下(举例):chrome
*** Variables ***
${Jenkins_url} Jenkins_url # 修改jenkins地址
${job_name} job_name # 修改要配置的项目,与Jenkins上的项目名称一致
${arg_purpose} -arg_purpose # 修改版本类型
${arg_version} -arg_version # 修改版本号
${arg_product} -arg_product # 修改对应产品
这几个参数都要检查一遍,是否对应,修改后保存。
注意不要增删到空格。windows
一、在开始-搜索栏输入“计划”,便可看到“任务计划程序”,打开;
二、在右侧栏目点击“建立基本任务”;
三、填入任务名称,如:ModifyJenkins_task
(随意,本身能区分就好);
四、触发条件根据须要选择,通常是选择“一次”便可;
五、设定任务预期被执行的时间;
六、在“操做”中选择的是“启动程序”;
七、在“程序或脚本”中选择并打开modify_task.bat
,在“起始于”中务必再填入modify_task.bat的位置;
如:
程序或脚本(强调脚本):F:\RF_TEST\test\test_manager\modify_task.bat
起始于(强调位置):F:\RF_TEST\test\test_manager
数组
八、再下一步不须要其余修改,点击完成便可。
九、这个定时任务之后能够继续使用,在计划列表中找到它,打开它的属性,通常修改时间便可。浏览器
更详细的设置请看个人另外一篇:《结合Windows任务计划程序执行 Robot Framwork 脚本》
bash
执行完成后,在该文件的目录下会有report.html,直接打开可查看执行结果。
ui
若是要执行多个定时任务,modify_task.bat和ModifyJenkins.txt最好要一一对应;
可在文件名上做区分,如增长前缀0一、02等等。
若ModifyJenkins.txt文件名发生变动,则须要修改与其对应的bat文件,编辑bat,替换文件名便可。
url
一、ModifyJenkins.txt
spa
*** Settings ***
Library Selenium2Library
*** Variables ***
${Jenkins_url} Jenkins_url # 修改jenkins地址
${job_name} test # 修改要配置的项目,与Jenkins上的项目名称一致
${arg_purpose} -arg_purpose # 修改版本类型
${arg_version} -arg_version # 修改版本号
${arg_product} -arg_product # 修改对应产品
*** Test Cases ***
login
open browser ${Jenkins_url} chrome ##修改对应Jenkins
maximize browser window #窗口最大化
wait until element contains xpath=//div[@class='login']/a 登陆
click element xpath=//div[@class='login']/a #进入登陆
input text j_username username #输入用户名
input text j_password password #输入密码
click button 登陆
sleep 1
modify
${job_path}= catenate SEPARATOR= xpath=//*[@id='job_ ${job_name} ']/td[3]/a #如xpath=//*[@id='job_test']/td[3]/a
${arg}= catenate str1 ${arg_purpose} str2 ${arg_version} str3 ${arg_product} #将修改后的参数字串链接起来
wait until element is visible ${job_path} error='所填项目不存在,请检查${job_name}' #验证当前是否有该项目
modify job arg ${job_path} ${arg} #写入修改后的参数
wait until element contains xpath=//*[@id='yui-gen56-button'] 保存
click element xpath=//*[@id='yui-gen56-button'] #点击保存
wait until element contains xpath=//*[@id='tasks']/div[5]/a[2] 当即构建
click element xpath=//*[@id='tasks']/div[5]/a[2] #点击当即构建
sleep 1
[Teardown] close browser
*** Keywords ***
modify job arg
[Arguments] ${job_path} ${arg}
click element ${job_path} #打开指定项目
wait until element contains //*[@id='tasks']/div[7]/a[2] 配置
click element //*[@id='tasks']/div[7]/a[2] #打开配置页面
Comment wait until element contains //*[@id='main-panel']/div/div/div/div[2]/div[3]/div/div[6] 构建
Comment click element //*[@id='main-panel']/div/div/div/div[2]/div[3]/div/div[6] #点击构建
wait until element contains xpath=//*[@id='yui-gen14']/table/tbody/tr[3]/td[3]/textarea command #找到构建参数的文本框
input text xpath=//*[@id='yui-gen14']/table/tbody/tr[3]/td[3]/textarea ${arg} #写入修改后的参数
二、modify_task.bat
pybot ModifyJenkins.txt