我已经进行了多次单元测试,我正在使用Appium来运行它们。在我的TestInitialize
中,我创建了一个单词实例。然后我打开另一个Word文档,我需要运行这个特定的测试。然后我打开一个excel doc,因为我需要它的数据。
我正在使用互操作来打开我的Word文档和我的Excel工作簿。我正在使用extern bool SetForegroundWindow(IntPtr hWnd);
来设置前景窗口。这当前可以将doc这个词放在前面,但是我试着将我的Workbook带到前面但是这不会发生。
我的代码如下
static extern bool SetForegroundWindow(IntPtr hWnd);
[TestMethod]
public void wordFormatChart()
{
var wordApplication = new word.Application();
var myDocument = wordApplication.Documents.Open(wordColumnChartTemp);
wordApplication.Visible = true;
Debug.WriteLine(wordSession.Title.ToString());
Debug.WriteLine(wordApplication.ActiveWindow);
Debug.WriteLine(wordSession.CurrentWindowHandle);
word.Window wordWindow = myDocument.ActiveWindow;
wordWindow.SetFocus();
wordWindow.Activate();
SetForegroundWindow((IntPtr)wordWindow.Hwnd);
wordSession.FindElementByName("Rectangle").Click();
Thread.Sleep(4000);
wordApplication.WindowState= word.WdWindowState.wdWindowStateMinimize;
Thread.Sleep(4000);
xl.Application excel = new xl.Application();
var myWorkbook = excel.Workbooks.Open(columnChartTemp);
excel.Visible = true;
Debug.WriteLine(excel.ActiveWindow);
xl.Window window = excel.ActiveWindow;
wordWindow.SetFocus();
wordWindow.Activate();
SetForegroundWindow((IntPtr)window.Hwnd);
excel.WindowState = xl.XlWindowState.xlMaximized;
}