VSTO - 无法从外部程序集获取对Word.ApplicationFactory的引用

Sim*_*mon 6 integration-testing vsto

问题

我们有一个VSTO Word加载项,我们正在尝试进行集成测试.

我们组织了3个项目如下:

  • VSTO项目
  • 业务逻辑项目
  • 测试项目

问题是在测试集成项目中我们可以使用新的Microsoft.Office.Interop.Word.Application()创建一个单词实例,但是我们无法获得Microsoft.Office.Tools.Word.ApplicationFactory(VSTO接口)的实例).

有谁知道如何在测试程序集中获取VSTO ApplicationFactory的实例?

以供参考

VSTO项目调用业务逻辑项目传递

  • Microsoft.Office.Interop.Word.Application
  • Microsoft.Office.Tools.Word.ApplicationFactory

在业务逻辑项目中我们可以获取活动的Microsoft.Office.Interop.Word.Document并调用interop文档方法GetVstoObject方法在工厂中传递

public Microsoft.Office.Tools.Word.Document VstoDocument
{
    get { return _document.GetVstoObject(_factory); }
}
Run Code Online (Sandbox Code Playgroud)

Fra*_*sca 1

出于测试目的,可以模拟接口(使用起订量或其他框架)。我知道在访问设置 RTD 服务器所需的 Excel 界面时,您必须创建自己的界面版本,并使用正确的 Microsoft GUID 标记它们。也许同样的方法适用于应用程序工厂接口?我看到微软已经在这里发布了GUID