2

最近は Java から C# に移行し、Visual C# 2010 Express を使用しています。

単純なコードを書いてテストしたい場合もありますが、Eclipse ほど簡単ではないことがわかりましたmain。任意の Java ファイルにメソッドを記述して実行します。

VC# でMain.cs ファイルにメソッドを追加するとMain、このプロジェクトに 2 つのエントリがあることがわかります。実行する前にもう一方の名前を変更する必要があり、後で名前を変更する必要があります。

これを行う簡単な方法はありますか?

4

5 に答える 5

2

Visual Studio は大規模なプロジェクトに適しています。コードをテストしたいだけなら、アプリケーションのメイン メソッドに貼り付けるか、VS を忘れてコード スクラッチパッドから実行します。

最高の C# コード スクラッチパッドはLINQPadです

もちろん、多くのテストを行っている場合は、コードの依存関係をスタブ化する必要があるかもしれません。コードの範囲やプロジェクトの種類を知らずに言うのは難しいです。

于 2012-07-31T08:13:00.507 に答える
1

モノコンパイラにはREPLユーティリティ(http://www.mono-project.com/CsharpRepl)が含まれています。同様の何かがC#/ Visual Studioの将来のバージョンに含まれることになっています(Roslynプロジェクトの最新のCTPを参照してください)。

もう1つの可能性は、「テスト駆動の.Net」ユーティリティですが、これはVisualStudioExpressでは機能しません。It(ao)を使用すると、VisualStudio内から直接任意のメソッドを実行できます。

LINQPadとSnippetCompilerも実行可能なオプションです。

.csファイルを作成し、コマンドラインでコンパイルすることもできます。たとえば、このコードをhello.csというファイルに入れます

using System;

public class Program {
    public static void Main() {
        Console.WriteLine("Hello World");
    }
}

次に、コマンドラインで次のコマンドを使用してコンパイルしますcsc hello.cs

=>これによりhello.exeが作成され、実行できるようになります。

于 2012-07-31T08:28:57.533 に答える
1

@Alexander R が言うように、LINQPad は優れたツールです。Stack Overflow に投稿した回答のテストなど、小さなスニペットに広く使用しています。

現在のプロジェクトで他のコードを呼び出せるようにする必要がある場合は、単体テスト プロジェクトをソリューションに追加します。何かをテストしたいときは、新しいテスト メソッドでコードを記述し、Ctrl+R、Ctrl+T ショートカットを使用して、現在選択されているテスト メソッドを実行します。

于 2012-07-31T08:15:01.907 に答える
0

VC# で、.cs ファイルに Main メソッドを追加すると、このプロジェクトに Main エントリが 2 つあることがわかります。

main次に、別のメソッドを追加しないでください。コンソールまたは WinForms アプリケーションを作成すると、ファイル Program.cs に main メソッドが含まれます。作成したクラスなど、何かをテストしたい場合は、既存のメイン メソッドでそのクラスをインスタンス化するだけです。

于 2012-07-31T08:37:49.160 に答える
0

解決策として、テストするすべてのクラスに public testXXXX() メソッドを追加してから、それらの testXXXX() メソッドを呼び出すメイン メソッドを 1 つ用意してください。

于 2012-07-31T15:50:00.220 に答える