mirror of
https://github.com/httprunner/httprunner.git
synced 2026-05-16 10:17:35 +08:00
162 lines
2.6 KiB
Go
162 lines
2.6 KiB
Go
//go:build localtest
|
|
|
|
package gidevice
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestPerfSystemMonitor(t *testing.T) {
|
|
setupLockdownSrv(t)
|
|
|
|
data, err := dev.PerfStart(
|
|
WithPerfSystemCPU(true),
|
|
WithPerfSystemMem(true),
|
|
WithPerfSystemDisk(true),
|
|
WithPerfSystemNetwork(true),
|
|
WithPerfOutputInterval(1000),
|
|
)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
timer := time.NewTimer(time.Duration(time.Second * 10))
|
|
for {
|
|
select {
|
|
case <-timer.C:
|
|
dev.PerfStop()
|
|
return
|
|
case d := <-data:
|
|
fmt.Println(string(d))
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestPerfProcessMonitor(t *testing.T) {
|
|
setupLockdownSrv(t)
|
|
|
|
data, err := dev.PerfStart(
|
|
WithPerfProcessAttributes("cpuUsage", "memAnon"),
|
|
WithPerfOutputInterval(1000),
|
|
WithPerfPID(100),
|
|
WithPerfBundleID("com.apple.mobilesafari"), // higher priority than pid
|
|
)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
timer := time.NewTimer(time.Duration(time.Second * 10))
|
|
for {
|
|
select {
|
|
case <-timer.C:
|
|
dev.PerfStop()
|
|
return
|
|
case d := <-data:
|
|
fmt.Println(string(d))
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestPerfGPU(t *testing.T) {
|
|
setupLockdownSrv(t)
|
|
|
|
data, err := dev.PerfStart(
|
|
WithPerfSystemCPU(false),
|
|
WithPerfSystemMem(false),
|
|
WithPerfGPU(true),
|
|
)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
timer := time.NewTimer(time.Duration(time.Second * 10))
|
|
for {
|
|
select {
|
|
case <-timer.C:
|
|
dev.PerfStop()
|
|
return
|
|
case d := <-data:
|
|
fmt.Println(string(d))
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestPerfFPS(t *testing.T) {
|
|
setupLockdownSrv(t)
|
|
|
|
data, err := dev.PerfStart(
|
|
WithPerfSystemCPU(false),
|
|
WithPerfSystemMem(false),
|
|
WithPerfFPS(true),
|
|
)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
timer := time.NewTimer(time.Duration(time.Second * 10))
|
|
for {
|
|
select {
|
|
case <-timer.C:
|
|
dev.PerfStop()
|
|
return
|
|
case d := <-data:
|
|
fmt.Println(string(d))
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestPerfNetwork(t *testing.T) {
|
|
setupLockdownSrv(t)
|
|
|
|
data, err := dev.PerfStart(
|
|
WithPerfSystemCPU(false),
|
|
WithPerfSystemMem(false),
|
|
WithPerfNetwork(true),
|
|
)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
timer := time.NewTimer(time.Duration(time.Second * 10))
|
|
for {
|
|
select {
|
|
case <-timer.C:
|
|
dev.PerfStop()
|
|
return
|
|
case d := <-data:
|
|
fmt.Println(string(d))
|
|
}
|
|
}
|
|
}
|
|
|
|
func TestPerfAll(t *testing.T) {
|
|
setupLockdownSrv(t)
|
|
|
|
data, err := dev.PerfStart(
|
|
WithPerfSystemCPU(true),
|
|
WithPerfSystemMem(true),
|
|
WithPerfSystemDisk(true),
|
|
WithPerfSystemNetwork(true),
|
|
WithPerfNetwork(true),
|
|
WithPerfFPS(true),
|
|
WithPerfGPU(true),
|
|
WithPerfBundleID("com.apple.mobilesafari"),
|
|
)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
timer := time.NewTimer(time.Duration(time.Second * 10))
|
|
for {
|
|
select {
|
|
case <-timer.C:
|
|
dev.PerfStop()
|
|
return
|
|
case d := <-data:
|
|
fmt.Println(string(d))
|
|
}
|
|
}
|
|
}
|