所以我开始编写一个有用的方法的类库,这些方法已经编写了多年,我将从两个代码示例开始,然后问我具体的问题:
我还想提出一个论点,即这不是其他一些的重复,"我在哪里开始单元测试问题."
检查网络连接(不是互联网,只是网络)
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; }
和我的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; }
所以,我的问题是如何测试这些方法实际上是否有效,显然我想开始单元测试更多的代码,这比这些快速示例更复杂.
如果可能的话,我想避免安装其他工具/框架,但我愿意接受你的想法.
更新
这个新的单元测试代码(通过已发布的链接)应该在哪里生效?在同一个集会?一个单独的组装?
看看这本书.单元测试的艺术.维基页面有很多很棒的资源.