0
我想寫一個測試程序。它將打開一個特殊的*.tests
文件並通過文件中的測試測試直接程序。Qt程序與殼牌
我需要:
- 運行某些程序。例如
./main -testing 45 563 67
- 聽結果。
我該怎麼辦呢?我想通過一些測試運行程序main
,並聽取其結果。
我想寫一個測試程序。它將打開一個特殊的*.tests
文件並通過文件中的測試測試直接程序。Qt程序與殼牌
我需要:
./main -testing 45 563 67
我該怎麼辦呢?我想通過一些測試運行程序main
,並聽取其結果。
你應該使用QProcess
類來啓動你的程序。
QString program = "./main";
QStringList arguments;
arguments << "-testing" << "45" << "563" << ...;
QProcess *myProcess = new QProcess(parent);
myProcess->start(program, arguments);
然後您可以使用waitForFinished
等待它完成。 exitCode
會給你返回碼。
readAllStandardOutput
(或*Error
)方法允許您讀取進程已輸出到控制檯的內容。
謝謝。但我有一個問題。 readAllStandardOutput返回QByteArray。如果程序將寫入 - (7 \ n67 \ n78 \ n),什麼格式將是qbytearray? – tucnak
它將具有完全相同的格式。你可以從QByteArray創建一個QString,或者從它創建一個QBuffer。 – Mat