Telerik JustMock下载30天免费试用

一般集成

高级功能Telerik JustMock报价是可能的,主要是因为它的分析器。分析器是一种公共语言运行时(CLR)可以在. net应用程序启动时加载到同一进程中的工具。是否加载分析器取决于注册表中是否存在特定的环境变量或记录。

本主题描述了可以用来通知CLR有一个概要分析器要加载的方法。

  • 为分析器添加注册表记录的安装
  • 设置环境变量以定义分析器的路径并启用它

如果您已经注册了分析器,JustMock控制台可以帮助您在使用免安装集成时自动设置变量并启用剖析器。

安装JustMock

如果安装了JustMock,就不需要执行任何额外的操作来运行剖析器。安装将在注册表中添加一个条目,CLR在稍后加载时可以访问该条目。有关如何在您的计算机上安装JustMock的更多信息,请查看安装和设置的话题。

通过环境进行免安装集成

前提条件和注意事项

. net Framework 4及以上版本允许您激活分析器,而无需预先安装在注册表中。要做到这一点,需要指定完整路径到剖析器DLL到。net运行时。请注意,这必须在启动概要化流程之前完成。

使用无注册表分析器激活有一些限制:

  • 你不能在. net 2.0/3.5测试运行器中使用它——只支持。net 4和更新版本。
  • 你必须事先知道测试者的恶意。如果测试运行程序是32位进程,则必须指定32位分析器DLL的路径。如果测试运行器是64位的,那么您需要使用64位分析器DLL。

在选择了所需的分析器位之后,必须将各自的分析器dll提交到源代码控制存储库中。您可以在JustMock安装文件夹中找到分析器dll。通常的地点是:

  • 32位分析器- C:\Program Files (x86)\Progress\Telerik JustMock\Libraries\CodeWeaver\32\Telerik.CodeWeaver.Profiler.dll
  • 64位分析器- C:\Program Files (x86)\Progress\Telerik JustMock\Libraries\CodeWeaver\64\Telerik.CodeWeaver.Profiler.dll

将一个或两个dll提交到源代码控制存储库。不要重命名它们!如果两者都需要使用,那么将它们提交到单独的文件夹中。然后,构建系统可以在从源代码控制中检出剖析器后激活它。指定剖析器DLL的完整路径的需要意味着在尝试激活剖析器之前,您需要有一种机制来将源代码控制中的相对路径解析为物理路径。

你也可以使用NuGet包来代替引用程序集。中了解如何在此类场景中设置剖析器使用JustMock。商业NuGet包部分。

要使JustMock能够在任何环境中运行而不依赖于安装,您应该设置到分析器的路径,并使CLR能够运行该分析器。这两者都是通过设置环境变量来实现的。

注册分析器

JustMock允许您设置x86和x64项目都可以使用的路径,或者分别为这两种配置设置路径。下面是可用于设置该路径的变量列表:

.NET框架变量 .NET核心变量 描述 默认路径
COR_PROFILER_PATH CORECLR_PROFILER_PATH x86和x64进程的分析器程序集的路径。 根据测试运行程序的位度,在x64位或x32位版本的分析器程序集路径之间进行选择。
COR_PROFILER_PATH_32 CORECLR_PROFILER_PATH_32 x86进程的分析器程序集的路径。 C:\Program Files (x86)\Progress\Telerik JustMock\Libraries\CodeWeaver\32\Telerik.CodeWeaver.Profiler.dll
COR_PROFILER_PATH_64 CORECLR_PROFILER_PATH_64 x64进程的分析器程序集的路径。 C:\Program Files (x86)\Progress\Telerik JustMock\Libraries\CodeWeaver\64\Telerik.CodeWeaver.Profiler.dll

您应该为所使用的平台设置COR_PROFILER_PATH (CORECLR_PROFILER_PATH)或其他两个变量。但两者不能同时发生。

在正确设置了分析器的路径之后,必须启用CLR来运行该分析器。

启用分析器

设置了概要分析器之后,需要在运行测试之前启用该概要分析器。这是通过以下变量和值来完成的:

net框架 net核心
Justmock_instance =1 cor_enable_profiling =1 cor_profiling ={b7abe522-a68f-44f2-925b-81e7488e9ec0} Justmock_instance =1 coreclr_enable_profiling =1 coreclr_profiler = {b7abe522-a68f-44f2-925b-81e7488e9ec0}

