私は現在、うまくいけば、2 つの個別の同じ名前のクラスの結果を比較するために使用されるシステムを開発しています。2 つのクラスを比較することで、入力パラメーターが同じ場合に、最初のクラスのメソッドからの出力が 2 番目のクラスのメソッドからの出力と同じかどうかを判断できることを願っています。
2 つの独立したクラスで同じテスト クラスを動的に実行するにはどうすればよいですか?
疑似コードの例:
簡単なテストクラスがある場合...
class TestClass{
public int TestMethod(int num){
int num2;
TestedClass t = new TestedClass();
num2 = t.add(num);
}
そして、テストする必要がある2つの同一のクラス...
class TestedClass{
public int add(int num){
num = num + 2;
return num;
}
と
class TestedClass{
public int add(int num){
num = num + 4;
return num;
}
2 つの異なる TestedClass に対して TestClass を実行し、テストの結果を何らかの形式のコレクションに保存するにはどうすればよいでしょうか。
ご覧のとおり、2 つの TestedClass は同じ名前で、戻り値の型も同じですが、機能がわずかに異なるだけです。また、TestedClass を変更する権限もありませんが、プログラムやパッケージなどのどこに配置するかを制御できます。
前もって感謝します。
編集:
非常に重要な情報を非常に巧妙に見逃していたようです。
また、TestClassを編集するアクセス権もありませんが、上記のように、クラス/メソッド名を知っていて、それらがどこにあるかを制御できます。アイデアは、入力のコピーと正しい出力 (TestClass と他の TestedClass) を指定して、クラスを動的にテストできるものを構築することです。
混乱をお詫び申し上げます。
EDIT 2: テストにアクセスできます。たとえば、いくつかの回答が提案されているように、それらを実行できますが、編集することはできません。