私はその方法のいくつかの例ではRuntime.getRuntime()のexec JUnitテスト
Runtime.getRuntime().exec ...
を使用しているクラスがあります。
public class MyClass {
public void doSomething() {
...do something...
Runtime.getRuntime().exec ...
...do something else
}
}
残念ながら、私が原因クラス「をリファクタリングすることはできません」いくつかの要件。私はこのクラスでjUnitテストを作成したいと思います。私はRuntimeクラスを模擬するのが難しいと思っています。
RuntimeプロセスがX結果またはY結果を返す場合に、 "doSomething"メソッドをテストしたいとしましょう。それを嘲笑する方法はありますか?
の結果を制御できることに嘲笑ランタイムオブジェクトを返すために、静的
Runtime.getRuntime()
方法を模擬するものであり、それを少しでも変更しますか? –私は少し修正することができますが、ランタイムを渡すためにクラスを変更することはできません... – Panos