我就不转载了,直接发链接。
参考链接:
https://blog.csdn.net/qq592304796/article/details/62234496
【以下不用再看了,直接点链接就行了】
这个是我们项目的一个任务,增加一种批量化调起测试框架用例的支持(python)。要通过java调起python测试用例。使用了ProcessBuilder。但是我们以前调起其他测试框架使用的是Process。
使用Process执行用例的时候需要对错误流单独处理,所以我这边是把用例出错的错误信息放在了正常流中,错误流只处理最外层的错误。(基本不起作用)
ProcessBuilder可以把错误流和正常流合并,统一处理。实现思路比较清晰。
因为用ProcessBuilder在客户的机器上一直执行错误,查看调用日志,发现是我们的代码错误,就是启动那个命令报错,我们认为是我这边代码问题。所以就在一开始打算把ProcessBuilder改成Process,但是java和python的输出日志格式不一致,我需要单独对python的用例结果写入日志做处理。这样就增大任务量了。算是我的坚持吧,没有改。我当时让他(可以)换一个机器,重新下发一个任务。成功了。也就是说不是我们代码问题。(还是做了修改,但就是把绝对路径改成相对路径了,其他没动。用例多,目录长,这样查看命令比较清晰。)