Экспорт покрытия Parse Chrome 73 - PullRequest
0 голосов
/ 03 апреля 2019

В Chrome 73 появилась долгожданная возможность экспортировать (CSS / JS) данные покрытия кода. Кто-нибудь смотрел на разбор результирующих файлов JSON для создания оптимизированных таблиц стилей / скриптов?

1 Ответ

1 голос
/ 07 апреля 2019

Вот решение в PHP

<?php
$json_string = 'Coverage-20190407T072310.json';
$jsondata = file_get_contents($json_string);
$obj = json_decode($jsondata,true);
$output_css = '';

foreach( $obj as $arr ) {
    if( strpos( $arr['url'],"css" ) ) {

        foreach ($arr['ranges'] as $name => $value) {
            $length = $value['end'] - $value['start'];
            $output_css .= substr($arr['text'], $value['start'], $length) . PHP_EOL;
        }

        break;
    }
}

echo $output_css;
$file = 'coverage.css';
file_put_contents($file, $output_css);

?>

Попробовал это на WordPress style.css, и он сохранил около 300 КБ из таблицы стилей 314 КБ. Хотя это и не идеально для динамически генерируемых стилей, это хорошее начало.

...