成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Visual Studio 2010多核并行環(huán)境下單元測(cè)試

原創(chuàng)
開(kāi)發(fā) 后端
本文將介紹的是Visual Studio 2010多核并行環(huán)境下單元測(cè)試,這也是CPU步入多核時(shí)代后.NET程序員需要面對(duì)的問(wèn)題。

【51CTO獨(dú)家特稿】在Visual Studio 2010中,我們推出了運(yùn)行并行測(cè)試的功能,現(xiàn)如今許多機(jī)器有多個(gè)CPU或一顆CPU有多核,因此我們認(rèn)為如果測(cè)試時(shí)利用機(jī)器上的所有處理器或所有處理核心,那一定很有意義。同時(shí),還可以有效地提高同一時(shí)間測(cè)試運(yùn)行的次數(shù),因此可以縮短運(yùn)行所有測(cè)試的時(shí)間。

決定

我們研究了所有不同的測(cè)試類(lèi)型和我們已有的功能,做出了下列決定:

1、我們支持多CPU/核執(zhí)行的唯一測(cè)試類(lèi)型是單元測(cè)試。我們是基于后面這幾個(gè)因素做出這個(gè)決定的:測(cè)試類(lèi)型是UI測(cè)試嗎?測(cè)試已經(jīng)實(shí)現(xiàn)了某些形式的并行執(zhí)行嗎?測(cè)試類(lèi)型托管在不同的主機(jī)適配器上嗎(我們可能無(wú)法控制測(cè)試如何執(zhí)行)?依賴性測(cè)試能保證按一定的順序正確執(zhí)行嗎?測(cè)試是一個(gè)單元測(cè)試擴(kuò)展嗎?這些問(wèn)題的答案迫使我們選擇只支持單元測(cè)試。

2、數(shù)據(jù)適配器(Data Adapters)無(wú)法啟用。因?yàn)閿?shù)據(jù)收集是基于測(cè)試事件的,數(shù)據(jù)收集時(shí)如果有多個(gè)測(cè)試任務(wù)正在執(zhí)行,將會(huì)減緩測(cè)試的速度,此外,數(shù)據(jù)本身可能被錯(cuò)誤地隔離到特定的測(cè)試中,但可能包括來(lái)自其他測(cè)試的數(shù)據(jù)和信息。

3、這種情況僅會(huì)發(fā)生在通過(guò)Visual Studio或MSTest執(zhí)行本地測(cè)試時(shí)。因?yàn)檫h(yuǎn)程測(cè)試允許你跨多個(gè)代理劃分測(cè)試,我們決定對(duì)遠(yuǎn)程執(zhí)行不啟用此方案,此外,目前僅適用于Visual Studio或MSTest。

需求

你可能已經(jīng)等不及要問(wèn)我,快告訴我需要做什么!

好,但我首先要提醒你,雖然再明顯不過(guò)了,但我還是要說(shuō),那就是你需要準(zhǔn)備一臺(tái)多處理器或多核的機(jī)器,可以使用虛擬機(jī),但你要保證宿主主機(jī)是多CPU的,最簡(jiǎn)單的方法就是打開(kāi)任務(wù)管理器進(jìn)行驗(yàn)證。

使用任務(wù)管理器

圖 1 使用任務(wù)管理器查看是否是多CPU/核

我的機(jī)器只有一顆CPU,但是雙核的。

另外,你的測(cè)試必須是線程安全的,只有你自己才能確保它們是,如果不能保證,就可能導(dǎo)致不正確的結(jié)果、死鎖和許多頭痛的問(wèn)題。

如何啟用并行測(cè)試執(zhí)行

1、確保你有一臺(tái)多CPU/核機(jī)器;

2、確保你只運(yùn)行單元測(cè)試;

3、確保你的測(cè)試是線程安全的;

4、確保你的數(shù)據(jù)適配器沒(méi)有開(kāi)啟;

5、確保你在本地運(yùn)行測(cè)試;

6、修改你的測(cè)試設(shè)置文件。在測(cè)試設(shè)置文件上點(diǎn)右鍵,選擇“用…打開(kāi)”

準(zhǔn)備打開(kāi)測(cè)試設(shè)置文件

