在工作中,我们使用Sandcastle来创建帮助文件.我已经使用SandCastleGUI一段时间了,我正在寻找一种在帮助文件中创建其他页面的方法.这些页面以XML格式编写,称为MAML.唯一的问题是我找不到任何适合这些文件格式的编辑器.
我正在寻找一个WYSIWYG编辑器来创建和编辑其他文档页面.
正如你们中的一些人所知,通常无法在.net中模拟静态方法.
通过模拟,我的意思是用另一个具有相同签名的方法替换类中的方法,通常用于测试目的.
用于模拟方法的两个主要方法是将其声明为虚拟或在接口中定义它.这两个都不允许使用.net静态方法.
然而,有一种称为"Typemock Isolator"的昂贵工具允许模拟静态方法.Isolator如何完成这个看似不可能的壮举?
我需要测试C++代码 - 我决定使用Google的测试框架.我需要确保测试不会因新错误而挂起.在.NET测试框架中,可以在测试中添加[Timeout],以确保它不会运行太长时间.
如何在使用Google Test时创建一个simialr行为?
我需要一个IronPython\Python示例,它将向C#/ VB.NET开发人员展示这种语言到底有多棒.
我正在寻找一个易于理解的代码片段或应用程序,我可以使用它来演示Python的功能.
有什么想法吗?
我正在编写一个VS加载项,我需要在成功构建后运行某个方法.我尝试过使用dte.Events.BuildEvents.OnBuildDone但即使构建失败也会发生这种情况.
我应该使用房产或其他活动吗?
这是我从TeamCity习惯的一个功能 - 我可以指定某个构建配置将由另一个构建配置的成功触发.
我甚至可以将一个构建的结果传递给另一个构建 - 但也许这要求太多了.
我在TFS2008中寻找类似的功能,有没有办法在构建配置上设置触发器,它将在另一个成功完成后启动?
在我的项目中,我使用Microsoft的单元测试框架编写测试.当我从Visual Studio运行它们时,我的所有测试都通过了,但是当我从MSBuild运行测试时,所有测试都失败并显示以下erorr消息:
单元测试适配器引发异常:未解析成员 SomeType,SomeAssembly Version = assemblyVersion,Culture = neutral,PublicKeyToken = ..
未找到的程序集是所有项目引用的第三方程序集.
构建脚本由TFS使用,所以我给出了以下几行:
<RunTest>true</RunTest>
<ItemGroup>
<MetaDataFile Include="$(BuildProjectFolderPath)myproject.vsmdi">
<TestList>CI_Tests</TestList>
</MetaDataFile>
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
我发现这篇文章显示了这个问题的解决方案,但遗憾的是我无法在TFS服务器上查看文件.
救命!
我已经尝试了一段时间为ASP.NET MVC中的UserViewControl编写单元测试.我想得到看起来像这样的代码:
[TestMethod]
public void HaveControlToDisplayThings()
{
var listControl = new ControlUnderTest();
var viewData = new ViewDataDictionary<IList<string>>(this.repo.GetMeSomeData());
// Set up a ViewContext using Moq.
listControl.SetFakeViewContext(viewData);
listControl.ViewData = viewData;
listControl.RenderView(listControl.ViewContext);
// Never got this far, no idea if this will work :)
string s = listControl.ViewContext.HttpContext.Response.Output.ToString();
Assert.AreNotEqual(0, s.Length);
foreach (var item in this.repo.GetMeSomeData())
{
Assert.IsTrue(s.IndexOf(item) != -1);
}
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,无论我尝试什么,我都会从RenderView内部得到错误.这是由静态HttpContext.Current对象无用引起的(据我所知) - 我从中得到NullReferenceException了System.Web.UI.Page.SetIntrinsics.
我尝试使用Phil Haack的HttpSimulator,它给了我一个HttpContext对象,但我发现我还需要指定一个假HttpBrowserCapabilities对象来进一步:
Subtext.TestLibrary.HttpSimulator simulator = new HttpSimulator();
simulator.SimulateRequest();
var browserMock = …Run Code Online (Sandbox Code Playgroud) 我有一个.NET(C#)多线程应用程序,我想知道某个方法是否在Finalizer线程内运行.
我已经尝试使用Thread.CurrentThread.Name但它不起作用(返回null).
任何人都知道如何查询当前线程以发现它是否是Finalizer线程?
在过去,我使用C#编写了大部分单元测试,即使实际的软件开发是在另一种.NET语言(VB.NET,C++ .NET等)中,但我可以使用VB来获得相同的结果.我想我使用C#的唯一原因是因为互联网上的大多数例子都是用C#编写的.
我使用单元测试作为.NET软件开发的一部分,您更喜欢使用哪种语言,以及您选择使用它的原因是什么?
我知道它在很大程度上取决于被测试的语言,但我感兴趣的是在单元测试时是否有特定语言的偏好.
unit-testing ×4
.net ×3
mocking ×2
msbuild ×2
add-in ×1
asp.net-mvc ×1
build ×1
c# ×1
envdte ×1
finalizer ×1
googletest ×1
helpfile ×1
ironpython ×1
maml ×1
mstest ×1
python ×1
sandcastle ×1
tfs2008 ×1
tfsbuild ×1
typemock ×1
xml-editor ×1