Bagikan melalui


Laporan sampel durasi pengujian

Layanan Azure DevOps | Azure DevOps Server 2022 | Azure DevOps Server 2020

Laporan durasi pengujian, mirip dengan yang ditunjukkan pada gambar berikut, memberikan wawasan tentang berapa kali pengujian dijalankan dan waktu rata-rata yang diperlukan untuk pengujian tertentu untuk dijalankan selama eksekusi alur.

Cuplikan layar laporan Tabel Durasi Pengujian.

Gunakan kueri yang disediakan dalam artikel ini untuk menghasilkan laporan berikut:

  • Durasi pengujian untuk alur kerja build
  • Durasi pengujian untuk alur kerja rilis
  • Durasi pengujian untuk cabang tertentu
  • Durasi pengujian untuk file pengujian tertentu
  • Durasi pengujian untuk pemilik pengujian tertentu

Penting

Integrasi dan akses Power BI ke umpan OData Dari Layanan Analitik umumnya tersedia untuk Azure DevOps Services dan Azure DevOps Server 2020 dan versi yang lebih baru. Kueri sampel yang disediakan dalam artikel ini hanya valid terhadap Azure DevOps Server 2020 dan versi yang lebih baru, dan bergantung pada pratinjau v3.0 atau versi yang lebih baru. Kami mendorong Anda untuk menggunakan kueri ini dan memberi kami umpan balik.

Prasyarat

  • Akses: Menjadi anggota proyek dengan setidaknya akses Dasar .
  • Izin: Secara default, anggota proyek memiliki izin untuk mengkueri Analitik dan membuat tampilan.
  • Untuk informasi selengkapnya tentang prasyarat lain mengenai pengaktifan layanan dan fitur serta aktivitas pelacakan data umum, lihat Izin dan prasyarat untuk mengakses Analitik.

Catatan

Artikel ini mengasumsikan Anda membaca Gambaran Umum Laporan Sampel menggunakan Kueri OData dan memiliki pemahaman dasar tentang Power BI.

Contoh kueri

Anda dapat menggunakan kueri berikut dari TestResultsDaily kumpulan entitas untuk membuat laporan durasi pengujian yang berbeda tetapi serupa. Kumpulan TestResultsDaily entitas menyediakan agregat rekam jepret harian TestResult eksekusi, yang dikelompokkan menurut pengujian.

Catatan

Untuk menentukan properti yang tersedia untuk tujuan filter atau laporan, lihat Referensi metadata untuk Analitik Paket Pengujian dan referensi Metadata untuk Azure Pipelines. Anda dapat memfilter kueri atau mengembalikan properti menggunakan salah satu nilai di Property bawah nilai atau NavigationPropertyBinding Path yang EntityType tersedia dengan EntitySet. Masing-masing EntitySet sesuai dengan EntityType. Untuk informasi selengkapnya tentang jenis data dari setiap nilai, tinjau metadata yang disediakan untuk yang sesuai EntityType.

Durasi pengujian untuk alur kerja Build

Gunakan kueri berikut untuk melihat laporan durasi pengujian untuk alur dengan alur kerja Build .

Salin dan tempel kueri Power BI berikut ini langsung ke jendela Dapatkan Kueri Kosong Data>. Untuk informasi selengkapnya, lihat Gambaran umum laporan sampel menggunakan kueri OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And Date/Date ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(TestSK, Test/TestName),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Durasi pengujian untuk alur kerja Rilis

Gunakan kueri berikut untuk melihat laporan durasi pengujian untuk alur dengan alur kerja Rilis .

Salin dan tempel kueri Power BI berikut ini langsung ke jendela Dapatkan Kueri Kosong Data>. Untuk informasi selengkapnya, lihat Gambaran umum laporan sampel menggunakan kueri OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And Date/Date ge {startdate}"
      &")/groupby("
      &"(TestSK, Test/TestName, Workflow),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Durasi pengujian difilter menurut cabang

Untuk melihat durasi pengujian alur untuk cabang tertentu, gunakan kueri berikut. Untuk membuat laporan, lakukan langkah-langkah tambahan berikut bersama dengan apa yang ditentukan nanti dalam artikel ini.

  • Perluas Branch ke Branch.BranchName
  • Pilih Pemotong Visualisasi Power BI dan tambahkan bidang Branch.BranchName ke Bidang pemotong
  • Pilih nama cabang dari pemotong yang perlu Anda lihat ringkasan hasilnya.

Untuk informasi selengkapnya tentang menggunakan pemotong, lihat Pemotong di Power BI.

Salin dan tempel kueri Power BI berikut ini langsung ke jendela Dapatkan Kueri Kosong Data>. Untuk informasi selengkapnya, lihat Gambaran umum laporan sampel menggunakan kueri OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And Date/Date ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(TestSK, Test/TestName, Branch/BranchName),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Durasi pengujian difilter menurut file pengujian

Untuk melihat durasi pengujian alur untuk pengujian yang dimiliki oleh pemilik pengujian tertentu, gunakan kueri berikut. Untuk membuat laporan, lakukan langkah tambahan berikut bersama dengan apa yang didefinisikan nanti dalam artikel ini.

  • Perluas Test ke Test.ContainerName
  • Pilih Pemotong Visualisasi Power BI dan tambahkan bidang Test.ContainerName ke Bidang pemotong
  • Pilih file pengujian dari pemotong yang perlu Anda lihat ringkasan hasilnya.

