官术网_书友最值得收藏!

Checking for null or not

There is a school of thought that checking for null in tests is redundant and can be removed all together. In other words, the second-to-last test we wrote would become this:

it('renders a label for the first name field', () => {
render();
expect(labelFor('firstName').textContent).toEqual('First name');
});

In the original test, the first not null expectation is a guard expectation. The test will still function even without this line, since the second expectation will throw an exception if the value of label is null.

The run-time difference between the two variants of the test is subtle. The original test will fail with a test failure, not an exception. In this second version, your test will fail with an exception, not a test failure.

In some languages and test environments, exceptions can be more painful than test failures. Ultimately, which style you choose is a matter of personal preference. In this book, I'll continue to use guard expectations for completeness, but I'd encourage you to experiment with both styles.

主站蜘蛛池模板: 韶山市| 宣武区| 石林| 平定县| 赣榆县| 南平市| 中山市| 吉林省| 额尔古纳市| 清新县| 响水县| 丹阳市| 彰化县| 天柱县| 淮南市| 永德县| 双城市| 美姑县| 万载县| 永寿县| 新干县| 玛多县| 汝南县| 甘洛县| 岳阳县| 汨罗市| 广灵县| 合水县| 桃园县| 常宁市| 浑源县| 平江县| 东乡| 宝兴县| 米脂县| 武汉市| 泽库县| 济阳县| 合山市| 昂仁县| 沙河市|