[在线制作网页] .net – TestDriven.NET未运行MbUnit的SetUp方法

Home > 动态 > 资讯动态 > [在线制作网页] .net – TestDriven.NET未运行MbUnit的SetUp方法

我已经创建了一些MbUnit测试夹具,这些夹具具有SetUp属性标记的SetUp方法。使用MbUnit GUI,控制台运行程序和ReSharper MbUnit插件,这些方法在测试之前运行得很好。但是,当我使用TestDriven.NET运行测试时,它根本不运行SetUp方法。

有没有人知道这是TestDriven.NET的错误还是我的设置有误?

我想要一些我可以使用的东西,如下
var msg = new NonStaticMessageBox();
if(msg.Show(“MyMessage”,“MyCaption”,MessageBoxButtons.OkCancel)== DialogResult.Ok) {} ….
但特别是非静态的(我需要传递一个引用)有没有人知道这样的对象是否存在?

.net框架中不存在这样的对象。你需要自己动手。
封装是你的答案:)

为什么你需要传递它的参考?你可以使用MessageBox.Show,这就是全部?如果你真的需要它,你可以创建自己的MessageBox类,如:
公共类MessageBox{    private Form _messageForm = null;    
public void Show(string title,…)
{…}}

或者你可以继承MessageBox类并实现你自己的实例成员……但是我没有看到任何意义……

请记住,在一天结束时,S.W.F.MessageBox.Show()方法基本上都是围绕核心Win32 MessageBox()API调用的包装器。 (通过Reflector运行mscorlib;您将在名为ShowCore的私有方法中看到“真实”代码。)

没有规定(据我所知)在Win32中缓存被调用的MessageBox,因此在.NET中没有办法这样做。

我确实拥有自己定制的MessageBox类 – 虽然我这样做不是为了缓存它(在WinForms的使用场景中,相同的MB很少使用两次),而是提供更详细的错误信息和信息 – 标题,描述,将消息复制到剪贴板的能力(它通常是通知用户未处理的异常的工具)然后是按钮。

你的旅费可能会改变。

您可能希望查看SQL Server附带的ExceptionMessageBox类。它是一个独立的程序集,但我不确定你是否可以在没有SQL Server的情况下重新发布它 – 你可能需要检查它。

你说  “这显然是一种简化  我的问题。”
但是,如果没有关于意图的更多信息,您的问题不能揭示我们可以解决的问题。

鉴于任何表单都可以通过调用ShowDialog以及返回DialogResult的形式以模态方式显示。我在这里没有看到问题。您可以将任何您喜欢的参数传递到其中,根据需要定义内容,然后调用:

MyFactory.GetMyCustomDialogWithInterfacesOrSomesuch myDialog = new
…myDialog.ShowDialog()== DialogResult.Ok;
因为你正在处理表单而不是MessageBox,所以它不是静态的,所以它不是问题。

文章整理:南昌腾创科技网站建设

Copyright @ 2010-2016 南昌腾创科技有限公司 版权所有 赣ICP备15004057号