我正在尝试为我在工作中工作的应用程序编写一些单元测试(模糊地希望其他人可能会效仿),而我最初使用NUnit和ReSharper插件运行这些测试.
但是,由于某些原因,ReSharper将不再为我进行测试:它只是用红色三振出来进行测试.
我担心没有错误代码,JetBrains网站上也没有提到这种行为.
还有其他人经历过类似的行为吗?
干杯,艾德
编辑
一个测试的例子,只是为了表明我不只是做错了:
using NUnit.Framework;
/// <summary>
/// Test
/// </summary>
[TestFixture]
public class Test
{
[Test]
public void TestOne()
{
Assert.IsTrue(true);
}
}
Run Code Online (Sandbox Code Playgroud)
在这个例子中出错并不是很多:D
我有一个包含不可复制句柄的C++类.但是,该类必须具有复制构造函数.所以,我已经实现了一个将句柄的所有权转移到新对象(如下所示),
class Foo
{
public:
Foo() : h_( INVALID_HANDLE_VALUE )
{
};
// transfer the handle to the new instance
Foo( const Foo& other ) : h_( other.Detach() )
{
};
~Foo()
{
if( INVALID_HANDLE_VALUE != h_ )
CloseHandle( h_ );
};
// other interesting functions...
private:
/// disallow assignment
const Foo& operator=( const Foo& );
HANDLE Detach() const
{
HANDLE h = h_;
h_ = INVALID_HANDLE_VALUE;
return h;
};
/// a non-copyable handle
mutable HANDLE h_;
}; // class …Run Code Online (Sandbox Code Playgroud) 简单问题在这里.我有一个C#程序需要将一些文件存储到硬盘驱动器上,但我不需要它们对最终用户有用,只能在程序可以读/写的某个地方.
是否有一个目录,我可以通过编程方式引用我的"文件空间游乐场" - 也就是说,我可以自由地读/写?
编辑:另外,如果我使用临时目录,文件保证有多长时间?我的程序仍在运行时,我不希望它们消失!
我编写了一个函数,它读取字节的输入缓冲区并产生一个字输出缓冲区,其中每个字对于输入缓冲区的每个ON位可以是0x0081,对于每个OFF位都可以是0x007F.给出输入缓冲区的长度.两个阵列都有足够的物理位置.我也有大约2Kbyte的空闲RAM,我可以用于查找表等.
现在,我发现这个功能是我在实时应用程序中的瓶颈.它将被频繁调用.您能否提出一种如何优化此功能的方法?我看到一种可能性是只使用一个缓冲区并进行就地替换.
void inline BitsToWords(int8 *pc_BufIn,
int16 *pw_BufOut,
int32 BufInLen)
{
int32 i,j,z=0;
for(i=0; i<BufInLen; i++)
{
for(j=0; j<8; j++, z++)
{
pw_BufOut[z] =
( ((pc_BufIn[i] >> (7-j))&0x01) == 1?
0x0081: 0x007f );
}
}
}
Run Code Online (Sandbox Code Playgroud)
请不要提供任何库,编译器特定或CPU /硬件特定的优化,因为它是一个多平台项目.
Spring Test有助于回滚在测试方法中对数据库所做的任何更改.这意味着在每种测试方法之前没有必要花时间删除/重新加载测试数据.
但是如果使用@BeforeClass Junit注释,则会强制数据加载器保持静态.这里探讨的一个问题: 为什么jUnit的fixtureSetup必须是静态的?
如果数据初始化方法是静态的,那么数据连接方法和数据源也必须......以及......强制一切都是静态的......这是行不通的.在这一点上,我问 - 当你必须为每次测试删除/重新加载测试数据时,Spring Test能够回滚更改有什么用处?!?!
假设我有一个看起来像这样的表单:
[ Animal name input field ]Add button
如果我输入名称并按Enter键,则会将具有给定名称的动物添加到表中.工作良好.我现在想要的是调用当前的工作方式"快速添加"并添加一个名为"慢添加"的新功能,我不太清楚该怎么做.基本上我想要的是,如果例如在输入或按下按钮时按住shift键,我希望表单提交方法做一些稍微不同的事情.在我的情况下,我希望它打开一个表格,在添加到表格之前可以添加有关动物的更多细节.
问题是我不太清楚如何做到这一点.我尝试console.info(eventData)在当前的提交函数中添加一个FireBug ,我发现它eventData包含一个altKey,shiftKey和controlKey属性,但即使我按下这些键,它们也总是未定义.
那么,当提交表单时按下某些修饰键时,是否有人知道如何在提交处理程序中执行一些特殊操作?
临时解决方案
结束时忽略了submit-button-shift-click-feature,而只是将快速添加功能作为shift-enter-in-input-fields.实现了这样的事情:
$('#new-task')
.submit(onNewAnimal)
.keypress(onNewAnimal);
function onNewAnimal(event)
{
if(event.type == 'keypress' && event.which != 13)
return true;
if(event.shiftKey)
{
// Quick add
}
else
{
// Open slow add dialog
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
如果有更好的方法仍然好奇,但在那之前,这就是我所拥有的.也许它可以帮助别人:)
如何检查是否创建了这样的匿名对象:
var myObj = {
prop1: 'no',
prop2: function () { return false; }
}
Run Code Online (Sandbox Code Playgroud)
确实有prop2定义?
prop2 将始终定义为函数,但对于某些对象,它不是必需的,也不会被定义.
我尝试了这里建议的内容:如何确定Native JavaScript Object是否具有属性/方法?但我认为它不适用于匿名对象.
假设有人想建立一个新的通用类,Novel[A].这个类将包含许多有用的方法 - 也许它是一种集合 - 因此你想要将它子类化.但是您希望方法返回子类的类型,而不是原始类型.在Scala 2.8中,为了使该类的方法返回相关的子类而不是原始类,必须做的最小工作量是多少?例如,
class Novel[A] /* What goes here? */ {
/* Must you have stuff here? */
def reverse/* What goes here instead of :Novel[A]? */ = //...
def revrev/*?*/ = reverse.reverse
}
class ShortStory[A] extends Novel[A] /* What goes here? */ {
override def reverse: /*?*/ = //...
}
val ss = new ShortStory[String]
val ss2 = ss.revrev // Type had better be ShortStory[String], not Novel[String]
Run Code Online (Sandbox Code Playgroud)
如果你想要Novel协变,这个最小量会改变吗?
(2.8这些集合除了其他内容之外还会执行此操作,但它们也会以更加花哨(和有用)的方式使用返回类型 - 问题是如果一个人只想要这个子类型 - …
collections scala scala-2.8 higher-kinded-types enrich-my-library
将字符串列表排序的正确方法是什么,我希望以下划线'_'开头的项目位于列表的底部,否则一切都是按字母顺序排列的.
现在我正在做这样的事情,
autoList.OrderBy(a => a.StartsWith("_") ? "ZZZZZZ"+a : a )
Run Code Online (Sandbox Code Playgroud) c# ×3
javascript ×3
c++ ×2
.net ×1
algorithm ×1
c ×1
collections ×1
dbunit ×1
distributed ×1
events ×1
forms ×1
html ×1
jquery ×1
junit ×1
linq ×1
performance ×1
resharper ×1
scala ×1
scala-2.8 ×1
sorting ×1
spring-test ×1
sql-order-by ×1
unit-testing ×1
windows ×1