JustMock控制台可以帮助你设置变量,并自动为你做。

使用JustMock。商业NuGet包

在免安装集成中使用NuGet包

如果您更喜欢使用NuGet包,您仍然可以访问JustMock使用的程序集,并且可以将32位和64位目标的分析器路径设置为本地NuGet缓存中的相应位置。默认情况下,这些路径被放置在用户概要目录中,并包含特定版本的包:"$(UserProfile).nuget\packages\justmock.commercial(version)\runtimes"。运行时文件夹包含每个平台目标的子文件夹。

.NET框架变量 .NET核心变量 描述 默认路径
COR_PROFILER_PATH CORECLR_PROFILER_PATH x86和x64进程的分析器程序集的路径。 根据测试运行程序的位度,在x64位或x32位版本的分析器程序集路径之间进行选择。
COR_PROFILER_PATH_32 CORECLR_PROFILER_PATH_32 x86进程的分析器程序集的路径。 $ (UserProfile) \ justmock.commercial \ \ .nuget \包(版本)\ runtimes \ win-x86 \ \ Telerik.CodeWeaver.Profiler.dll本土
COR_PROFILER_PATH_64 CORECLR_PROFILER_PATH_64 x64进程的分析器程序集的路径。 $ (UserProfile) \ justmock.commercial \ \ .nuget \包(版本)\ runtimes \ win-x64 \ \ Telerik.CodeWeaver.Profiler.dll本土

在RunSettings中使用NuGet包

当测试项目依赖于NuGet包时,您应该在项目的运行设置中设置与前一节中描述的相同的变量。然而,分析器的路径(CORECLR_PROFILER_PATH)应该指向您的本地NuGet缓存。下面是一个示例内容,展示了.runsettings文件应该是什么样的:

在RunSettings中设置分析器

   1 1 {B7ABE522-A68F-44F2-925B-81E7488E9EC0} %REAL_PATH_TO_PROFILER%   

分析程序的路径应设置为分析程序集的位置在你的NuGet缓存文件夹。默认文件夹如下:

  • Windows:
    • 32位分析器处于% userprofile % .nuget \包\ justmock.commercial(版本)\ runtimes \ win-x86 \ \ Telerik.CodeWeaver.Profiler.dll本土
    • 64位分析器处于% userprofile % .nuget \包\ justmock.commercial(版本)\ runtimes \ win-x64 \ \ Telerik.CodeWeaver.Profiler.dll本土
  • Linux
    • ~ / .nuget /包/ justmock.commercial /(版)/运行时/ linux-x64 /本地/ libTelerik.CodeWeaver.Profiler.so

Linux上的JustMock集成

JustMock还允许您在Linux上运行测试。要做到这一点,你必须使用免安装的方法来设置和启用分析器,或者在应用程序中使用NuGet包。

Linux-Installation-Free

对于没有安装的场景,您应该通过环境部分设置免安装集成中描述的环境变量。要获取所需的二进制文件并设置环境变量,您应该:

  1. 下载JustMock_[version].tar.gz文件您的Telerik帐户。该文件包含二进制文件和分析器。
  2. 在所需的路径上提取它
  3. 环境变量设置如下:
    环境变量 价值
    JUSTMOCK_INSTANCE 1
    CORECLR_ENABLE_PROFILING 1
    CORECLR_PROFILER {b7abe522 - a68f - 44 - f2 - 925 b - 81 e7488e9ec0}
    CORECLR_PROFILER_PATH [extracted-files-path] runtimeslinux-x64nativelibTelerik.CodeWeaver.Profiler.so

分析器性能优化

通过设置环境变量,在执行单元测试时,JustMock允许启用或禁用可能影响JustMock分析器性能的任何特性。启用特性的值为1,禁用特性的值为0。本节将展示不同的选项及其默认值。有关选项本身的更多信息,请阅读分析器的选项

环境变量 默认的
JUSTMOCK_ONDEMAND_ENABLED 0
JUSTMOCK_AUTO_RESET_ENABLED 1
JUSTMOCK_DLL_IMPORT_ENABLED 1
JUSTMOCK_ASYNC_CONTEXT_ENABLED 1

另请参阅

在本文中
Baidu
map