单元测试silverlight它住在哪里?

alm*_*ori 3 silverlight location unit-testing

我想用silverlight开始单元测试,一些在线样本使用以下语句

EnqueueCallback
EnqueueConditional
EnqueueTestComplete
Run Code Online (Sandbox Code Playgroud)

这些住在哪里?

alm*_*ori 5

好的找到了答案.如果您的测试继承自WorkItemTest(或PresentationTest或SilverlightTest),您将能够从测试中调用:

TestComplete()
Run Code Online (Sandbox Code Playgroud)

指示您的测试方法已完成的框架,并转到下一个结果.这可以添加到事件回调,代理等.在调用它之后,您不应再做任何工作或测试.

EnqueueTestComplete
Run Code Online (Sandbox Code Playgroud)

将一个动作排入队列以调用TestComplete.这是在完成一组工作时调用TestComplete的最常用方法,通常是最后一次Enqueue*方法调用.

EnqueueCallback
Run Code Online (Sandbox Code Playgroud)

排队行动(委托,简单的lambda等).工作项有效地调用Action,然后继续.或者,此enqueue方法还采用一系列Actions,允许您按顺序将多个Action调用链接在一起.

EnqueueConditional
Run Code Online (Sandbox Code Playgroud)

采用Func条件语句/谓词.每次评估工作项时,都会调用该函数.当它返回True时,工作项完成并继续执行.在每次调用谓词之后,测试框架将展开堆栈,允许其他工作发生,然后再回来再次尝试该条件.

EnqueueDelay
Run Code Online (Sandbox Code Playgroud)

此方法将一个工作项排入队列,该工作项接受TimeSpan对象或表示最小毫秒数的整数,以便在继续之前延迟.这不是一个精确的计时器,而是一种确保至少持续最少时间的方法.它更像是一个DoEvents调用,而不像Sleep一样,因为它不会阻止UI线程.