ben*_*enc 2 conditional design-patterns
(背景:从以前的工作,一个同事,我最终会在午餐时讨论错误堆.我们开始开发一个名为"本周的错误"的主题.我怀疑我每年有52个帖子的材料,但是这是第一个......)
报告人:
QA测试人员正在阅读HTML/JS代码以编写Web表单的功能测试,并看到:
if (form_field == empty)
{
...do stuff for empty field
}
else if (form_field != empty)
{
...do stuff for non-empty field
}
else
{
...do stuff that will never be done
}
Run Code Online (Sandbox Code Playgroud)
经过几次尴尬的尝试,测试人员意识到他们无法触发隐藏在第三个区块中的警报字符串.
我想知道的是:
其他几点:
我希望我们能保持积极的态度.想象一下,这是一个与你合作的人(在一家不鼓励燃烧的公司).无论你认为有罪的一方是什么意思,我可能已经考虑过了.
我不是职业编码员.我检查了wiki框,以防有人想提供更文字的例子,或者添加到线程的基础.
[编辑]类似于/sf/ask/8003971/
虽然第三个块不能在Javascript中触发,但在所有语言中都不是这样.在T-SQL中:
declare @test as int
set @test = null
if @test = 1
print 1
else if not @test = 1
print 2
else
print 3
Run Code Online (Sandbox Code Playgroud)
这将打印3,因为NULL既不等于,也不等于任何其他值.