gpt4 book ai didi

visual-studio-2013 - 在 Visual Studio 2013 中使用编码 ui 运行 Specflow 测试时未找到文件异常

转载 作者:行者123 更新时间:2023-12-02 09:35:02 27 4
gpt4 key购买 nike

我整个早上都在网上寻找这个问题的答案,我尝试了很多建议,尽管所有解决方案似乎都适用于 Visual Studio 2010,而且我正在运行 2013 高级版,但我看不到任何人一样的问题。

我有高级版 VS 2013,我通过扩展管理器安装了 SpecFlow v1.9 并添加了 SpecFlow nuget 包。我创建了一个CodedUI测试项目并添加了一个功能文件、一些记录的codedui步骤和一个stepdef文件。没有什么可提示的,一切看起来都应该有效。我已经添加了 : <unitTestProvider name="MsTest"/>到我的 App.config,这样我就可以从 Visual Studio 中的测试资源管理器运行它。我最终想通过 MTM 运行测试,但当我让它工作时我会处理这个问题!

我已经构建了,一切都很高兴,所以我去测试资源管理器,我可以看到我的测试,所以我右键单击,运行测试。它因以下错误而失败,当我调试并尝试打开我的应用程序时,它确实到达了我的给定步骤。

System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.VisualStudio.TestTools.UITest.WindowsStoreUtility, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

当我想将其添加到我的项目引用中时,我找不到上面的引用,有一个类似的引用,但当我添加它时,它破坏了我的一些其他引用。我还查看了我的注册表文件,它所引用的路径不存在,无法编辑它。据我所知,如果没有 dll 文件,codedui 不能很好地与 Specflow 配合使用。所有对此修复的引用似乎都是针对 2010 的,并且要求我将 dll 复制到我的 Specflow 源文件夹中。我从 Visual Studio 安装了 Specflow,所以我没有它的程序文件文件夹,所以我遇到了该解决方案的一些症结。

有人有使用 Visual Studio 2013 和 codedui 测试项目的 Specflow 吗?我是否缺少设置步骤?或者这真的与我的注册表文件/引用有关。该错误令人困惑,因为我不明白为什么它试图找到该引用,特别是当我尝试手动查找时在任何地方都找不到该引用。我很想知道您是否遇到此错误并设法解决它,或者您是否可以解释您的设置步骤,以便我可以检查我没有错过任何内容。

谢谢!

最佳答案

我相信您可能缺少对某些所需 dll 的引用。我刚刚在我的 MS Visual Studio 2013 Ultimate 上完成了使用 Specflow、codedUI 测试项目创建的测试,它运行得很好。

以下是我遵循的步骤:

  1. 创建了一个类库项目。
  2. 在扩展和更新中添加了对 Specflow 1.9 的引用。
  3. 添加了对 Specflow CodedUI 属性生成器的引用(安装包 SpecFlow.CodedUI -版本 1.0.0.23)。
  4. 添加了对项目中 CodedUI 和测试工具所需库的引用。请参阅下面我添加的引用文献。

    Microsoft.VisualStudio.QualityTools.CodedUITestFrameworkMicrosoft.VisualStudio.QualityTools.UnitTestFrameworkMicrosoft.VisualStudio.TestTools.UITest.CommonMicrosoft.VisualStudio.TestTools.UITest.ExtensionMicrosoft.VisualStudio.TestTools.UITest.ExtensionUtilitiesMicrosoft.VisualStudio.TestTools.UITesting

  5. 向解决方案添加了一个单独的 CodedUI 项目,并将该项目的引用添加到类库项目中。

  6. 创建一个包含一些测试的新 Specflow 功能文件,并在步骤定义中为其创建步骤,并在步骤定义中引用您在 CodedUI 项目中创建或记录的函数。

  7. 从测试资源管理器运行 Specflow 测试。应该可以正常工作。

注意:如果您要创建 CodedUI 项目而不是类库项目,上述步骤应该可以正常工作。

关于visual-studio-2013 - 在 Visual Studio 2013 中使用编码 ui 运行 Specflow 测试时未找到文件异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27296654/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com