我正在尝试将NUnit与values属性一起使用,这样我就可以指定许多不同的输入,而无需进行100次单独的测试.
但是现在我意识到有时候我想使用相同的输入集,但是在非常不同的测试中,如下所示.
有没有办法可以在一个地方指定所有值,比如一个数组,并为每个值属性使用数组?
我想确保测试运行100个单独的测试,而不是1个运行100个值的测试.
我查看了Nunit文档,但我找不到实现此目的的方法.有任何想法吗?
码:
[Test]
public void Test1([Values("Value1", "Value2", "Value3", ... "Value100")] string value)
{
//Run Test here
}
[Test]
public void Test2([Values("Value1", "Value2", "Value3", ... "Value100")] string value)
{
//Run Test here
}
[Test]
public void Test3([Values("Value1", "Value2", "Value3", ... "Value100")] string value)
{
//Run Test here
}
Run Code Online (Sandbox Code Playgroud) 问题是WPF窗口只接受system.form.window,所以我不能将Excel设置为我的VSTO应用程序中的所有者对象,因为VSTO插件只将Excel的hwnd或其活动窗口暴露为本机窗口,因为它是COM.这意味着当WindowStartUpLoadation设置为中心所有者时,它不起作用.所以我被迫解决这个问题.
到目前为止,我在阅读本网站后想出的是尝试手动居中窗口,但即使用他的简单示例,我的窗口也不会出现居中.
private static void CenterWpfWindowInExcel(WpfParameterDialog wpfDialog)
{
WindowInteropHelper helper = new WindowInteropHelper(wpfDialog);
helper.Owner = new IntPtr(Globals.ExcelAddin.Application.Hwnd);
// Manually calculate Top/Left to appear centered
double nonWpfOwnerLeft = Globals.ExcelAddin.Application.ActiveWindow.Left; // Get non-WPF owner’s Left
double nonWpfOwnerWidth = Globals.ExcelAddin.Application.ActiveWindow.Width; // Get non-WPF owner’s Width
double nonWpfOwnerTop = Globals.ExcelAddin.Application.ActiveWindow.Top; // Get non-WPF owner’s Top
double nonWpfOwnerHeight = Globals.ExcelAddin.Application.ActiveWindow.Height; // Get non-WPF owner’s Height
wpfDialog.WindowStartupLocation = WindowStartupLocation.Manual;
wpfDialog.Left = nonWpfOwnerLeft + (nonWpfOwnerWidth - wpfDialog.Width)/2;
wpfDialog.Top = nonWpfOwnerTop + (nonWpfOwnerHeight - wpfDialog.Height)/2;
} …Run Code Online (Sandbox Code Playgroud) 目前我正在查看SaveFileDialog,但我没有看到任何允许用户设置自定义属性的方法.有谁知道如何同时提示用户输入自定义属性.
下面的屏幕截图来自Excel 2010,正在完成我想要完成的任务.

关于如何完成同样的事情的任何想法?