小编Oak*_*Oak的帖子

重试Visual Studio C#TestMethod

我很想知道是否有任何内置机制可以在Visual Studio 2008单元测试框架中重试 C#.例如,我有一个C#单元测试,它看起来像:

[TestMethod]
public void MyMethod() {
    DoSomething();
    Assert.Something();
}
Run Code Online (Sandbox Code Playgroud)

现在,偶尔DoSomething()表现不好; 在这种情况下,我想DoSomething()在到达断言之前重新运行该方法.显然我可以这样做:

...
do {
    Initialization();
    DoSomething();
} while (PerformedOK() == false);
Assert.Something();
...
Run Code Online (Sandbox Code Playgroud)

虽然这有点麻烦,因为添加了循环并重复测试初始化​​,否则将由其他方法/类构造函数完全处理.

我的问题是,是否有更方便的机制重试测试,如:

DoSomething();
if (PerformedOK() == false) Retry();
else Assert.Something();
Run Code Online (Sandbox Code Playgroud)

这将自动重试测试而不将其注册为失败,同时像往常一样执行所有常规初始化代码.

c# unit-testing visual-studio

4
推荐指数
1
解决办法
3246
查看次数

部分C++程序的静态分析

我正在考虑对C++代码示例进行一些静态分析项目,而不是整个程序.通常,静态分析需要一些更简单的中间表示,但是如果没有整个程序代码,则无法准确地创建这种表示.

尽管如此,我知道有一种Java工具 - 它基本上"猜测"了缺失的信息,因此即使它不再合理或完整,也可以进行静态分析.

是否有类似的东西可用于将部分C++代码转换为某种中间形式(例如LLVM字节码)?

c++ static-analysis compilation intermediate-language

4
推荐指数
1
解决办法
580
查看次数

RenderScript是否支持递归?

OpenCL不支持递归.CUDA确实如此,但仅限于某个版本.最初的搜索显示的renderScript 支持递归,但我找不到任何明确的.

RenderScript是否支持递归函数调用?

renderscript

4
推荐指数
1
解决办法
383
查看次数

奇怪的Java HashMap行为 - 找不到匹配的对象

当我试图在里面找到钥匙时,我遇到了一些奇怪的行为java.util.HashMap,我想我错过了什么.代码段基本上是:

HashMap<Key, Value> data = ...
Key k1 = ...

Value v = data.get(k1);
boolean bool1 = data.containsKey(k1);
for (Key k2 : data.keySet()) {
    boolean bool2 = k1.equals(k2);
    boolean bool3 = k2.equals(k1);
    boolean bool4 = k1.hashCode() == k2.hashCode();
    break;
}
Run Code Online (Sandbox Code Playgroud)

这奇怪的循环是有原因的具体执行我碰巧知道,data只包含一个项目在这一点上,它是k1,事实上bool2,bool3bool4进行评估,以true在执行.bool1但是,将被评估为false,并且v将为null.

现在,这是一个更大的程序的一部分 - 我无法在较小的样本上重现错误 - 但在我看来,无论程序的其余部分做什么,这种行为都不应该发生.

编辑:我已手动验证哈希码在对象插入地图的时间和查询时间之间没有变化.我会继续检查这个场地,但还有其他选择吗?

java hashmap

3
推荐指数
1
解决办法
5093
查看次数

为什么我的 SVG 数据 URL 在 SVG 数据 URL 内的 HTML 中不显示在 Chrome 中?

背景

我有一个 SVG 数据 URL 作为SVG 数据 URLbackground-image内部 HTML 元素的属性,<foreignObject>该 URL 充当<img>元素的源。

问题

在 Google Chrome 中,内部 SVG 根本不渲染;而如果整个业务不在图像内,它就会被渲染。我该如何解决这个问题?

等等,什么?为什么?

为什么会在下面,首先我想通过添加树结构和代码示例来完成问题,以澄清上面令人费解的段落。

