寻找一种简单的方法来编写和测试一些代码,在visual c#中

时间:2012-07-31 08:07:43

标签: c# testing visual-c#-express-2010

我现在从Java到C#,并使用Visual C#2010 express。

有时我想编写和测试一些简单的代码,但我发现它并不像在Eclipse中那么容易:在任何java文件中编写main方法,并运行它。

在VC#中,当我在.cs文件中添加Main方法时,它会注意到此项目中有两个Main条目。我必须在运行之前重命名另一个,并且必须稍后重命名。

有一种简单的方法吗?

5 个答案:

答案 0 :(得分:1)

Visual Studio适用于大型项目。如果你只想测试一些代码,那么我要么把它粘在应用程序的main方法中,要么忘记VS并通过代码暂存器运行它。

最好的C#代码暂存器有LINQPad

当然,如果你经常测试,你可能需要删除代码所依赖的任何依赖项。如果不知道代码的范围或项目的类型,很难说。

答案 1 :(得分:1)

正如@Alexander R所说,LINQPad是一个很棒的工具。我将其广泛用于小片段,例如测试我发布到Stack Overflow的答案。

如果我必须能够在当前项目中调用其他代码,我会在我的解决方案中添加一个单元测试项目。当我想测试一些东西时,我用新的测试方法编写代码然后使用Ctrl + R,Ctrl + T快捷键来运行当前选择的测试方法。

答案 2 :(得分:1)

单声道编译器包含REPL实用程序(http://www.mono-project.com/CsharpRepl)。在C#/ Visual Studio的未来版本中应该包含类似的东西(参见Roslyn project的最新CTP)。

另一种可能性是'test driven .Net'实用程序,但这不适用于Visual Studio express。它(a.o.)允许您直接从visual studio中运行任何方法。

LINQPad和Snippet Compiler也是可行的选择。

您也可以简单地创建.cs文件并在命令行上编译它。例如,将此代码放在名为hello.cs

的文件中
using System;

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

然后在命令行中使用csc hello.cs

进行编译

=>这会创建hello.exe,然后您可以运行它。

答案 3 :(得分:0)

  

在VC#中,当我在.cs文件中添加一个Main方法时,它会注意到这个项目中有两个Main条目。

然后不要添加另一个main方法。当您创建Console或WinForms应用程序时,Program.cs文件将包含一个main方法。如果你想测试一些东西,例如你编写的类,只需在现有的main方法中实例化该类。

答案 4 :(得分:0)

作为解决方案,为什么不添加 公共testXXXX()方法到你想要测试的每个类,然后有一个主要方法,你可以调用那些testXXXX()方法。