私はkarmaとslimerjsのlaucherとして動作するスクリプトを作成します。python3xはカルマから端末出力を読み込むにはどうすればいいですか?
それはこのようなものです:
# Load a Karma server
print('\nKarma is loading...\n')
karma = subprocess.Popen('./karma start', shell=True)
# delays for 2 seconds for waiting Karma server
time.sleep(2)
# Load a headless SlimerJS that points to Karma server
slimerjs = subprocess.Popen(
'xvfb-run slimerjs slimerjs-cfg.js > slimerjs.log', shell=True)
print('\nSlimerJS is running...\n')
それは動作しますが、この、2秒の任意の遅延の大きな問題があります。私はカルマが本当にロードされた後にslimerjsを呼び出すだけでいいので、遅れを使うのです。 しかし、カルマは私にこのようなコンソールに出力できます:だから
18 02 2017 03:11:12.176:WARN [karma]: No captured browser, open http://localhost:9876/
18 02 2017 03:11:12.190:INFO [karma]: Karma v1.3.0 server started at http://localhost:9876/
を、私は2秒の任意の遅延を置き換えるために、この出力を使用することができ、私もカルマが
を開始WHERE知って出力を得る必要があります私は、カルマが走っているslimerjsを言うにはサーバのパス/場所(http://localhost:9876/)を取得する必要があります。
私はこのようないくつかのコマンドしようと試み:任意の助けを
FileNotFoundError: [Errno 2] No such file or directory: './karma start'
:
p = subprocess.Popen(["./karma start"], stdout=subprocess.PIPE)
out, err = p.communicate()
しかし、Pythonは私にエラーメッセージを与えますか? shell=True
なし