Salin dan tempel kueri Power BI berikut ini langsung ke jendela Dapatkan Kueri Kosong Data>. Untuk informasi selengkapnya, lihat Gambaran umum laporan sampel menggunakan kueri OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And Date/Date ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(TestSK, Test/TestName, Test/ContainerName),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Durasi pengujian difilter oleh pemilik pengujian

Untuk melihat durasi pengujian alur untuk pengujian yang dimiliki oleh pemilik pengujian tertentu, gunakan kueri berikut. Untuk membuat laporan, lakukan langkah tambahan berikut bersama dengan apa yang didefinisikan nanti dalam artikel ini.

  • Perluas Test ke Test.TestOwner
  • Pilih Pemotong Visualisasi Power BI dan tambahkan bidang Test.TestOwner ke Bidang pemotong
  • Pilih pemilik pengujian dari pemotong tempat Anda perlu melihat ringkasan hasilnya.

Salin dan tempel kueri Power BI berikut ini langsung ke jendela Dapatkan Kueri Kosong Data>. Untuk informasi selengkapnya, lihat Gambaran umum laporan sampel menggunakan kueri OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And Date/Date ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(TestSK, Test/TestName, Test/TestOwner),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

String substitusi dan perincian kueri

Ganti string berikut dengan nilai Anda. Jangan sertakan {} tanda kurung dengan pengganti Anda. Misalnya jika nama organisasi Anda adalah "Fabrikam", ganti {organization} dengan Fabrikam, bukan {Fabrikam}.

  • {organization} - Nama organisasi Anda.
  • {project} - Nama proyek tim Anda.
  • {pipelinename} - Nama alur Anda. Contoh: Fabrikam hourly build pipeline.
  • {startdate} - Tanggal untuk memulai laporan Anda. Format: YYYY-MM-DDZ. Contoh: 2021-09-01Z mewakili 1 September 2021. Jangan sertakan dalam tanda kutip atau tanda kurung siku dan gunakan dua digit untuk, bulan dan tanggal.

Perincian kueri

Tabel berikut ini menjelaskan setiap bagian kueri.

Bagian kueri

Keterangan


$apply=filter(

Mulai filter() klausa.

Pipeline/PipelineName eq '{pipelineName}'

Mengembalikan eksekusi pengujian untuk alur bernama.

And Date/Date ge {startdate}

Mengembalikan eksekusi pengujian pada atau setelah tanggal yang ditentukan.

and Workflow eq 'Build'

Mengembalikan eksekusi pengujian untuk Build alur kerja.

)

Tutup filter() klausa.

/groupby(

Mulai groupby() klausa.

(TestSK, Test/TestName),

Kelompokkan menurut nama pengujian.

aggregate(

Mulai aggregate klausa untuk menjumlahkan hasil eksekusi pengujian yang berbeda yang cocok dengan kriteria filter.

ResultCount with sum as TotalCount,

Hitung jumlah total eksekusi pengujian sebagai TotalCount.

ResultDurationSeconds with sum as TotalDuration

Jumlah total durasi semua eksekusi sebagai TotalDuration.

))

Tutup aggregate() dan groupby() klausa.

/compute(

Mulai compute() klausa.

TotalDuration div TotalCount as AvgDuration

Untuk semua pengujian, hitung durasi rata-rata dengan membagi total durasi dengan jumlah total eksekusi.

)

Tutup compute() klausa.

(Opsional) Mengganti nama kueri

Anda bisa mengganti nama label kueri default, Query1, menjadi sesuatu yang lebih bermakna. Cukup masukkan nama baru dari panel Pengaturan Kueri.

Cuplikan layar opsi menu kueri Power BI, ganti nama kueri.

Memperluas kolom Uji di Power BI

Test Perluas kolom untuk memperlihatkan entitas Test.TestNameyang diperluas . Memperluas kolom meratakan rekaman ke dalam bidang tertentu. Untuk mempelajari caranya, lihat Mengubah data Analitik untuk menghasilkan laporan Power BI, Memperluas kolom.

Mengubah tipe data kolom

  1. Dari Editor Power Query, pilih TotalCount kolom; pilih Jenis Data dari menu Transformasi; lalu pilih Bilangan Bujur.

  2. TotalDuration Pilih kolom dan AvgDuration ; pilih Jenis Data dari menu Transformasi; lalu pilih Nomor Desimal.

Untuk informasi selengkapnya tentang mengubah jenis data, lihat Mengubah data Analitik untuk menghasilkan laporan Power BI, Mengubah jenis data kolom.

Tutup kueri dan terapkan perubahan Anda

Setelah Anda menyelesaikan semua transformasi data, pilih Tutup & Terapkan dari menu Beranda untuk menyimpan kueri dan kembali ke tab Laporan di Power BI.

Cuplikan layar opsi Editor Power Query Tutup dan Terapkan.

Membuat laporan Tabel

  1. Di Power BI, di bawah Visualisasi, pilih **Tabel, dan seret dan letakkan bidang ke area Kolom .

    Cuplikan layar pilihan bidang visualisasi untuk laporan tabel Durasi Pengujian.

  2. Tambahkan bidang berikut ke bagian Kolom dalam urutan yang tercantum.

    • Test.TestName
    • TotalCount
    • AvgDuration
  3. Pilih kanan AvgDuration dan pilih Rata-rata , bukan Jumlah.

Laporan Anda akan terlihat mirip dengan gambar berikut.

Cuplikan layar sampel laporan Tabel Durasi Pengujian.