树:

  • <img src="data:image/svg+xml;utf8,(附录A
    • <svg>(附录B
      • <foreignObject>
        • <html>
          • <div style="background: url('data:image/svg+xml;utf8,
            • <svg>(附录C

附件 C 根本没有渲染,就好像它不存在一样。不过,如果我将展品 A 剪掉,使展品 B 成为顶级元素,那么展品 C 就会渲染得很好。

小代码示例:

<div>Standalone:</div>
<svg xmlns="http://www.w3.org/2000/svg" width="75" height="50" style="position:relative"><circle cx="25" cy="25" r="25" fill="red" /><foreignObject style="width: 100%; height: 100%"><html xmlns="http://www.w3.org/1999/xhtml"><style>.x {position: absolute;background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='50'><circle …
Run Code Online (Sandbox Code Playgroud)

html css svg google-chrome html5-canvas

3
推荐指数
1
解决办法
1858
查看次数

获取Java源文件的包

我的目标是找到一个Java源文件的包(作为字符串),以纯文本形式给出,但尚未在文件夹中排序.

我不能只package在文件中找到关键字的第一个实例,因为它可能出现在注释中.所以我在考虑两种选择:

  • 逐字扫描文件,为扫描仪维护"内部注释"标记.第一次package遇到关键字而不在评论中时,停止扫描并报告结果.
  • 使用正则表达式 - 理论上应该是可行的,因为块注释在Java中没有下一个,但我尝试制作这样的正则表达式,结果证明它非常复杂 - 对我来说,至少.

这两种方法的另一个区别是,当我手动扫描时,我可以停止扫描,因为我可以确定package关键字不再出现,节省了一些时间......而且我不确定我是否可以使用正则表达式做类似的事情.另一方面,"当它不再出现时"的决定并不一定简单,尽管我可以使用一些启发式方法.

我想听听有关此问题的任何意见,欢迎任何有关正则表达式的帮助.我的解决方案也是用Java编写的.

编辑:对那些建议实际解析文件的人来说 - 这绝对是一个可行的选择,谢谢你,但是我觉得解析整个文件只是一个包太过分了.如果没有更简单的选择,我会这样做.

java regex parsing

2
推荐指数
1
解决办法
800
查看次数

如何"安装"log4j包?

我已经下载了Eclipse插件的代码.代码使用log4j,但它不只是将它用作库(引用jar),而是用作"bundle".因此,由于以下原因,它无法编译:

捆绑'org.apache.log4j'无法解析

我不确定解决这个问题的正确方法是什么.我知道如何将jar添加到项目中,但是如何添加"bundle"?这是我需要添加到整个Eclipse主机的东西吗?

我通过创建一个没有代码但是包含log4j jar的新插件项目来"解决"这个...但是这感觉不是正确的解决方案.

我还发现了一些发布"log4j bundle"的地方,例如:

但是我不确定这是否是我需要的,如果重要的是我得到它,以及如何"安装"它.

eclipse osgi log4j eclipse-plugin

2
推荐指数
1
解决办法
8149
查看次数

OpenCL代码'错误MSB3721'用于Visual Studio 2010上的英特尔OpenCL SDK

我目前正在使用英特尔的OpenCL SDK平台进行异构并行编程(OpenCL).我正在使用Visual Studio 2010 Ultimate.我的系统中没有任何GPU.我曾在CUDA SDK平台上进行opencl编程.这是我第一次使用英特尔的OpenCL SDK进行opencl编程.

我已经尝试了一些基本的平台,设备,上下文识别/创建/定义代码来自'OpenCL in Action'一书.他们一切都很好.因此我们可以认为visual studio已正确配置.

现在,我正在尝试在visual studio中构建一个"Hello World"程序,它给出了以下错误:

错误MSB3721:命令""C:\ Program Files(x86)\ Intel\OpenCL SDK\3.0\bin\x86\ioc32.exe"-cmd = build -input ="E:\ Menu\Google\programs\1code\feb\10feb2014\OpenCL\OpenCL\hello.cl"-output ="Debug\hello.out"-VS -device = CPU -simd = default -bo ="""退出,代码为-1073741511.C:\ Program Files(x86)\ MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations\IntelOpenCL.targetS

现在我的问题是:

  1. 这个'错误MSB3721'有什么意义?

  2. 这是与编程相关的错误或"OpenCL + Visual Studio"配置有问题吗?

我想在这个问题中尽可能具体.如果我没有提供足够的信息并帮助我,请告诉我.我非常感谢你的关心.

visual-studio-2010 opencl gpu-programming

2
推荐指数
1
解决办法
909
查看次数

如何获取标签的先前网址?

在撰写Chrome扩展程序时,如果有标签,如何在该标签中获取以前访问过的网页的网址?即我击中"后退"后会出现在全方位的网址?

javascript google-chrome-extension

2
推荐指数
1
解决办法
1165
查看次数

测试eclipse插件时AGENT_ERROR_INVALID_EVENT_TYPE

我正在开发一个eclipse插件.测试时,我有时会遇到以下错误:

JDWP exit error AGENT_ERROR_INVALID_EVENT_TYPE(204): ExceptionOccurred [../../../src/share/back/eventHelper.c:808]
FATAL ERROR in native method: JDWP ExceptionOccurred, jvmtiError=AGENT_ERROR_INVALID_EVENT_TYPE(204)
Run Code Online (Sandbox Code Playgroud)

这会立即杀死正在运行的eclipse实例(而不是eclipse主机).

有谁知道什么会导致这个错误?我怀疑是一些多线程的恶作剧,但要确定它并不容易.

java eclipse-plugin

1
推荐指数
1
解决办法
2466
查看次数

为什么我不能使用'this->'访问非静态函数中的静态成员?

为什么它给我一个链接错误?我认为用静态成员访问是可以的this->x.逻辑上听起来不错.我猜一个实例指针可以根据OOPS概念访问类拥有的内容.

c++ oop this

0
推荐指数
1
解决办法
78
查看次数