如何添加if条件,即如果得到特定的输出,则执行其他操作,知道我得到这样的输出
[Appium] Welcome to Appium v1.17.0
[Appium] Non-default server args:
[Appium] logFile: /var/log/appium.log
[Appium] allowInsecure: {
[Appium] 0: chromedriver_autodownload
[Appium] }
[Appium] Appium REST http interface listener started on 0.0.0.0:4723我用过这个,但一无所获。
script{
def appiumLog = sh label: 'Appium log', returnStdout: true, script: "docker logs ${containerName}"
if( appiumLog.substring(appiumLog.lastIndexOf("\n")) == '[Appium] Appium REST http interface listener started on 0.0.0.0:4723') {
sh label: 'APK Loading', script: "docker cp src/main/resources/test.apk ${containerName}:/opt"
echo "APK file has copied to: ${containerName}"
} else {
echo "This is the output: ${appiumLog}"
}
}也用了这个但没有用
if( appiumLog.indexOf('[Appium] Appium REST http interface listener started on 0.0.0.0:4723') >= 0) {发布于 2020-04-08 19:20:53
首先,如果您使用的是returnStdout: true,请确保始终trim()返回的字符串。最有可能的是有一个拖后腿的\n,它破坏了您的搜索。
def appiumLog = sh( label: 'Appium log', returnStdout: true, script: "docker logs ${containerName}").trim()您的第一个substring()实际上将\n作为第一个字符返回!因此,应该将+1添加到索引中,以跳过\n
if( appiumLog.substring(appiumLog.lastIndexOf("\n") + 1) ...https://stackoverflow.com/questions/61107864
复制相似问题