zoukankan      html  css  js  c++  java
  • jenkins启动appium服务

    想在jenkins中,自动定时启动appium服务,shell命令已准备如下:

    BUILD_ID=dontKillMe
    ps -ef |grep appium |grep -v grep |awk '{print $2}' |xargs kill -9 
    echo "" > appium.log
    nohup appium --address 127.0.0.1 --port 4723 --session-override --platform-name Android --platform-version 25 --automation-name Appium --log-timestamp --local-timezone --no-reset  >> appium.log 2>&1&

    其中,nohup 是后台启动命令

    清理进程: ps -ef |grep appium |grep -v grep |awk '{print $2}' |xargs kill -9  如果appium服务已经启动,就杀死该进程

    appium服务:appium --address 127.0.0.1 --port 4723 --session-override --platform-name Android --platform-version 25 --automation-name Appium --log-timestamp --local-timezone --no-reset
    保存为日志文件:>> appium.log

    2>&1  错误日志也输入appium.log文件

    最后一个 & :把命令丢在后台执行

    在jenkins执行后,无法启动appium。是由于jenkins执行完命令后,又马上杀死这个命令进程,需要添加一行命令:BUILD_ID=dontKillMe

    jenkins执行下构建,在构建目录会生成一个appium.log 目录,appium服务运行的日志都保存在这个文件中。

    如果出现jenkins 执行shell 无法启动,那就把上面的命令保存为shell .sh脚本,在jenkins 执行该脚本也能正常启动appium

    有时候appium 还没有启动就开始执行测试用例,导致用例执行不成功,最后加了个while循环,确认下appium 启动成功后再执行用例,

    #!/bin/bash
    ps -aef |grep appium
    rm -rf appium.log
    touch appium.log
    
    appium_log_content=`cat appium.log`
    while [ ${#appium_log_content} -le 666 ]; do
        appium_log_content=`cat appium.log`
        /Users/pub_pawf_autotest/autoconf/bin/start_appium.sh
        echo "appium still not  started!"
        sleep 2
    done 
    ps -aef |grep appium
    cat appium.log
    sleep 2

     jenkins执行启动结果如下:

    构建中 在工作空间 /Users/pub_pawf_autotest/.jenkins_8090/workspace/start_appium 中
    [start_appium] $ /bin/bash /Users/pub_pawf_autotest/env/apache-tomcat-8.5.30-8090/temp/jenkins4264455098456018568.sh
    1400560847 19226     1   0  4:41下午 ttys001    0:02.09 node /usr/local/bin/appium --address 127.0.0.1 --port 4723 --session-override --platform-name Android --platform-version 25 --automation-name Appium --log-timestamp --local-timezone --no-reset
    1400560847 19280 19278   0  4:42下午 ttys001    0:00.00 grep appium
    appium still not  started!
    appium still not  started!
    1400560847 19317     1   0  4:42下午 ttys001    0:01.91 node /usr/local/bin/appium --address 127.0.0.1 --port 4723 --session-override --platform-name Android --platform-version 25 --automation-name Appium --log-timestamp --local-timezone --no-reset
    1400560847 19322 19278   0  4:42下午 ttys001    0:00.00 grep appium
    
    Finished: SUCCESS
  • 相关阅读:
    高级(线性)素数筛
    Dijkstra(迪杰斯特拉)算法
    简单素数筛
    【解题报告】 POJ1958 奇怪的汉诺塔(Strange Tower of Hanoi)
    4 jQuery Chatting Plugins | jQuery UI Chatbox Plugin Examples Like Facebook, Gmail
    Web User Control Collection data is not storing
    How to turn on IE9 Compatibility View programmatically in Javascript
    从Javascrip 脚本中执行.exe 文件
    HtmlEditorExtender Ajax
    GRIDVIEW模板中查找控件的方式JAVASCRIPT
  • 原文地址:https://www.cnblogs.com/testway/p/9055673.html
Copyright © 2011-2022 走看看