In general, as an assertion is used to test a condition only when all of the following hold:
•the condition should never be false if the code is correct,
•the condition is not so trivial so as to obviously be always true, and
•the condition is in some sense internal to a body of software
an “assertion failure” is said to occur when an assertion detects that its condition is false and takes appropriate action, such as throwing an exception ..
Since this is exactly what an assertion is supposed to do, the term “assertion failure” is something of a misnomer ..
Nevertheless, the term is standard and is useful because it provides a name for an important situation ..
...