为什么代码覆盖要我覆盖定义变量?
why codecoverage want me to cover define variable?
晚上好,我正在为 symfony 创建一个包。我为我的方法创建了单元测试并生成了测试覆盖率报告(通过 travis ci 然后发送到 codecov.io)。我还有一部分代码没有涉及到,即常量(define):
codecov.io
我尝试添加代码覆盖忽略指令或添加 getter 并测试这些 getter 的 return,但结果始终相同。我不明白为什么报告要求我测试在 principle 中不必测试的常量变量。预先感谢您的帮助
@codeCoverageIgnore
可用于 类、方法和单个语句。如果要排除块,请使用 @codeCoverageIgnoreStart
和 @codeCoverageIgnoreEnd
:
// @codeCoverageIgnoreStart
define('A', 'B');
define('C', 'D');
// @codeCoverageIgnoreEnd
或者,将每个语句标记为忽略:
define('A', 'B'); // @codeCoverageIgnore
define('C', 'D'); // @codeCoverageIgnore
代码覆盖率报告不知道你是否必须测试某些东西。它只是报告在 运行 测试期间执行了哪些代码。你应该把它作为寻找你错过的地方的指南。仅仅因为有些线是红色的并不意味着你必须测试它们。仅仅因为线条是绿色并不意味着您已经涵盖了所有相关案例。
晚上好,我正在为 symfony 创建一个包。我为我的方法创建了单元测试并生成了测试覆盖率报告(通过 travis ci 然后发送到 codecov.io)。我还有一部分代码没有涉及到,即常量(define):
codecov.io
我尝试添加代码覆盖忽略指令或添加 getter 并测试这些 getter 的 return,但结果始终相同。我不明白为什么报告要求我测试在 principle 中不必测试的常量变量。预先感谢您的帮助
@codeCoverageIgnore
可用于 类、方法和单个语句。如果要排除块,请使用 @codeCoverageIgnoreStart
和 @codeCoverageIgnoreEnd
:
// @codeCoverageIgnoreStart
define('A', 'B');
define('C', 'D');
// @codeCoverageIgnoreEnd
或者,将每个语句标记为忽略:
define('A', 'B'); // @codeCoverageIgnore
define('C', 'D'); // @codeCoverageIgnore
代码覆盖率报告不知道你是否必须测试某些东西。它只是报告在 运行 测试期间执行了哪些代码。你应该把它作为寻找你错过的地方的指南。仅仅因为有些线是红色的并不意味着你必须测试它们。仅仅因为线条是绿色并不意味着您已经涵盖了所有相关案例。