国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

新手如何用Airtest實(shí)現(xiàn)在圖片范圍內(nèi)隨機(jī)點(diǎn)擊?

這篇具有很好參考價(jià)值的文章主要介紹了新手如何用Airtest實(shí)現(xiàn)在圖片范圍內(nèi)隨機(jī)點(diǎn)擊?。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

此文章來(lái)源于項(xiàng)目官方公眾號(hào):“AirtestProject”
版權(quán)聲明:允許轉(zhuǎn)載,但轉(zhuǎn)載必須保留原鏈接;請(qǐng)勿用作商業(yè)或者非法用途

1. 前言

前幾天有個(gè)新手同學(xué)在Airtest官群里問(wèn)了這樣一個(gè)問(wèn)題:

我是新手,在圖片范圍內(nèi)隨機(jī)點(diǎn)擊 ,用Airtest怎么實(shí)現(xiàn)?代碼?

那我們就以這個(gè)問(wèn)題為例,淺淺聊一下,怎么把需求轉(zhuǎn)化成我們的Airtest代碼。

2. 了解Airtest

首先新手同學(xué)對(duì)Airtest要有以下幾點(diǎn)認(rèn)知:

  • ① Airtest是一個(gè)圖像識(shí)別框架,它能在屏幕上用圖像識(shí)別來(lái)找到想操作的位置并點(diǎn)擊,所以Airtest本質(zhì)上點(diǎn)擊的是目標(biāo)圖片的坐標(biāo),默認(rèn)是中心點(diǎn)
  • ② Airtest是python第三方庫(kù),除了Airtest本身的接口之外,我們隨時(shí)可以import python的標(biāo)準(zhǔn)庫(kù)或者其它第三方庫(kù),一起使用

3. 分析需求,轉(zhuǎn)化成代碼

1)查文檔,找現(xiàn)成方法

有了以上2點(diǎn)認(rèn)知后,我們?cè)倩氐叫枨?,“在圖片范圍內(nèi)隨機(jī)點(diǎn)擊”,第一步我們要做的就是查詢官方教程文檔,看下有沒(méi)有現(xiàn)成的方法可以使用:

  • ① 一般情況下,Airtest都是點(diǎn)擊圖片中心位置,不知道有沒(méi)有點(diǎn)擊圖片內(nèi)其它坐標(biāo)的方法
  • ② 隨機(jī)點(diǎn)擊,怎么實(shí)現(xiàn)在圖片內(nèi)隨機(jī)點(diǎn)擊這個(gè)行為,不知道Airtest有沒(méi)有隨機(jī)點(diǎn)的方法

當(dāng)我們查閱Airtest的教程文檔之后,發(fā)現(xiàn)Airtest確實(shí)提供了點(diǎn)擊圖片內(nèi)非中心坐標(biāo)的方法,就是指定target_pos,但是只能點(diǎn)擊圖片內(nèi)的9個(gè)點(diǎn):

新手如何用Airtest實(shí)現(xiàn)在圖片范圍內(nèi)隨機(jī)點(diǎn)擊?

這里似乎并不太符合在圖片范圍內(nèi)隨機(jī)點(diǎn)的需求。隨后我們又查詢了文檔,發(fā)現(xiàn)Airtest也沒(méi)有提供隨機(jī)點(diǎn)擊的方法。

2)分析需求,自己實(shí)現(xiàn)

那么我們到這里就需要進(jìn)入到第二步,分析需求,看看需求都有哪些難點(diǎn)需要我們實(shí)現(xiàn):

  • ① 在圖片范圍內(nèi)點(diǎn)擊,那意味著在整個(gè)圖片的坐標(biāo)范圍內(nèi)點(diǎn)擊,那我們?cè)趺茨玫秸麄€(gè)圖片的坐標(biāo)范圍?
  • ② 怎么點(diǎn)擊一個(gè)隨機(jī)的坐標(biāo)?

針對(duì)第一個(gè)難點(diǎn),其實(shí)我們分別拿到目標(biāo)圖片x、y坐標(biāo)的最小、最大值,就能確認(rèn)坐標(biāo)范圍了。

再進(jìn)一步思考,一張圖片x最小值是圖片的最左側(cè),最大值是圖片最右側(cè);y最小值是圖片最上方,最大值是圖片最下方;那就意味著,我們只要拿到圖片左上角和右下角的坐標(biāo),就能完全確認(rèn)目標(biāo)圖片x、y坐標(biāo)的最小、最大值,進(jìn)而確認(rèn)圖片坐標(biāo)范圍。

第一個(gè)難點(diǎn)解決后,再來(lái)看第二個(gè)難點(diǎn),隨機(jī)點(diǎn),這里就要借助python的標(biāo)準(zhǔn)庫(kù)random了,能幫助我們生成一個(gè)隨機(jī)數(shù)的函數(shù)。

3)將思考轉(zhuǎn)化成代碼

