zoukankan      html  css  js  c++  java
  • NUnit的使用

    代码
    单元测试方法之间没有依赖关系
    一个方法可能对应多个测试方法
    [TestFixture]类前标注时NUnit会自动加载该类
    [Test]标注测试方法。测试方法必须为public,
    void,没有参数
    [Ignore]忽略
    [ExpectedException]捕捉异常
    [Explicit]当整个类测试时 该测试不执行,只有当单独执行该方法时才会执行
    [SetUp] 初始化 每个Test都会执行一次
    [TearDown]资源释放 每个Test都要执行一次
    [TestFixtureSetUp]类初始化,类共享,只执行一次,最新执行
    [TestFixtureTearDown]类资源释放,类共享,只执行一次,最后执行



    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using NUnit.Framework;
    using System.IO;
    using System.Xml;
    using System.Web;
    namespace MyStackTestProject
    {
        [TestFixture]
        
    public class LargestTest
        {
            
    private Largest large;
            [SetUp]
            
    public void Init()
            {
                large 
    = new Largest();
            }
            
    /// <summary>
            
    /// 用txt存储测试数据
            
    /// </summary>
            [Test]
            
    public void GetLargestUseTxtTest()
            {
                
    //如果path="LargestTest.txt" 
                
    //System.IO.FileNotFoundException : 未能找到文件“E:\实例验证\泛型\MyStackTestProject\bin\Debug\LargestTest.txt
                StreamReader s = new StreamReader("http://www.cnblogs.com/LargestTest.txt");
                
    string line = null;
                
    while ((line = s.ReadLine()) != null)
                {
                    
    if (line.StartsWith("#"))
                        
    continue;
                    
    string[] array = line.Split(null);
                    
    int expected = int.Parse(array[0]);
                    List
    <int> list = new List<int>();
                    
    foreach (string arr in array)
                    {
                        
    if(!arr.Equals (""))
                           list.Add(
    int.Parse(arr));
                    }
                    
    int result = large.GetLargest(list.ToArray());
                    Assert.AreEqual(expected, result);
                }
                s.Close();
            }
            
    /// <summary>
            
    /// 用xml文件存储测试数据
            
    /// </summary>
            [Test]
            
    public void GetLargestUseXmlTest()
            {
                XmlDocument doc 
    = new XmlDocument();
                doc.Load(
    "http://www.cnblogs.com/LargestTest.xml");
                XmlNodeList list1 
    = doc.ChildNodes;
                
    foreach (XmlNode n1 in list1)
                {
                    
    if (n1.Name == "TestData")
                    {
                        XmlNodeList list2 
    = n1.ChildNodes;
                        
    foreach (XmlNode n2 in list2)
                        {
                            XmlNodeList n3 
    = n2.ChildNodes;
                            
    string expected =n3[0].InnerText;
                            
    string strArray =n3[1].InnerText ;
                            
    string[] array = strArray.Split(null);
                            List
    <int> list = new List<int>();
                            
    foreach (string arr in array)
                            {
                                list.Add(
    int.Parse(arr));
                            }
                            
    int result = large.GetLargest(list.ToArray());
                            Assert.AreEqual(
    int.Parse (expected), result);
                        }
                    }
                }
            }
           
        }
    }

  • 相关阅读:
    迭代器简介
    关于判断对象是否相等的问题
    NIO
    BIO流分类介绍
    servlet简介
    http协议简介
    爬虫常用链接
    http和https协议
    爬虫的合法性研究
    爬虫介绍
  • 原文地址:https://www.cnblogs.com/hubcarl/p/1706362.html
Copyright © 2011-2022 走看看