2012年6月15日 星期五

Visual Studio 2012 Test Platform

在 VS 2010 中寫單元測試,是一件簡單的事,但是內建的 ms-test 的效能卻是不好。而其他的 test framework 如 xUnit, MbUnit, NUnit 等,又難與 Team Foundation Server 整合。於是,只能一直使用 ms-test。

在 VS 2012 中,Test Framework 不再是單元測試中第一個要選擇的對象了。因為它有了新的概念:Unit Test Platform。

Unit Test Platform

簡單來說,我們現在可以在 VS12 中作許多不同Test Framework 的單元測試平台了。

image

安裝 xUnit Test Runner

在 Extensions and Updates 中,找到 xUnit Test Runner 並安裝。

image

image

接下來,建立一個平常的 Class Library, 並用 NuGet 安裝 xNnit ,以及引用 ms test framework. 完成如下圖的  References

image

再來,就寫測試吧。

   1: using System;
   2: using System.Collections.Generic;
   3: using System.Linq;
   4: using System.Text;
   5: using System.Threading;
   6: using Microsoft.VisualStudio.TestTools.UnitTesting;
   7: using Xunit;
   8:  
   9: namespace ClassLibraryTest
  10: {
  11:     [TestClass]
  12:     public class Class1
  13:     {
  14:         [Fact]
  15:         public async void Test()
  16:         {
  17:             var sut = new AsyncClass();
  18:             await sut.DoAsyncWork();
  19:             Xunit.Assert.Equal("Hello", sut.Property);
  20:         }
  21:  
  22:         [TestMethod]
  23:         public void Test2()
  24:         {
  25:             Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsTrue(true);
  26:         }
  27:     }
  28: }

執行測試

在左方的 Test Explorer,就可以看兩種不同的 Test Framework 的測試都可以被找到,且測試完畢。

image

結論

VS 2012 中的測試,看來又大幅提升了微軟在測試界的地位了。

Windows Azure 開發要下載的工具

下載

Windows Azure SDK

 

Azure Storage Explorer

看 storage 用。

Windows Azure Platform Management Tool (MMC)

另一個 storage 的管理工具。

2012年6月6日 星期三

一定要用Windows 8 的理由

最近開始使用 Windows 8 Release Preivew,發現它實在好用。

我是在 ASUS Zenbook 上安裝的。由於是 SSD,故原本的 Windows 7 開機就很快了。為了試用 Windows 8,特地安裝成 vhd 並以 vhd 當成開機。
換句話說,這已經是個虛擬技術下的測試結果了。但試用的結果仍相當滿意。

以下說明為何建議使用 Windows 8。(持續增加中…)

開機超快

Windows 8 開機實在有夠快。原本 Windows 7 開機到登入畫面,至少還要等個兩秒。使用 Windows 8 開機,彷彿沒關過電腦一樣快。這對平板(Tablet)電腦來說是必備的。

支援多螢幕工作區

除了可以連接多螢幕外,現在還可以在每個螢幕上都有工作列,獨立的桌面。
桌面背景圖案還可以跨螢幕,不過,這需要一張超寬的像片才有效果。

Hyper-V

Windows 7 的 Windows Virtual PC 只能安裝32位元的作業系統,不支援快照的重大限制,導致相當多人不想用。Windows 8 現在內建 Hyper-V,可跑64位元的虛擬環境,支援快照,遷移…等功能。
實在是太棒了。我的Windows 8 已經是使用 vhd 的虛擬技術開機的了,竟然還可以在裡頭再安裝 Hyper-V。(在虛擬環境中再虛擬一個環境??)

Movie App 播放自動暫停/繼續

當 Movie App 被切換到其他 App 時,原有播放中的影片會自動暫停。如果從其他App切回來時,被暫停的 App 會自動再播放。這種行為只有在行動裝置才有,現在也搬到 Windows 8上,讓 桌機/筆電/平板/手機 的使用者體驗一致。

虛擬光碟

記得 Windows 7 時,我還找過 Virtual CloneDrive 用來虛擬光碟。現在 Windows 8 除了可以將 iso 檔燒成實體光碟外,也可以掛載成虛擬光碟了。

image

App

網路 + 瀏覽器已經讓我們的視野無限延伸了,為什麼還要有 App 呢?因為設計精良的 App,可以讓我們有更好的使用者經驗。尤其在大小不一的行動裝置上,使用者操作習慣與介面更相形重要。

Windows 8 上已經有許多 App 了。當然也有好的與不好的。微軟在設計 App 時就有相當多的考量。例如 Mail App,設計過程可以參考 Building the Mail app  這個 blog。

放大縮小

桌面也可以放大縮小字型及圖示了了。身為上流的作業系統,這一定是必備的。

image

Share with Facebook