圖 2 準(zhǔn)備打開(kāi)測(cè)試設(shè)置文件

6.1以xml格式打開(kāi)

以xml格式打開(kāi)

圖 3 以xml格式打開(kāi)

6.2 在Execution元素上設(shè)置parallelTestCount屬性

設(shè)置parallelTestCount屬性

圖 4在Execution元素上設(shè)置parallelTestCount屬性

有效的選項(xiàng)包括:

不指定該屬性 = 使用1CPU/核(默認(rèn)值)

0 = 自動(dòng)配置,我們將根據(jù)你的CPU和核心數(shù)量盡可能多的安排測(cè)試

n = 并行測(cè)試的數(shù)量(如果你不想使用所有的CPU/核)

6.3 保存你的設(shè)置,結(jié)束。

結(jié)果

我的機(jī)器是雙核,因此我的測(cè)試結(jié)果是:

我的測(cè)試結(jié)果

圖 5 我的測(cè)試結(jié)果

正如你所看到的,在同一時(shí)間我運(yùn)行了兩個(gè)測(cè)試,如果我串行運(yùn)行它們,我至少需要10秒,使用并行測(cè)試后,我只用了6秒。

結(jié)果摘要

圖 6 結(jié)果摘要

當(dāng)然還有許多其它因素會(huì)影響這一數(shù)字,但測(cè)試速度主要取決于你的CPU/核心數(shù)量。

希望本文對(duì)你有所幫助!

原文出處:http://blogs.msdn.com/vstsqualitytools/archive/2009/12/01/executing-unit-tests-in-parallel-on-a-multi-cpu-core-machine.aspx

原文名:Executing Unit Tests in parallel on a multi-CPU/core machin

【編輯推薦】

 

 

責(zé)任編輯:彭凡 來(lái)源: 51CTO
相關(guān)推薦

2009-11-13 14:59:12

Visual Stud

2011-01-25 10:42:29

Visual Stud

2012-06-18 10:03:46

Visual Stud

2009-12-11 13:14:45

Visual Stud

2009-10-27 09:12:50

Visual Stud

2017-01-14 23:42:49

單元測(cè)試框架軟件測(cè)試

2010-07-27 09:40:01

敏捷Visual Stud

2010-07-29 09:41:23

Visual Stud

2009-12-02 09:43:38

Visual Stud

2010-11-29 08:57:20

Visual Stud.NET 4

2010-03-17 08:49:49

Visual Stud

2010-03-11 15:23:44

Visual Stud

2009-09-04 09:39:15

Visual Stud

2010-04-01 14:51:52

Visual Stud

2016-09-14 21:55:33

前端測(cè)試Karma

2009-12-15 09:36:32

Visual Stud

2010-02-23 16:24:47

Visual Stud

2009-11-10 13:43:37

Visual Stud

2017-01-14 23:26:17

單元測(cè)試JUnit測(cè)試

2017-01-16 12:12:29

單元測(cè)試JUnit
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 一区在线视频 | 欧美成人精品激情在线观看 | 日日夜夜免费精品 | 韩国精品一区二区三区 | 淫片一级国产 | 国产日韩精品久久 | 日韩电影一区 | 亚洲午夜在线 | 日韩在线不卡视频 | 91精品国产综合久久精品 | 99久久视频 | 亚洲成av人影片在线观看 | 一区二区三区国产精品 | 国产福利在线 | 日韩欧美一区二区三区免费看 | 成人在线小视频 | 欧美一级毛片免费观看 | 亚洲精品在线国产 | 日韩成人在线网址 | 日韩欧美在线视频 | 亚洲精品女人久久久 | 国产一区二区三区久久久久久久久 | 国产你懂的在线观看 | 久久人人国产 | 欧美日韩国产精品一区二区 | 婷婷色国产偷v国产偷v小说 | 在线一区二区三区 | 4hu最新网址 | 午夜精品视频 | 久久999 | 亚洲综合久久网 | 亚洲精品二三区 | 91资源在线 | 日韩电影一区 | 91免费看片神器 | 亚洲一区久久 | 在线观看国产网站 | 成人在线观看免费视频 | 成人午夜视频在线观看 | julia中文字幕久久一区二区 | 亚洲综合视频一区 |