我如何开始单元测试?总共n00b的问题,想法?

Nat*_*ate 1 .net c# unit-testing

所以我开始编写一个有用的方法的类库,这些方法已经编写了多年,我将从两个代码示例开始,然后问我具体的问题:

我还想提出一个论点,即这不是其他一些的重复,"我在哪里开始单元测试问题."

检查网络连接(不是互联网,只是网络)

    public static Boolean IsNetworkConnected()
    {
        Boolean ret = false;
        try
        {
            String HostName = System.Net.Dns.GetHostName();
            System.Net.IPHostEntry thisHost = System.Net.Dns.GetHostEntry(HostName);
            String thisIpAddr = thisHost.AddressList[0].ToString();

            ret = thisIpAddr != System.Net.IPAddress.Parse("127.0.0.1").ToString();
        }
        catch (Exception)
        {
            return false;
        }
        return ret;
    }
Run Code Online (Sandbox Code Playgroud)

和我的IsValiEmail方法(注意,我没有写正则表达式)

   public const String MatchEmailPattern = @"^(([\w-]+\.)+[\w-]+|([a-zA-Z]{1}|[\w-]{2,}))@"
         + @"((([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\."
         + @"([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])){1}|"
         + @"([a-zA-Z]+[\w-]+\.)+[a-zA-Z]{2,4})$";


    public static bool IsValidEmail(string email)
    {
        if (email != null && email != string.Empty) 
            return Regex.IsMatch(email, MatchEmailPattern);
        else 
            return false;
    }
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是如何测试这些方法实际上是否有效,显然我想开始单元测试更多的代码,这比这些快速示例更复杂.

如果可能的话,我想避免安装其他工具/框架,但我愿意接受你的想法.

更新

这个新的单元测试代码(通过已发布的链接)应该在哪里生效?在同一个集会?一个单独的组装?

J.W*_*.W. 5

看看这本书.单元测试的艺术.维基页面有很多很棒的资源.