posts - 80,comments - 749,trackbacks - 2
          <2005年7月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          • 那是1983年的春天,泡泡在被生在了稱作“兩個胖子”的地方。
          • 那是1995年的夏天,泡泡愛上了被稱作“Zero/One”的世界。
          • 那是2003年的秋天,泡泡決定在“Zero/One”的世界中建設靈魂的花園。
          • 那是2005年的冬天,泡泡決心爬上他生命中的第一棵樹。
          • ~~~
          • 以后,泡泡要爬上比這更高更大的樹;
          • 以后的以后,泡泡將帶著自己的伙伴看樹頂美麗的日出;
          • 以后的以后的以后,泡泡將變成一棵真正的樹,永遠生活在充滿樹的世界里。
          • ***
          • 留言請發送到


          常用鏈接

          留言簿(26)

          我參與的團隊

          隨筆分類(103)

          隨筆檔案(80)

          文章分類(39)

          文章檔案(28)

          搜索

          •  

          積分與排名

          • 積分 - 307867
          • 排名 - 188

          最新評論

          閱讀排行榜

          評論排行榜

          What is NXUnit?

          NXUnit is a NUnit -style unit testing framework about XML for .NET Framework. It is an extension to NUnit. It brings you the ability to do unit testing easily in XML applications. It helps you to concentrate on business logic of your XML application and improve your Test Driven Development(TDD) technics. You can directly compare one XML string or stream with another, er assert that they are equal, just like doing the same thing to two integers using xUnit. But without NXUnit, you must pay attention to whitespaces in XML strings, empty elements or attributes, unimportant order of elements or attributes, unneccessary comments and so on. It's similar with XmlUnit in some aspects.

          Features

          The current version is NXUnit 1.0rc1, July 2005. The following is the 8 features of this version, which you can find in the facade class XMLAssert:

              * Assert that two XML inputs are equal.
              * Compare two XML inputs and find all differences between them.
              * Assert that declarations of two XML inputs are equal.
              * Assert that document types of two XML inputs are equal.
              * Assert the validity of an XML input.
              * Assert that the evaluation of an XPath expression on an XML input will return the expected value.
              * Assert that an XPath expression exists for an XML input.
              * Assert that an XML input is included by another.

          And you can change the properties of an instance of XMLAssert before an assertion or comparition, in order to:

              * Ignore the case of the elements' and attributes' names
              * Ignore XML comments
              * Ignore XML declarations and document types of both inputs
              * Ignore empty elements and attributes
              * Ignore orders of elements and attributes
              * Ignore unimportant whitespaces

          Sample

           1    using System;
           2    using System.IO;
           3    using System.Xml;
           4    using NUnit.Framework;
           5    using NXUnit.Framework;
           6
           7
           8    [TestFixture]
           9    public class Sample
          10    {
          11        private XMLAssert xa;
          12
          13        [SetUp]
          14        public void Init()
          15        {
          16            xa = XMLAssert.CreateInstance();
          17        }

          18
          19        [Test]
          20        public void TestMethod()
          21        {
          22            // Init the xml input
          23            string s1 = "";
          24            string s2 = "";
          25
          26            // Init the options for your purpose
          27            xa.IsOrderSensitive = false;
          28
          29            // Assert two XML inputs are equal
          30            xa.AreEqual(s1, s2, "Assertion Failed!");
          31
          32            // Compare two XML inputs and find all differences between them
          33            CompareResult r = xa.Compare(s1, s2);
          34            foreach (Diff d in r)
          35            {
          36                Console.WriteLine(d);
          37            }

          38            CompareResult another = xa.Compare(s1, s2);
          39            r.Add(another);
          40            for (int i = 0; i < r.Count; i++)
          41            {
          42                Console.WriteLine(r[i]);
          43            }

          44            if (r.AreEqual)
          45            {
          46                // They are equal
          47            }

          48
          49            // Assert two XML declaration of the two XML inputs are equal
          50            xa.AreDeclareEqual(s1, s2, "Declarations are not equal");
          51
          52            // Assert two document types of the two XML inputs are equal
          53            xa.AreDocTypeEqual(s1, s2, "DocTypes are not equal");
          54
          55            // Assert the validity of an XML input
          56            XMLAssert.IsValid("");
          57            XMLAssert.IsValidFile(@"C:\");
          58
          59            // Assert the evaluation of an XPath expression on an XML input will 
          60            // return the expected value
          61            xa.AreXpathEqual("<a/>""/r/a[2]", s1, 
          62                "The xpath expression doesn't return <a/>");
          63
          64            // Assert an XPath expression is exist for an XML input
          65            XMLAssert.XpathExist("//@b='c'", s1, 
          66                "The xml document doesn't have the xpath expression");
          67
          68            // Assert an XML input is included by another one
          69            xa.IsIncluded(s1, s2, "The {0} is not included in {1}", s1, s2);
          70
          71            // The Counter
          72            Assert.AreEqual(6, xa.Counter);
          73
          74            // XMLInput can use in all the samples above
          75            xa.AreEqual(XMLInput.CreateFromString(s1), 
          76                XMLInput.CreateFromString(s2), "Assertion Failed!");
          77        }

          78    }
          posted on 2005-07-15 13:22 Brian Sun 閱讀(2466) 評論(3)  編輯  收藏 所屬分類: 軟件

          FeedBack:
          # re: 發表我自己的開源軟件
          2005-07-16 21:44 | 乖狗狗
          泡泡啊,終于又見你寫Blog了
          雖然你的著作對乖狗狗來說是比較深奧滴
          還是努力去看看
          呵呵
            回復  更多評論
            
          # re: 發表我自己的開源軟件
          2005-07-19 12:37 | Brian Sun
          謝謝支持,呵呵,我會努力的!
            回復  更多評論
            
          # re: BlogJava的開源軟件:NXUnit
          2014-10-24 10:26 | lovemydream
          TDD!~~  回復  更多評論
            
          主站蜘蛛池模板: 华容县| 县级市| 泰州市| 黄大仙区| 北碚区| 定陶县| 黄骅市| 泉州市| 嘉祥县| 遵义县| 澄江县| 汾西县| 固阳县| 囊谦县| 娱乐| 柞水县| 昌都县| 齐河县| 扎鲁特旗| 汉沽区| 两当县| 漯河市| 顺义区| 潮安县| 清徐县| 甘泉县| 淮南市| 隆昌县| 霍林郭勒市| 柘荣县| 同心县| 嘉善县| 阳新县| 石泉县| 北京市| 贡山| 邯郸市| 东丽区| 晋中市| 巴马| 财经|