有没有一种方法可以在手动测试中获取PHP代码覆盖率?

3
我们有一个应用程序,服务器是用PHP编写的。
现在我想为手动测试团队获取PHP代码覆盖率,以帮助他们改进工作。 PHP代码覆盖率看起来不错,使用方法如下:
$coverage = new PHP_CodeCoverage;
$coverage->start('<name of test>');

// do the testing

$coverage->stop();

$writer = new PHP_CodeCoverage_Report_Clover;
$writer->process($coverage, '/tmp/clover.xml');

但是,如果一个方法有3个分支,每次我发送请求时,都会有一份报告显示覆盖率为1/3。但我想要的是所有手动测试请求的报告,有没有一种方法可以获得它?或者只需要每个请求一个报告,然后将它们合并即可。
2个回答

1
如果您的测试代码是用PHP编写的,可以将它们编写为单元测试。单元测试有助于更好地组织您的测试,但您也可以定义多个测试套件。因此,如果您有三个不同的测试或三个不同的测试套件,您可以同时运行它们。此外,如果您让它们同时运行,您可以使它们并生成所有测试运行的代码覆盖率
这还与phpStorm集成得非常好,它将在IDE中显示您的覆盖率,并突出显示未被覆盖的行。
但是,如果您不想使用PHPUnit,只想合并多个clover.xml文件,这个问题已经得到了解答

我的要求是获取手动测试的代码覆盖率,测试团队正在使用手机进行测试。因此,单元测试方法似乎无法满足要求。 - Bradley Cheng

0

我们的PHP测试覆盖工具将收集测试覆盖率,无论如何调用。

这意味着您可以使用单元测试、手动方式或任何您认为合适的组合来调用。

您可以通过调用 PHP 外部脚本要求它在任何时候对覆盖范围进行快照。要获取每个手动操作的覆盖范围,请手动运行程序,并在每个手动操作后拍摄快照。每个步骤都会产生单独的测试覆盖数据,您可以单独在 GUI 中显示。显示工具 GUI 还将合并多个覆盖数据文件,以提供这些文件所代表的活动集的覆盖信息。不需要特殊的代码或过程来粘合覆盖文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接