最后一步就是將我們剛才分析需求,得到的思路,轉(zhuǎn)化成代碼:
新手如何用Airtest實(shí)現(xiàn)在圖片范圍內(nèi)隨機(jī)點(diǎn)擊?

# -*- encoding=utf8 -*-
__author__ = "AirtestProject"

from airtest.core.api import *
import random

auto_setup(__file__)

# 定義函數(shù),得到目標(biāo)圖片的坐標(biāo)范圍
def pos_range():
    if exists(Template(r"tpl1697515204054.png", target_pos=1, record_pos=(-0.16, 0.154), resolution=(2960, 1440))):
        up_pos = exists(Template(r"tpl1697515204054.png", target_pos=1, record_pos=(-0.16, 0.154), resolution=(2960, 1440))) # 利用target_pos=0,拿到目標(biāo)圖片左上角的坐標(biāo)
        down_pos = exists(Template(r"tpl1697515204054.png", target_pos=9, record_pos=(-0.16, 0.154), resolution=(2960, 1440))) # 利用target_pos=9,拿到目標(biāo)圖片右下角的坐標(biāo)
        x = (int(up_pos[0]),int(down_pos[0])) # 拿到圖片x坐標(biāo)的范圍
        y = (int(up_pos[1]),int(down_pos[1])) # 拿到圖片y坐標(biāo)的范圍
        return x,y
    else:
        print("目標(biāo)圖片不存在")

# 分別拿到圖片x坐標(biāo)與y坐標(biāo)的范圍值
pos_r = pos_range()
x = pos_r[0]
y = pos_r[1]

# 在x、y的坐標(biāo)范圍內(nèi)生成隨機(jī)數(shù)
x_range = random.randint(x[0],x[1])
y_range = random.randint(y[0],y[1])

# 點(diǎn)擊圖片范圍內(nèi)任意坐標(biāo)
touch([x_range,y_range])

4. 小結(jié)

最后,希望新手同學(xué)想要用Airtest動(dòng)手實(shí)現(xiàn)一個(gè)需求的時(shí)候,別忘了以下幾個(gè)步驟:

  • 查詢官方教程文檔,看看有沒(méi)有現(xiàn)成的方法可以使用
  • 分析需求,拆解其中的難點(diǎn)逐一突破,找到解題思路
  • 動(dòng)手編寫(xiě)腳本、調(diào)試、優(yōu)化

這里附上我們官方教程文檔的網(wǎng)址,歡迎同學(xué)們查閱哦:https://airtest.doc.io.netease.com/ 。

AirtestIDE下載:airtest.netease.com/
Airtest 教程官網(wǎng):airtest.doc.io.netease.com/
搭建企業(yè)私有云服務(wù):airlab.163.com/b2b

官方答疑 Q 群:117973773文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-710876.html

