【问题标题】:Tests run fine like Unit Test but fail to run in Test Explorer (Appium & Specflow)测试像单元测试一样运行良好,但无法在测试资源管理器(Appium 和 Specflow)中运行
【发布时间】:2020-04-10 14:32:58
【问题描述】:

我正在使用 Appium 和 Specflow 进行自动化测试。下面是我的代码

var objectType = (from assembly in AppDomain.CurrentDomain.GetAssemblies()
            from type in assembly.GetTypes()
            where type.FullName.Contains("Model.ModelsUI") && 
            type.FullName.Contains(typeObjectName)
            select type).ToList();

每次我在测试资源管理器中运行它时,此语句都会抛出异常,并在下面显示错误消息

System.Reflection.ReflectionTypeLoadException:无法加载一种或多种请求的类型。 无法加载文件或程序集“Microsoft.IntelliTrace.Core,版本=16.0.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a”。系统找不到指定的文件。>

但是在同一个项目中,如果我将其设置为单元测试的 [TestMethod] 并运行此单元测试。然后它没有问题并给出准确的预期结果。 我试图在互联网上寻找解决方案并实施其中的大部分,例如:检查安装的 MsTest 适配器,删除 obj 和 bin 文件,然后重建 .... 但没有雪茄。 我是新的。请帮我处理这个案子。这将不胜感激。提前致谢

【问题讨论】:

    标签: c# unit-testing appium mstest specflow


    【解决方案1】:

    解决方法取自 Github 上提出的 issue

    替换:

    AppDomain.CurrentDomain.GetAssemblies()
    

    与:

    AppDomain.CurrentDomain.GetAssemblies().Where(assembly => !assembly.FullName.StartsWith("Microsoft.VisualStudio.TraceDataCollector"))
    

    【讨论】:

      猜你喜欢
      • 2018-05-03
      • 2014-06-15
      • 2020-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-01
      • 1970-01-01
      相关资源
      最近更新 更多