Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Mengagregatkan Keputusan Liputan Pakej Go?

Bagaimanakah Saya Boleh Mengagregatkan Keputusan Liputan Pakej Go?

DDD
Lepaskan: 2024-12-21 10:44:10
asal
879 orang telah melayarinya

How Can I Aggregate Go Package Coverage Results?

Liputan Pakej Agregat Go

Apabila melaksanakan ujian dalam pustaka Go anda, anda mungkin menghadapi keperluan untuk mendapatkan gambaran keseluruhan liputan yang disatukan untuk semua pakej. Secara lalai, bendera '-cover' hanya menyediakan maklumat liputan untuk setiap pakej secara individu.

Penyelesaian

Sejak Go 1.10, anda boleh menggunakan bendera '-coverpkg' untuk menangani isu ini. Hanya jalankan arahan berikut:

go test -v -coverpkg=./... -coverprofile=profile.cov ./...
Salin selepas log masuk

Selepas menjalankan ujian anda, jana analisis liputan agregat menggunakan:

go tool cover -func profile.cov
Salin selepas log masuk

Kaedah Warisan (Pra-Go 1.10)

Untuk versi Go sebelum 1.10, anda boleh menggunakan bash berikut skrip:

#!/bin/bash

echo 'mode: count' > profile.cov

for dir in $(find . -maxdepth 10 -not -path './.git*' -not -path '*/_*' -type d); do
  if ls $dir/*.go &>/dev/null; then
    go test -short -covermode=count -coverprofile=$dir/profile.tmp $dir
    if [ -f $dir/profile.tmp ]; then
      cat $dir/profile.tmp | tail -n +2 >> profile.cov
      rm $dir/profile.tmp
    fi
  fi
done

go tool cover -func profile.cov
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengagregatkan Keputusan Liputan Pakej Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan