标签: assertions

什么是Assertion.AssertEquals的"升级路径"?

我继承了一些单元测试代码,它给了我一个弃用警告,因为它使用了"Assertion.AssertEquals":

警告CS0618:'NUnit.Framework.Assertion'已过时:'使用Assert类代替'

但是,我不能在Assert类中看到我应该使用的明显方法吗?

AssertEquals接收两个对象和一条消息,如果出现故障,可以使用该消息报告错误.例如

        Assertion.AssertEquals(
             "Enqueuing first item should set count to 1",
             1, pq.Count);
Run Code Online (Sandbox Code Playgroud)

Assert类中的等价方法是什么?

.net nunit assertions

3
推荐指数
2
解决办法
1613
查看次数

rspec模拟:验证它的"应该"方法的期望?

我正在尝试使用rspec的模拟设置我可以在"应该"方法中验证的期望......但我不知道如何做到这一点......当我在模拟上调用.should_receive方法时,它在before:all方法退出时立即验证预期的调用.

这是一个小例子:

describe Foo, "when doing something" do
 before :all do
  Bar.should_recieve(:baz)
  foo = Foo.new
  foo.create_a_Bar_and_call_baz
 end

 it "should call the bar method" do
  # ??? what do i do here?
 end
end
Run Code Online (Sandbox Code Playgroud)

如何在"it"应该"'方法中验证预期的呼叫?我需要使用mocha或其他模拟框架而不是rspec吗?要么 ???

rspec mocking assertions

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

c ++编译时断言

我正在使用一个可能很危险的宏:

#define REMAINDER(v, size) ((v) & (size -1))
Run Code Online (Sandbox Code Playgroud)

显然它假设大小是2的幂.

我想确保大小确实是2的幂,但在编译时.(在运行时测试很容易,但不是我想要的).

对我来说一个充分的测试就是大小总是一个常数(从不变量).

我会用BOOST_STATIC_ASSERT,但我无法弄清楚如何使用它来满足我的需要.

c++ boost assertions

3
推荐指数
2
解决办法
2104
查看次数

C语言:在"assert()"失败后,程序如何继续运行一段时间?

我目前(不要问为什么:P)实现我自己的malloc()和free()版本,并故意在free()的第一行放置一个断言(0)以用于当前的调试目的.

驱动程序正在测试这些malloc()和free()的随机序列,以测试我的实现的正确性.

但是,当我运行驱动程序时,shell会打印出"Assertion'0'失败",继续运行一段时间,然后打印"Aborted".实际上,看起来它甚至可以在报告断言失败之间多次调用malloc(),然后最终报告程序已中止.我确信这是因为我在代码中放置了某些printf语句以打印出某些变量用于调试目的.

我并没有要求任何关于实现malloc()和free()的帮助.只想在程序报告失败后,即使程序似乎继续运行一小段时间(甚至可能调用其他用户定义的函数),也只是想知道什么意思.

c assertions

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

在netbeans中运行时启用断言

我尝试了一个断言示例

它在commandprompt中工作正常.我使用以下命令运行代码.

java -ea AssertionExample 但是在netBeans中运行时没有显示Exception示例描述断言在运行时启用时将起作用所以我们添加ea.

我们如何在netbeans中启用断言?

java netbeans assertions

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

OpenCV的calcOpticalFlowPyrLK抛出异常

我一直试图用OpenCV形成一个小的光流示例.一切正常,除了函数调用calcOpticalFlowPyrLK,它在控制台窗口中打印以下失败的断言:

OpenCV错误:断言失败(mytype == typ0 ||(CV_MAT_CN(mytype)== CV_MAT_CV(type0)&&((1 << type0)&fixedDepthMask)!= 0))在未知函数中,文件......\src\opencv\modules\core\src\matrix.cpp,第1421行

我正在解析的视频分为300个图像,标记为"caml00000.jpeg","caml00001.jpeg",...,"caml00299.jpeg".这是我写的代码:

#include <cv.h>
#include "opencv2/highgui/highgui.hpp"

using namespace cv;
using namespace std;

