mirror of
https://github.com/httprunner/httprunner.git
synced 2026-05-13 08:59:44 +08:00
refactor: enter live
This commit is contained in:
@@ -1,15 +1,35 @@
|
||||
# World Cup Live
|
||||
|
||||
```bash
|
||||
$ wcl -n "法国vs丹麦" --android com.ss.android.ugc.aweme -d 120
|
||||
```text
|
||||
$ wcl -h
|
||||
Monitor FIFA World Cup Live
|
||||
|
||||
Usage:
|
||||
wcl [flags]
|
||||
|
||||
Flags:
|
||||
--android string run android app
|
||||
-d, --duration int set duration in seconds (default 30)
|
||||
-h, --help help for wcl
|
||||
-i, --interval int set interval in seconds (default 15)
|
||||
--ios string run ios app
|
||||
-l, --log-level string set log level (default "INFO")
|
||||
-n, --match-name string specify match name
|
||||
-p, --perf strings specify performance monitor, e.g. sys_cpu,sys_mem,sys_net,sys_disk,fps,network,gpu
|
||||
-u, --uuid string specify device serial or udid
|
||||
-v, --version version for wcl
|
||||
```
|
||||
|
||||
|
||||
抖音:
|
||||
```bash
|
||||
$ wcl -n "法国vs丹麦" --android com.ss.android.ugc.aweme -d 300 -i 15 -u caf0cd51
|
||||
$ wcl -n "比利时vs摩洛哥" --ios com.ss.iphone.ugc.Aweme -d 300 -i 15 -p sys_cpu,sys_mem,sys_disk,sys_net,fps,network,gpu -u 00008030-000438191421802E
|
||||
```
|
||||
|
||||
- com.ss.iphone.ugc.Aweme
|
||||
- com.ss.android.ugc.aweme
|
||||
## bundle id
|
||||
|
||||
央视频:
|
||||
|
||||
咪咕视频:
|
||||
| app | iOS | Android |
|
||||
| -- | -- | -- |
|
||||
| 抖音 | com.ss.iphone.ugc.Aweme | com.ss.android.ugc.aweme |
|
||||
| 央视频 | com.cctv.yangshipin.app.iphone | com.cctv.yangshipin.app.androidp |
|
||||
| 咪咕视频 | com.wondertek.hecmccmobile | com.cmcc.cmvideo |
|
||||
|
||||
@@ -15,7 +15,7 @@ import (
|
||||
var rootCmd = &cobra.Command{
|
||||
Use: "wcl",
|
||||
Short: "Monitor FIFA World Cup Live",
|
||||
Version: "0.1",
|
||||
Version: "2022.11.27.2240",
|
||||
PreRun: func(cmd *cobra.Command, args []string) {
|
||||
log.Logger = zerolog.New(
|
||||
zerolog.ConsoleWriter{NoColor: false, Out: os.Stderr},
|
||||
@@ -28,11 +28,11 @@ var rootCmd = &cobra.Command{
|
||||
var bundleID string
|
||||
if iosApp != "" {
|
||||
log.Info().Str("bundleID", iosApp).Msg("init ios device")
|
||||
device = initIOSDevice()
|
||||
device = initIOSDevice(uuid)
|
||||
bundleID = iosApp
|
||||
} else if androidApp != "" {
|
||||
log.Info().Str("bundleID", androidApp).Msg("init android device")
|
||||
device = initAndroidDevice()
|
||||
device = initAndroidDevice(uuid)
|
||||
bundleID = androidApp
|
||||
} else {
|
||||
return errors.New("android or ios app bundldID is required")
|
||||
|
||||
@@ -36,7 +36,7 @@ func convertTimeToSeconds(timeStr string) (int, error) {
|
||||
return seconds, nil
|
||||
}
|
||||
|
||||
func initIOSDevice() uixt.Device {
|
||||
func initIOSDevice(uuid string) uixt.Device {
|
||||
perfOptions := []gidevice.PerfOption{}
|
||||
for _, p := range perf {
|
||||
switch p {
|
||||
@@ -69,7 +69,7 @@ func initIOSDevice() uixt.Device {
|
||||
return device
|
||||
}
|
||||
|
||||
func initAndroidDevice() uixt.Device {
|
||||
func initAndroidDevice(uuid string) uixt.Device {
|
||||
device, err := uixt.NewAndroidDevice(uixt.WithSerialNumber(uuid))
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msg("failed to init android device")
|
||||
@@ -204,21 +204,12 @@ func (wc *WorldCupLive) EnterLive(bundleID string) error {
|
||||
_ = wc.driver.TapAbsXY(points[1].X, points[1].Y)
|
||||
}
|
||||
|
||||
// 点击进入搜索
|
||||
err = wc.driver.TapXY(0.9, 0.07)
|
||||
if err != nil {
|
||||
log.Error().Err(err).Msg("enter search failed")
|
||||
// 进入世界杯 tab
|
||||
if err = wc.driver.TapByOCR("世界杯"); err != nil {
|
||||
log.Error().Err(err).Msg("enter 直播中 failed")
|
||||
return err
|
||||
}
|
||||
|
||||
// 搜索世界杯
|
||||
_ = wc.driver.Input("世界杯")
|
||||
err = wc.driver.TapByOCR("搜索")
|
||||
if err != nil {
|
||||
log.Error().Err(err).Msg("search 世界杯 failed")
|
||||
return err
|
||||
}
|
||||
time.Sleep(2 * time.Second)
|
||||
time.Sleep(3 * time.Second)
|
||||
|
||||
// 进入世界杯直播
|
||||
if err = wc.driver.TapByOCR("直播中"); err != nil {
|
||||
|
||||
@@ -23,14 +23,14 @@ func TestConvertTimeToSeconds(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestMainIOS(t *testing.T) {
|
||||
device := initIOSDevice()
|
||||
device := initIOSDevice(uuid)
|
||||
wc := NewWorldCupLive(device, "", "com.ss.iphone.ugc.Aweme", 30, 10)
|
||||
wc.Start()
|
||||
wc.DumpResult()
|
||||
}
|
||||
|
||||
func TestMainAndroid(t *testing.T) {
|
||||
device := initAndroidDevice()
|
||||
device := initAndroidDevice(uuid)
|
||||
wc := NewWorldCupLive(device, "", "com.ss.android.ugc.aweme", 30, 10)
|
||||
wc.Start()
|
||||
wc.DumpResult()
|
||||
|
||||
Reference in New Issue
Block a user