问题标签 [assertions]

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 投票
5 回答
1826 浏览

c++ - “向量”中的这段代码是什么意思?(C++)

我创建了一个程序,它使用vector.h #include和迭代器等......但是当我运行程序时,在某些情况下(我仍在试图弄清楚那些会是什么)我得到一个断言将我引至 vector.h 的第 98 行时出错。我去了vector.h的第98行并得到了这个:

有人可以告诉我这意味着什么以及我的程序中是什么导致了这个断言吗?

注意:记录在案的第 98 行是开始于 "_DEBUG_ERROR("vect..."

注意:这是我认为触发错误的程序中的代码,不过我不完全确定。

代码:

0 投票
1 回答
5052 浏览

collections - 在 NUnit 中断言集合与预期集合的顺序相同

我知道如何检查某个集合是否按某些属性排序:

我如何断言实际按此特定顺序包含元素 (1,2,5,3,4)(无需编写自定义比较器)。

0 投票
5 回答
1777 浏览

c++ - 功能齐全的 C++ 断言对话框?

我正在为 VisualStudio 寻找一个好的、功能齐全的 C++ 断言宏。具有能够一次或总是忽略断言、能够准确中断调用宏的位置(而不是宏代码内部)以及获取堆栈跟踪等功能。

在我不得不蹲下来写一个之前,我想我会问是否有人知道那里有任何可用的。

有什么建议么?

谢谢!

0 投票
7 回答
1104 浏览

c - 有没有比在 C 中使用 #ifdef 更简单的方法?

据我了解,assert 是 C 语言中的一个宏,如果您在编译时使用它但将其禁用,则不会有开销(我不知道这可能不正确)。对我来说,问题是我想做的是将所有变量传递给我的函数并打印出该输出,但前提是我希望启用调试。这是我到目前为止所拥有的:

我想知道是否有任何更简单(且不那么丑陋)的方法来做这样的事情。xdebug for php 有这个功能,我发现它在调试时为我节省了大量时间,所以我想为每个函数都这样做。

谢谢

0 投票
6 回答
4378 浏览

python - 如何在 Perl 中有变量断言?

如何检查变量在 Perl 中是否具有特定值?是否有停止脚本执行以查找其中一些变量的命令?

我想知道我是否可以使用 Pythonic 的插入实践:

以无调试器的方式调试脚本?

0 投票
3 回答
2011 浏览

junit - jUnit中的预期异常?

jUnit 中是否有与 NUnit 的 ExpectedException 或 Assert.Throws<> 等价的东西?

0 投票
1 回答
1389 浏览

visual-studio-2008 - 混合模式 MFC 应用程序在 VS2008 中未正确初始化

我已将混合模式 MFC 应用程序从 VS2005 转换为 VS2008。它正在编译,但是在启动应用程序时,我在 afxwin1.inl 中得到一个断言,因为 afxCurrentResourceHandle = NULL。

这是在调用 MyCWinApp::InitInstance 之前。调用堆栈是

VS2005 中的同一个项目启动良好,我注意到调用 WinMainCRTStarup 而不是 PostDllMain 蜜蜂,它得到一个定义的实例句柄:

该应用程序使用 /clr 编译,并链接到托管、非托管和混合的库和 dll。

任何人都可以对这个问题有所了解吗?VS2005 和 VS2008 在这方面有什么已知的区别吗?

谢谢!

0 投票
19 回答
24026 浏览

c++ - 为什么要使用断言?

我从来没有断言的想法——你为什么要使用它们?

我的意思是,假设我是一名方程式赛车手,所有的断言都是安全带、头盔等。

测试(调试中)一切正常,但现在我们想做赛车(发布)!我们是否应该放弃所有安全性,因为测试时没有问题?

我永远不会删除它们。我认为大多数声称删除类似于断言的东西的人从未分析过他们的代码,或者断言完全被取代了。我从未见过任何真正的性能优势,尤其是关于 80 / 20 规则。

那么,我是否以某种方式错过了重点,或者有人可以告诉我,为什么我应该使用断言?顺便说一句,我正在使用单元测试。

0 投票
5 回答
51003 浏览

c++ - 调试断言失败!表达式:_BLOCK_TYPE_IS_VALID

我收到此错误消息:

调试断言失败!

表达式:_BLOCK_TYPE_US_VALID(pHead->nBlockUse)

在尝试执行以下操作时

该错误似乎与排序功能有关。我检查了 nets 向量的所有实例,它们似乎没问题,具有不同的 sse。有趣的是,我为上面的代码创建了一个更简单的例子(见下文),它没有任何错误。我正在破坏我的大脑。请帮忙。

0 投票
5 回答
8350 浏览

c++ - 断言和单元测试不兼容吗?

我对测试一些包含来自assert.h的 assert 宏的函数有一些担忧。

如果断言失败,则测试也失败。这给我留下了一些永远不会工作的测试用例。

例如,一个函数而不是指示失败(返回 false 或类似的东西)断言。

是否有解决方案(包含断言的单元测试函数)?