到了這里,關(guān)于新手如何用Airtest實(shí)現(xiàn)在圖片范圍內(nèi)隨機(jī)點(diǎn)擊?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • HTML實(shí)現(xiàn)圖片點(diǎn)擊放大效果

    1.樣式 2.圖片和遮罩層 3.效果實(shí)現(xiàn)代碼

    2024年02月11日
    瀏覽(21)
  • 用JS實(shí)現(xiàn)點(diǎn)擊按鈕切換圖片

    用JS實(shí)現(xiàn)點(diǎn)擊按鈕切換圖片

    啥也不說(shuō),上代碼 效果:

    2024年02月11日
    瀏覽(73)
  • 帝國(guó)CMS會(huì)員頭像圖片隨機(jī)調(diào)用的實(shí)現(xiàn)方法

    前些時(shí)檢測(cè)服務(wù)器發(fā)現(xiàn)安全狗掃出了網(wǎng)站圖片附件中有提示后門(mén)的圖片,檢查發(fā)現(xiàn)是用戶上傳的頭像圖片。不知道是不是誤報(bào),但確實(shí)有這個(gè)風(fēng)險(xiǎn),想想只能刪掉用戶上傳圖片頭像的功能,改為默認(rèn)隨機(jī)設(shè)置的方法。 分享一段精準(zhǔn)像素自用的一段隨機(jī)設(shè)置會(huì)員頭像的代碼,非

    2024年02月03日
    瀏覽(87)
  • 自動(dòng)化測(cè)試工具airtest之上傳文件或圖片(web自動(dòng)化上傳圖片)

    自動(dòng)化測(cè)試工具airtest之上傳文件或圖片(web自動(dòng)化上傳圖片)

    web自動(dòng)化測(cè)試圖片上傳的方法: 第一種為當(dāng)具有input標(biāo)簽時(shí),如: input?type=\\\"file\\\" name=\\\"file\\\" multiple=\\\"multiple\\\" 這類(lèi)可以通過(guò)selenium中的send_keys()上傳 直接實(shí)現(xiàn): driver.find_element_by_css_selector(\\\"[type=\\\'file\\\']\\\").send_keys(r\\\"文件地址\\\")? 第二種為當(dāng)不是input標(biāo)簽時(shí),將不能使用上述方法我們可以

    2024年02月06日
    瀏覽(24)
  • swiper實(shí)現(xiàn)點(diǎn)擊切換slide/圖片效果

    swiper的切換方式一般為拖拽切換,滑動(dòng)切換。 如果想要實(shí)現(xiàn)點(diǎn)擊每一個(gè)slide就切換成下一個(gè)slide,那么可以使用click方法實(shí)現(xiàn)。 click方法 :回調(diào)函數(shù),當(dāng)你點(diǎn)擊或輕觸Swiper 后執(zhí)行,相當(dāng)于tap。 接受swiper實(shí)例和touchend事件作為參數(shù)。 注:Swiper5版本之前會(huì)有300ms延遲。 文檔鏈接

    2024年02月16日
    瀏覽(26)
  • 【ArkTS】鴻蒙開(kāi)發(fā) 在用戶界面點(diǎn)擊圖片實(shí)現(xiàn)圖片旋轉(zhuǎn)和圖片縮小動(dòng)畫(huà)

    【ArkTS】鴻蒙開(kāi)發(fā) 在用戶界面點(diǎn)擊圖片實(shí)現(xiàn)圖片旋轉(zhuǎn)和圖片縮小動(dòng)畫(huà)

    為了實(shí)現(xiàn)圖片點(diǎn)擊旋轉(zhuǎn)、縮放、位移等功能,我主要應(yīng)用了多態(tài)樣式:stateStyles()屬性和動(dòng)畫(huà)animation()屬性,具體用法可以參考官網(wǎng)給出的說(shuō)明: stateStyles()屬性:?https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/arkts-statestyles-0000001482592098-V2 animation()屬性:?https://devel

    2024年04月23日
    瀏覽(20)
  • HarmonyOS實(shí)現(xiàn)幾種常見(jiàn)圖片點(diǎn)擊效果

    HarmonyOS實(shí)現(xiàn)幾種常見(jiàn)圖片點(diǎn)擊效果

    HarmonyOS提供了常用的圖片、圖片幀動(dòng)畫(huà)播放器組件,開(kāi)發(fā)者可以根據(jù)實(shí)際場(chǎng)景和開(kāi)發(fā)需求,實(shí)現(xiàn)不同的界面交互效果,包括:點(diǎn)擊陰影效果、點(diǎn)擊切換狀態(tài)、點(diǎn)擊動(dòng)畫(huà)效果、點(diǎn)擊切換動(dòng)效。 image組件 :圖片組件,用于圖片資源的展示。 image-animator組件 :幀動(dòng)畫(huà)播放器,用以

    2024年02月09日
    瀏覽(21)
  • VSCode Webview中如何實(shí)現(xiàn)點(diǎn)擊下載圖片

    眾所周知,在一個(gè)普通的HTML頁(yè)面中,如果要實(shí)現(xiàn)一個(gè)鏈接點(diǎn)擊后下載圖片,只需要在頁(yè)面上放一個(gè)a標(biāo)簽,然后將屬性href的值指向圖片的URL或者Base64字符串就可以了?;蛘甙凑誷tackoverflow上提供的方法動(dòng)態(tài)創(chuàng)建a標(biāo)簽來(lái)完成圖片的下載動(dòng)作。不過(guò)原理都是相同的。 但是這個(gè)方法

    2023年04月26日
    瀏覽(27)
  • 小程序中怎么實(shí)現(xiàn)點(diǎn)擊彈出圖片?

    需求是點(diǎn)擊某個(gè)內(nèi)容,彈出小于屏幕的圖片,比如二維碼、廣告圖等,彈窗內(nèi)可以設(shè)置超鏈接跳轉(zhuǎn),以及關(guān)閉彈窗。以下記錄不跳轉(zhuǎn),只關(guān)閉的代碼思路。 1、寫(xiě)出彈窗圖片和關(guān)閉按鈕,將其定位在頁(yè)面指定位置。默認(rèn)display:none; 2、點(diǎn)擊的內(nèi)容上,添加點(diǎn)擊事件,點(diǎn)擊事件里

    2024年02月12日
    瀏覽(11)
  • JS - 生成隨機(jī)數(shù)的方法匯總(不同范圍、類(lèi)型的隨機(jī)數(shù))

    (1)使用 random() 方法可以返回一個(gè)介于 0 ~ 1 之間的偽隨機(jī)數(shù)(包括 0,不包括 1)。 (2)下面是一個(gè)測(cè)試樣例 (1)這種最簡(jiǎn)單,因?yàn)楹?random 的特點(diǎn)保持一致。只需使用如下公式即可: (2)比如下面生成 [10,15) 范圍內(nèi)的隨機(jī)浮點(diǎn)數(shù)。 因?yàn)?random 的特點(diǎn),要取得這幾個(gè)區(qū)間

    2023年04月08日
    瀏覽(26)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包