问题标签 [instrumentation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
216 浏览

c# - VSInstr 注入自己的代码

我正在寻找一种用我自己的函数检测二进制文件的方法。基本上,在二进制文件中的每个方法之前插入对函数的调用。

  1. 是否可以使用 VSInstr.exe 或其他 .NET 检测工具来执行此操作?
  2. 如果 1 不可能:如何实现我的检测工具?是否有任何开源工具可用作起点?

问候,维克多

0 投票
1 回答
776 浏览

eclipse-plugin - 如何在构建时制作 Eclipse 仪器类?

有时我必须执行一些自定义字节码转换。我主要使用 asm 和 javaassit。

在 Eclipse 中,我通常使用 -javaagent jvm 参数运行我的代码。在 Eclipse 之外,我使用 maven、ant 或命令提示符在运行应用程序代码之前调用编织器。

但重点是:我想在构建时在 Eclipse 中执行检测。

  • 最好的方法是什么?
  • 是否有一个已经制作的插件可以通过实现一些 api 来连接?
  • 我可以用 eclipse 猴子编写这个脚本吗?
  • 我可以使用 ant builder 并用它调用我的 weaver 吗?
  • 我是否应该查看 AspectJ 插件(必须很大)并尝试弄清楚如何制作自己的插件?
  • 我应该看看其他插件来获得灵感吗?

谢谢。

0 投票
1 回答
1825 浏览

java - 是否可以在 JUnit 测试中使用 java.lang.instrument.Instrumentation?

是否可以在 JUnit 测试中使用 java.lang.instrument.Instrumentation?我正在使用 mockrunner 来模拟 Servlet,并希望测量存储在会话中的对象的大小

0 投票
3 回答
838 浏览

performance - 如何测量 Spring Bean 中调用的方法的次数和响应时间

我想测量在 Spring 提供的服务上调用方法的次数。

在 EJB 领域,此信息通常由容器提供。

现在既然春天是在广播中播放“你能做的任何事,我能做得更好”时构思的,我希望有一个漂亮而优雅的组件隐藏在某个地方,我可以使用少量 XML 将其编织到我的应用程序中。

有人知道这样的组件吗?

0 投票
3 回答
17242 浏览

android - 如何在 Android Instrumentation 测试中强制改变方向?

我正在使用 ActivityInstrumentationTestCase2 类为应用程序编写一些验收测试。我想在测试中引起方向改变,以确保发生一些事情。其中包括确保保留 Activity 状态,但我还想确保使用适当的方向布局。

我知道我可以简单地测试 onSaveInstanceState/onRestoreInstanceState/onPause/onResume/等。确保保留实例状态的方法。但是,我想知道是否真的存在导致方向改变事件的机制?

这是否涉及注入某种运动事件以诱使设备/模拟器认为它已被旋转,或者仪器是否提供了一种实际的方法?

谢谢和干杯!

0 投票
4 回答
9934 浏览

android - android 仪器测试用例 - getinstrumentation() 返回 null

我一直在尝试制作一个扩展 intstrumentationtestcase 的测试用例,每当我调用 getinstrumentation() 时,它都会返回 Instrumentation 的 null 实例而不是 Instrumentation,从而使我想做的任何自动化都无用。我也在清单中设置了权限,即使我只是在这个案例将要运行的同一个应用程序上测试自动化......有什么想法吗?

0 投票
1 回答
628 浏览

android - android.test.InstrumentationTestRunner 中的 getAllTests 和 getTestSuite

我创建了一个扩展 android.test.InstrumentationTestRunner 的测试运行器。我正在寻找一种方法来定义一组测试以根据一组配置执行。

我想我可能能够覆盖以下方法来返回我的自定义测试套件,但是,这些都没有被调用!只是想知道这些有什么用:

公共测试套件 getAllTests () 公共测试套件 getTestSuite ()

有什么线索吗?我可以使用其他任何替代方法在运行时定义自定义测试套件吗?

谢谢

0 投票
1 回答
2433 浏览

android - Android - Junit - 测试项目使用外部 Jar

我想在另一个 Android 项目 (A) 中使用的库项目 (LIB) 中有一些 java 代码(可以很好地为 Android 编译)。

由于 LIB 的代码不太可能发生太大变化,我选择将它作为 jar 添加到 A。它工作正常。

我有另一个项目是一个 Android 检测项目,测试第一个 Android 项目 (B)。

所以我们现在拥有的是A,包括LIB作为外部jar,B测试A。

当我想从用 LIB 编写的 B 代码访问时,问题就开始了。据我所知,除非我将 LIB 作为外部 jar 添加到 B,否则它会拒绝编译(也就是说,它无法访问 A 中包含的 LIB jar 中的代码)。

我不愿意将 LIB 作为外部 jar 添加到 B 中,因为:1. 感觉不对,2. 运行测试时它失败了:

java.lang.IllegalAccessError:预验证类中的类引用解析为意外实现

我找到了Mike 的问题,但他的解决方案只涉及使用 ant 脚本进行编译,我目前更喜欢在这个项目中使用 Eclipse IDE。

知道如何解决这个问题吗?

0 投票
2 回答
1398 浏览

visual-c++ - MSVC _penter 和 _pexit 钩子可以在每个函数的基础上禁用吗?

MSVC 中有编译器选项,可以在进入和退出函数时自动生成检测调用。这些钩子称为 _penter() 和 _pexit()。编译器的选项是:

/Gh 启用 _penter 挂钩功能

/GH 启用 _pexit 挂钩功能

是否有编译指示或某种函数声明会在每个函数的基础上关闭检测?我知道使用 __declspec(naked) 函数不会被检测,但这并不总是一个非常实用的选择。我在 PC 和非 X86 平台上都使用 MSVC,非 X86 平台在汇编程序中手动编写 Epilog/prolog 很痛苦(更不用说它会弄乱调试器堆栈跟踪)。

如果这仅在每个文件(编译器选项)的基础上,我想我将不得不将特殊功能拆分到一个单独的文件中以关闭该选项,但如果我可以单独控制它会容易得多文件基础。

如果无法做到这一点,则后备计划是将函数移动到它们自己的 CPP 翻译单元并在没有选项的情况下单独编译。

0 投票
5 回答
13400 浏览

wcf - 如何开始使用 WCF 性能分析

我试图弄清楚如何分析 WCF 服务,以便识别任何瓶颈。
我在网上找到了一些信息,但没有任何东西可以假设我所在的位置没有先验知识。

有哪些推荐的免费工具?

是我发现的使用 vsperfcmd.exe 分析 wcf 服务的信息,据此它非常简单,但我需要填补从哪里开始的空白。我的假设是将 VsPerfCLREnv 和 VsPerfCmd 复制到托管我的 wcf 服务的服务器并执行一些我不太确定的配置步骤。我也不太确定如何查看调用堆栈来评估每个调用的性能。

clrprofiler 似乎更简单一些。我假设我会将 clrprofiler.exe 复制到服务器,File->Profile Service并添加名称和启动/停止命令。(这是一个友好的名称或文件名还是服务显示名称?)我假设然后我将对服务运行我的测试,我可以在 clrprofiler 中看到调用堆栈。这听起来正确吗?

[编辑]
我对测试网络不太感兴趣,因为这是在测试服务器上,这是一个大型 wcf 项目,上面有多个开发人员,我无法仅出于监视目的而对项目进行更改表现。我想专注于其中的实际方法的性能。

非常感谢任何有关入门的帮助。