int main( int argc, char** argv ){

    char buff[100];
    int numFrames=300;
    char fileFormat[]="images/caml%05d.jpeg";

    string winname="Test Window";

    vector<Mat> imgVec(numFrames);

    auto itrImg=begin(imgVec);
    auto itrEnd=end(imgVec);
    vector<Point2f> featuresPrevious;
    vector<Point2f> featuresCurrent;

    namedWindow( winname, CV_WINDOW_AUTOSIZE );
    int fileNum=0;
    while(itrImg!=itrEnd){
        Mat& imgRef=*itrImg; //get this frame's Mat from the vector iterator

        //Calculate the name of the file;
        sprintf(buff,fileFormat,fileNum);
        string fileName=buff;
        //string fileName="kitty.jpg"; //attempted using a static picture as …
Run Code Online (Sandbox Code Playgroud)

c++ opencv assertions opticalflow

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

Z3:检查型号是否唯一

Z3中是否有办法证明/显示给定模型是唯一的,并且不存在其他解决方案?

一个小例子来演示

(declare-const a1 Int)
(declare-const a2 Int)
(declare-const a3 Int)
(declare-const b1 Int)
(declare-const b2 Int)
(declare-const b3 Int)
(declare-const c1 Int)
(declare-const c2 Int)
(declare-const c3 Int)
(declare-const ra Int)
(declare-const rb Int)
(declare-const rc Int)
(declare-const r1 Int)
(declare-const r2 Int)
(declare-const r3 Int)
(assert (>= a1 0))
(assert (>= a2 0))
(assert (>= a3 0))
(assert (>= b1 0))
(assert (>= b2 0))
(assert (>= b3 0))
(assert (>= c1 0))
(assert (>= c2 0))
(assert …
Run Code Online (Sandbox Code Playgroud)

java assertions quantifiers smt z3

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

检查函数中的值单元测试

我想知道如何创建单元测试来检查函数内变量的值?我有下面的代码,仅当变量是我得到的全局变量时才有效,但这不是我想要做的。我只想测试变量在主函数中的值。我该怎么做呢?这是我的代码:

运行代码

def main():
    #Declare Variable Here
    Gold = 4000

def treasure_chest(amount):
    print("I have ",amount," Gold!")
Run Code Online (Sandbox Code Playgroud)

这是我的测试套件

from Functions import main
import unittest

class MyTestCase(unittest.TestCase):
    def test_valueContains(self):
        value =  Gold
        self.assertEquals(4000, value)

if __name__ == '__main__':
    unittest.main()
Run Code Online (Sandbox Code Playgroud)

python unit-testing function assertions

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

.NET断言断言已启用

如何断言在C#中启用断言?

这是Java相关答案的链接,它在C#中不起作用.

这样做的目的是防止使用发布类型的程序集,因为在不考虑效率的情况下我可能会运行所有的断言,因此在某些地方偏好调试类型程序集.

使用Debug.Assert(false)不令人满意,因为它创建了一个对话框并需要用户交互.知道断言在没有"噪音"的情况下工作会很好.Java解决方案是无噪音的.

.net c# assertions

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

Groovy中是否存在肯定的断言消息?

一个消极的Groovy断言与消息,如:

def name = "John"
assert name == "Peter" : "Name should be John"
Run Code Online (Sandbox Code Playgroud)

这给出了输出:

Caught: java.lang.AssertionError: Name should be John. Expression: (name == Peter). Values: name = John
java.lang.AssertionError: Name should be John. Expression: (name == Peter). Values: name = John
Run Code Online (Sandbox Code Playgroud)

但如果声明是true日志中没有信息.因此,当您(或您的同事)稍后检查日志(同事不知道您实施的检查)时,您不知道有哪些断言.

所以我想记录积极的断言.像(添加积极的消息? "Name is " + name):

def name = "Peter"
assert name == "Peter" : "Name should be John" ? "Name is " + name
Run Code Online (Sandbox Code Playgroud)

它存在吗?我知道我可以在断言之后记录消息,例如:log("Assert is correct: Name is …

groovy assertions

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

标签 统计

assertions ×10

.net ×2

c++ ×2

java ×2

boost ×1

c ×1

c# ×1

function ×1

groovy ×1

mocking ×1

netbeans ×1

nunit ×1

opencv ×1

opticalflow ×1

python ×1

quantifiers ×1

rspec ×1

smt ×1

unit-testing ×1

z3 ×1