![开发支持库vsts使用指南_第1页](http://file4.renrendoc.com/view/4d4f82933ac94b875d62808d44a28015/4d4f82933ac94b875d62808d44a280151.gif)
![开发支持库vsts使用指南_第2页](http://file4.renrendoc.com/view/4d4f82933ac94b875d62808d44a28015/4d4f82933ac94b875d62808d44a280152.gif)
![开发支持库vsts使用指南_第3页](http://file4.renrendoc.com/view/4d4f82933ac94b875d62808d44a28015/4d4f82933ac94b875d62808d44a280153.gif)
![开发支持库vsts使用指南_第4页](http://file4.renrendoc.com/view/4d4f82933ac94b875d62808d44a28015/4d4f82933ac94b875d62808d44a280154.gif)
![开发支持库vsts使用指南_第5页](http://file4.renrendoc.com/view/4d4f82933ac94b875d62808d44a28015/4d4f82933ac94b875d62808d44a280155.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、用 VSTS 进行构建下面将通过一个例子来讲解 VSTS 是如何进行构建的!1、创建团队生成类型在VSTS2005 团队资源管理器-团队项目生成下生成一个新的团队类型,具体生成过程如下:第一步:生成类型命名第二步:略第三步:略第四步;略第五步:设置构建过的测试项第六步:略。当进行完以上六步后,一个新的团队类型将生成。2、 进行构建设置当一个团队类型生成,此时需要按自己的设置(一天,一周,一个月)进行团队项目的生成(此处是利用WINDOWS 系统的自动执行功能来执行用户自定义的任务)在目标机上“C:Program FilesVisual Studio 8Common7IDE”文件夹下新建一个批处
2、理文件,批处理内容为:“C:Program FilesVisualStudio 8Common7IDE TFSBuild.exe”start 计算机名 “项目名称” “团队类型名称”给系统新建一个任务,然后配置其“日程安排”项。(下图配置了任务执行时间是:每天的 10:20 系统自动开始执行任务,也可以设置为每搁几分钟或几小时执行一次任务,详细设置在“高级”中。)3、 当构建完成后,查看构建信息。1) 构建版本定位到团队生成类型第四步中的物理位置,可以看到构建成功的可执行应用程序如下,其中通过目录可以看到此版本号:AddBuild_20071105.12)查看构建日志(部分日志截图如下,通过日
3、志可以分析在构建的过问题)结论:通过构建,可以方便测试及早拿到一个可测试的版本,这样方便了测试进试工作,对发现也可以及早的提交到程序员手中,进行及时的更改,促进了项目的推进。比较二个数据库的架构一、打开 VS2008,点击菜单上的 Data=Schema Compare=NewSchema Comparison二、在弹出窗体中,按下图分别在 Sourchema 下和Schema 下选择相应的 Database,其中 Sourchema 下选择的数据库【ISACADB-S】是待比较的数据源,是Schema 下选择的数据库【ISACADB】被更新的依据。三、选择好数据库后,点击 OK 按钮,开始执
4、行架构比较,完成后,显示如下界面。选择图中上面的数据库表或过程,下面的窗口二侧会分别以不同颜色显示Source 和Database 中不相同部分的内容。四、点击 VS2008 中如下图的中的紫色方框内的按钮【Show SchemaUpdate Script】,会在 vs2008 的下方显示整个数据库的全部更新;点击其右侧的刷新【Refresh】按钮,则会重新进行比较;点击 Write Updates 按钮,会直接执行更新,使Database 的架构与 Source Database 一致,点击Write Updates 左侧的按钮,可以重新设置 Compare 的二个 Database;最左侧
5、的按钮可以设置显示那些比较的结果。五、导出,可以直接上衣步骤中的,也可以点击 VS2008 中如下图的的二个按钮,Export To Editor 是将导出到 VS2008 中的编辑器中,Export To File 则是将导出到文件中。六、执行上一步导出的,将Database 的架构更新到与 SourceDatabase 的架构一致。七、在Database 执行更新成功后,检查Database 的架构更新是否正确。方法是:将更新后的Database 与 Source Database 进行架构比较,看比较结果是否完全一致,如果不一致,则检查错误原因;或者恢复原来的Database【已备份】,
6、重新进行更新,直到更新正确。比较二个数据库的数据一、打开 VS2008,点击菜单上的 Data= Dompare=New DataComparison二、在弹出窗体中,按下图分别在Source Database 下和Database 下选择相应的Database,其中 Source Database 下选择的数据库【ISACADB-S】是待比较的数据源,是Database 下选择的数据库【ISACADB】被更新的依据。并在下面设置比较条件,点击Next 按钮则可以进一步设置要比较的Tables、StoredProcedures、Views 等,点击 Finish 则直接按默认【只比较Table
7、s】进行数据比较。三、点击 Finish 按钮后,开始执行数据比较,完成后,显示如下界面。四、下面的所有步骤和上面的架构比较时基本一样,此处省略。补充:Visual Studio 2005 Team System 版本中默认是没有上面的功能的,需要安装下面的插件才能使用以上功能。Visual Studio 2005 Team Edition for Database Profesals Add-on forVisual Studio 2005 Team Suite Edition地址:http:/downloads/details.aspx?familyid=7de00386-893d-414
8、2-a778-992b69d482ad&displaylang=en用 VSTS 写单元测试的开发VSTS(Visual Studio Team System) 集成了单元测试框架(Team Test),即:VSTS 单元测试。它支持:1. 生成测试代码框架;2. 在IDE 中运试;3. 支持从数据库中加载数据的测试;4. 测试运行完成后,进行代码分析覆盖。使用VSTS 写单元测试的步骤如下:1. 创建测试;2. 编写测试;3. 运试;4. 代码覆盖。1. 创建测试打开解决方案中的.cs 类文件(如:StudentManager),在其中的一个方法(如:AddStudent() )上右击,选择
9、“创建单元测试”命令。在弹出的“创建单元测试”框中的“输出项目”下拉框中选择“创建新的 Visual C# 测试项目”,单击“确定”按钮,并在“新建测试项目”框中输入测试项目的名称(如:MySchoolTest),单击“创建”按钮后,就看见在原有的解决方案中生成了一个新的项目“MySchoolTest”。测试项目创建成功后,会同时生成 4 个与测试相关的文件:AuthoringTest.txt提供创建测试的说明,包2. 编写测试创建测试完毕后,VSTS 为自动生成的只是一个测试框架,默认代码中 Assert.Inconclusive 表明这是一个验证的单元测试。打开生成的测试文件“Studen
10、tManagerTest.cs”,如示例 1:TestMethodpublic void AddStudentTest()global:MySchool.BLL.StudentManager= new global:MySchool.BLL.StudentManager();/ TODO:初始化为适当的值global:MySchool.Ms.Student student = null; string expected = null;string actual;actual =.AddStudent(student);Assert.AreEqual(expected, actual,括向项目增
11、加其他测试的说明;StudentManagerTest.cs包含 AddStudent()的测试,以及测试初始化和测试清除的方法;MySchoolPro.vsmdi测试管理文件;localtestrun.testrunconfig本地测试运行配置文件。单元测试中,几个变量的简单介绍:单元测试中,常用的断言方法介绍:Assert.AreEqual()测试指定的值是否相等,如果相等,则测试通过;Assert.Inconclusive()表示一个未验证的测试;Assert.IsTrue()测试指定的条件是否为 True,如果为 True,则测试通过;Assert.IsFalse()测试指定的条件是否
12、为False,如果为 False,则测试通过;Assert.IsNull()测试指定的对象是否为空,如果为空,则测试通过;Assert.IsNotNull()测试指定的对象是否为非空,如果不为空,则测试通过;表示测试目标对象,通过这个目标对象可以测试该类中的各个方法;expected表示期望得到的值;actual表示实际得到的值;MySchool.BLL.StudentManager.AddStudent 未返回所需的值。);Assert.Inconclusive(验证此测试方法的正确性。);通过对示例 1 添加测试所需的初始值,并对断言进行简单的修改后,便得到一个正式的单元测试。如示例 2:
13、TestMethodpublic void AddStudentTest()global:MySchool.BLL.StudentManager= new global:MySchool.BLL.StudentManager();/ TODO:初始化为适当的值global:MySchool.Ms.Student student = new global:MySchool.Ms.Student(); / 修改 1student.LoginId = 003;student.LoginPwd = test003; student.UserSeId = 1; student.studentName =
14、 test003; student.studentNo = test003; student.Sex = 男;student.Cla= 1;string expected = 学员帐户创建成功!; /修改 2 string actual;actual =.AddStudent(student);Assert.AreEqual(expected, actual,MySchool.BLL.StudentManager.AddStudent 未返回所需的值。);/ Assert.Inconclusive(验证此测试方法的正确性。);这样,便得到了一个正式的单元测试。用断言 Assert.AreEqu
15、al()比较 expected、actual 是否相等。如果相等,测试通过。配置文件中的设置由于的测试需要和数据库打交道,并且数据库的连接字符串是从配置文件中的,所以需要在测试项目中添加配置文件(app.config)。如示例 3:用 VSTS 进行压力测试VSTS 提供了一个丰富、强大的工具,融合了开发领域的各个角色,涵盖开发生命周期的各个阶段,包括设计,开发,测试,管理,而这一整套构件的融会贯通,让它可以有效地改善各个阶段的弊端,提高团队之间不同的角色的协调能力,提高工作效率。开发过本文就简单介绍一下如何利用 VSTS 给一个做压力测试。1 建立一个测试项目,起名MyTest/数据库连接字
16、符串设置2 建立一个Web Test点击Web Test.IE 马上就会弹出一个窗口,这样录制3 在IE 里输入要测试的地址: 比如工作就可以开始了。对该录制做一些操作, 此时VSTS 会毕,点击 STOP下你的这些操作,用以作为压力测试的场景。6 点击生成代码,可以看到刚才录制的类似如下的代码:/ / This code was generated by a tool./ Runtime Ver/:2.0.50727.42/ Changes to this file may cause incorrect behavior and will be lost if/ the code is r
17、egenerated./ /namespace MyTestusing System;using System.Collections.Generic; using System.Text;usingusing.VisualStudio.TestTools.WebTesting;.VisualStudio.TestTools.WebTesting.Rules;public class WebTest1Coded : WebTestpublic WebTest1Coded()this.PreAuthenticate = true;public override IEnumerator GetRe
18、questEnumerator()WebTestRequest request1 = new WebTestRequest( request1.ThinkTime = 1688;ExtractHiddenFields rule1 = new ExtractHiddenFields();rule1.ContextParameterName = 1;);request1.ExtractValues += new Evenyield return request1;ndler(rule1.Extract);WebTestRequest request2 = new WebTestRequest(re
19、quest2.ThinkTime = 2;);request2.Method = T;FormtHttpBody request2Body = new FormtHttpBody();request2Body.Formrequest2Body.Form request2Body.FormtParameters.Add( VIEWSE, this.Context$HIDDEN1. VIEWSE.ToString();tParameters.Add(Button1, Go to Test Page);tParameters.Add( VIEWSEENCRYPTED,this.Context$HID
20、DEN1. VIEWSEENCRYPTED.ToString();request2Body.FormtParameters.Add( EVENTVALIDATION,this.Context$HIDDEN1. EVENTVALIDATION.ToString();request2.Body = request2Body;ExtractHiddenFields rule2 = new ExtractHiddenFields(); rule2.ContextParameterName = 1;request2.ExtractValues += new Evenyield return reques
21、t2;ndler(rule2.Extract);WebTestRequest request3 = new WebTestRequest();request3.Method = T;FormtHttpBody request3Body = new FormtHttpBody();request3Body.Formrequest3Body.Form request3Body.FormtParameters.Add( VIEWSE, this.Context$HIDDEN1. VIEWSE.ToString();tParameters.Add(Button1, Go to default page
22、.);tParameters.Add( EVENTVALIDATION,this.Context$HIDDEN1. EVENTVALIDATION.ToString();request3.Body = request3Body; yield return request3;7 添加一个 Load Test .8 填写好Load Test 的各项参数第一步是填写场景名第二步是填写装载的样式如果选择一次装载固定的用户数,选择第一项Constant Load如果选择Setp Load,表示步增,设置好开始时的用户数,以及经过多久每次增加的用户数Test MixBrowser MixNetwork M
23、ix在Counter Sets 选择Add Compuer.,表示要对某个 PC 进行Run Settings9 点击Finish10 点击Run Test,测试就开始了。压力测试运行后,就可以选中某个参数,查看某个时刻机器个方面的性能。参看下图:也可以运行perfmon,通过 Performance 查看机器的各项指标。VSTS 端口设置必须开放的TCP 端口,这样Team Foundation 组件之间才能进行通讯。1)SQL Server 2005 用到的端口SQL Server 2005 (Developer, Standard, orEntrise Edition) 用到如下 TCP
24、ports:Server or Application ServiBrowser ServiMonitoringContextKeynameQL_SERVI QL_BROWSERhemsiproperty.iniFile TCP Port 14331434144423822383SQL SQL SQL SQLSQLSQL_MONITORINGServerServerysis Service Redirector SQL_YSIS_REDIRECTORYSISysis ServiQL_SQL Server Reporting ServiceVSTF_WSSSQL_PORT802)Windows
25、SharePoImportantServi用到的端口如果你选择连接一个已经存在的 Windows SharePoServi部署,这些端口可能会不同。你可以自己确定这些端Server or Application Context。TCPPortKeynamehemsiproperty.iniFileWindows SharePoServiVSTF_WSSSQL_PORT80SharePoCentralVSTF_WSS_ADMIN_PORT17012AdministrationImportant在安装完 WWS 后,你要自己手动添加这些端口到Team Foundation Server 需要的端口
26、。Server or Application ContextKeynamehe msiproperty.iniFileTCP Port 80808081Team TeamTeamFoundation FoundationFoundationServerServroxy Build Remoting1VSTF_WEBSITE_PORTVSTF_WEBSITE_PORTNot set in.inifile2自定义签入代码策略建立自定义策略项目1. 打开VS2008:2. 选择文件下的新建菜单中的项目:3.在新项目中选择Visual C#Windows类库:4.输入项目名为CopyrightChec
27、kinPolicy:5.选择确定按钮保存.6.重命名Clase1为CopyrightPolicy.cs:7.右击项目选择添加:8.在.NET选项卡选择System.Windows.Forms选择确定:9.再右击项目, 选择添加选择浏览选项卡, 找到下面路径的文件:C:Program FilesVisual Studio 9.0Common7IDEPrivateAssembs.TeamFoundation.VerControl.Cnt.dll并添加:10. 在类中输入下面代码: using System.Windows.Forms; using System.Collections; using
28、 System.IO; using System.Collections.Generic; using System.Text; namespace CopyrightCheckinPolicy Serializableget return Strings.policyDescription; public override bool Edit(IPolicyEditArgs policyEditArgs)public override string Descriptionpublic class CopyrightPolicy : PolicyBaseusing System;using.T
29、eamFoundation.VerControl.Cnt;if (Path.GetExten(change.LocalItem) = .cs)foreach (PendingChange change in checkedFiles)kedPendingChanges;PendingChange checkedFiles = this.PendingCheckin.PendingChanges.ChecArrayList changes = new ArrayList();sedMessage);throw new ObjectDisedException(Strings.policyType
30、, Strings.policyDispoif (this.Dised)public override PolicyFailure Evaluate()return false;get return Strings.policyType; public override string Typereturn (PolicyFailure)changes.ToArray(typeof(PolicyFailure);changes.Add(failure);hange.LocalItem, this);PolicyFailure failure = new PolicyFailure(Stringi
31、vateMessage + : + cif (IsFileMissingCopyrightNotice(change.LocalItem)hange.ChangeType.ToString().Contains(ChangeType.Add.ToString()if (change.ChangeType.ToString().Contains(ChangeType.Edit.ToString() | cMessageBox.Show(Strings.policyHelp);public override void DisplayHelp(PolicyFailure failure)return
32、 false;getpublic override bool CanEditget return Strings.policyTypeDescription; public override string TypeDescriptionprotected override void OnPolicySeChanged(PolicyFailure failures)MessageBox.Show(StringivateMessage);public override void Activate(PolicyFailure failure)Strings.policyInstallationIns
33、tructions = value;setreturn Strings.policyInstallationInstructions;getpublic override string InstallationInstructionsw EvenndlendingCheckin_CheckedPendingChangesChanged); public override void Dise()w EvenndlendingCheckin_CheckedPendingChangesChanged); base.Dise(); private void pendingCheckin_Checked
34、PendingChangesChanged(Objecder, EventArgs e)PendingCheckin.PendingChanges.CheckedPendingChangesChanged -= nependingCheckin.PendingChanges.CheckedPendingChangesChanged += nebase.Initialize(pendingCheckin);public override void Initialize(IPendingCheckin pendingCheckin)base.OnPolicySeChanged(failures);
35、return false;catch (Exception)return result;sr.Close();bool result = !sourceCode.Contains(Copyright);string sourceCode = sr.ReadToEnd();StreamReader sr = new StreamReader(fullFileName, true);tryprivate bool IsFileMissingCopyrightNotitring fullFileName)OnPolicySeChanged(Evaluate();e Files include a Copyright Notice.; public sic string policyInstallationInstructions = Sorry, No instructions are available at t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 金融机构保安工作内容详解
- 2025年全球及中国宠物安全救生衣行业头部企业市场占有率及排名调研报告
- 2025-2030全球顶底包装盒行业调研及趋势分析报告
- 2025年全球及中国落地式拆码盘机行业头部企业市场占有率及排名调研报告
- 2025-2030全球厨房家用电器行业调研及趋势分析报告
- 2025-2030全球智能电梯紫外线消毒系统行业调研及趋势分析报告
- 2025-2030全球商用储水式热水器行业调研及趋势分析报告
- 2025-2030全球耐高温硅胶电缆行业调研及趋势分析报告
- 2025-2030全球夹具零件行业调研及趋势分析报告
- 2025-2030全球磁参数测量仪行业调研及趋势分析报告
- 四川省自贡市2024-2025学年上学期八年级英语期末试题(含答案无听力音频及原文)
- 2025-2030年中国汽车防滑链行业竞争格局展望及投资策略分析报告新版
- 2025年上海用人单位劳动合同(4篇)
- 新疆乌鲁木齐地区2025年高三年级第一次质量监测生物学试卷(含答案)
- 卫生服务个人基本信息表
- 高中英语北师大版必修第一册全册单词表(按单元编排)
- 苗圃建设项目施工组织设计范本
- 广东省湛江市廉江市2023-2024学年八年级上学期期末考试数学试卷(含答案)
- 学校食品安全举报投诉处理制度
- 2025年生物安全年度工作计划
- 安徽省芜湖市2023-2024学年高一上学期期末考试 生物 含解析
评论
0/150
提交评论