<p>3.2.5保证测试原子性如果测试混在一起,可以会发生改通过的测试失败了,而该失败的测试却成功了。这是前面测试的副作用导致当前测试失败造成的。运行时第一个断言能通过,但是第二个失败,因为第一个断言之后,#qunit-fixture元素的innerHTML为”内容1”了,第2次执行appendContent()方法后,内容是”内容1内容2”,而不是”内容2”。可以采用test()方法保持测试的原子性,保持每个断言不受到影响。应该对#qunit-fixture元素有依赖,修改和依赖任何其他东西会带来副作用。这样拆分之后,两个测试都能顺利通过。因为QUnit会在每个测试之后重置在#qunit-fixture中的元素,移除事件。只要使用这个元素中进行元素操作,就不用在测试之后手动的清除来保证原子性。除此之外,QUnit还提供了?noglobals标志。通常的测试中,测试是一个合法的结果,测试就应该通过。上面也如此,但是如果加上“?noglobals”标志,测试就会失败,因为QUnit可以探测到它污染了window对象(测试结束后window对象多了一个属性pollute)。未完待续www.起航劳务派遣系统.com免费劳务派遣系统软件系统提供</p>