airtest一個(gè)例子:全民K歌,獲取到第二個(gè)“A B C D E F G”并點(diǎn)擊進(jìn)入

目的:全面K歌,一個(gè)作者作品的頁(yè)面,獲取到第二個(gè)“A B C D E F G”并點(diǎn)擊進(jìn)入。


第一種方法:

代碼:

# -*- encoding=utf8 -*-

__author__ = "jiangjiahao"

from airtest.core.api import *

from poco.drivers.android.uiautomation import AndroidUiautomationPoco

poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

auto_setup(__file__)

# 獲取第二個(gè)“A B C D E F G”

# 核心思想,i j 獲取到對(duì)應(yīng)的目標(biāo)值

i = 0

j = 0

k = 0

for i in range(3):

? ? for j in range(3):

? ? ? ? #每個(gè)標(biāo)題都是以這個(gè)開(kāi)頭

? ? ? ? text_targer = poco("android.widget.LinearLayout").offspring("android:id/content").offspring(

? ? ? ? ? ? "com.tencent.karaoke:id/b9c").child("com.tencent.karaoke:id/bya")[i].child(

? ? ? ? ? ? "android.widget.LinearLayout")[j].offspring("com.tencent.karaoke:id/by8").get_text()

? ? ? ? if str(text_targer.strip()) == "A B C D E F G":

? ? ? ? ? ? k += 1

? ? ? ? ? ? if k == 2:? #得到第二個(gè)判斷

? ? ? ? ? ? ? ? #每個(gè)視頻進(jìn)入的入口都是以這個(gè)開(kāi)頭

? ? ? ? ? ? ? ? poco("android.widget.LinearLayout").offspring("com.tencent.karaoke:id/b9c").child(

? ? ? ? ? ? ? ? ? ? "com.tencent.karaoke:id/bya")[i].child("android.widget.LinearLayout")[j].offspring(

? ? ? ? ? ? ? ? ? ? "com.tencent.karaoke:id/by4").click()

如果批量全部判斷:

代碼:

# -*- encoding=utf8 -*-

__author__ = "jiangjiahao"

from airtest.core.api import *

from poco.drivers.android.uiautomation import AndroidUiautomationPoco

poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

auto_setup(__file__)

num = int(poco("com.tencent.karaoke:id/j_6").get_text())

print(num)

max_j = int(num%3)

max_i = int((num-max_j)/3)

# 獲取第二個(gè)“A B C D E F G”

# 核心思想,i j 獲取到對(duì)應(yīng)的目標(biāo)值

i = 0

j = 0

k = 0

for i in range(max_i+1):

? ? if i != max_i:

? ? ? ? for j in range(3):

? ? ? ? #每個(gè)標(biāo)題都是以這個(gè)開(kāi)頭

? ? ? ? ? ? text_targer = poco("android.widget.LinearLayout").offspring("android:id/content").offspring(

? ? ? ? ? ? ? ? "com.tencent.karaoke:id/b9c").child("com.tencent.karaoke:id/bya")[i].child(

? ? ? ? ? ? ? ? "android.widget.LinearLayout")[j].offspring("com.tencent.karaoke:id/by8").get_text()

? ? ? ? ? ? if str(text_targer.strip()) == "A B C D E F G":

? ? ? ? ? ? ? ? k += 1

? ? ? ? ? ? ? ? if k == 2:? #得到第二個(gè)判斷

? ? ? ? ? ? ? ? ? ? #每個(gè)視頻進(jìn)入的入口都是以這個(gè)開(kāi)頭

? ? ? ? ? ? ? ? ? ? poco("android.widget.LinearLayout").offspring("com.tencent.karaoke:id/b9c").child(

? ? ? ? ? ? ? ? ? ? ? ? "com.tencent.karaoke:id/bya")[i].child("android.widget.LinearLayout")[j].offspring(

? ? ? ? ? ? ? ? ? ? ? ? "com.tencent.karaoke:id/by4").click()

? ? else:

? ? ? ? for j in range(max_j+1):

? ? ? ? #每個(gè)標(biāo)題都是以這個(gè)開(kāi)頭

? ? ? ? ? ? text_targer = poco("android.widget.LinearLayout").offspring("android:id/content").offspring(

? ? ? ? ? ? ? ? "com.tencent.karaoke:id/b9c").child("com.tencent.karaoke:id/bya")[i].child(

? ? ? ? ? ? ? ? "android.widget.LinearLayout")[j].offspring("com.tencent.karaoke:id/by8").get_text()

? ? ? ? ? ? if str(text_targer.strip()) == "A B C D E F G":

? ? ? ? ? ? ? ? k += 1

? ? ? ? ? ? ? ? if k == 2:? #得到第二個(gè)判斷

? ? ? ? ? ? ? ? ? ? #每個(gè)視頻進(jìn)入的入口都是以這個(gè)開(kāi)頭

? ? ? ? ? ? ? ? ? ? poco("android.widget.LinearLayout").offspring("com.tencent.karaoke:id/b9c").child(

? ? ? ? ? ? ? ? ? ? ? ? "com.tencent.karaoke:id/bya")[i].child("android.widget.LinearLayout")[j].offspring(

? ? ? ? ? ? ? ? ? ? ? ? "com.tencent.karaoke:id/by4").click()

后面還需要,滑動(dòng)swipe.

完成!


第二種辦法:

后面更新.....................

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。