0

有个问题想问你

在我的应用程序中,我想在一个按钮上单击多次 (10)。但是应用程序不接受点击选项,所以下面的代码不起作用:

         multi_click = TouchAction(self.driver)
         multi_click.tap(self.driver.find_element_by_id('logo'),0,0,8)

如果我设置“while”,点击动作太慢而不能作为多次点击:

     while i < 10: 
         self.driver.find_element_by_id('logo').click()
         i+= 1
         print (i)

你有什么想法吗?

问候

4

2 回答 2

0

单击此元素会生成到另一个屏幕的导航吗?

如果没有,您是否仅尝试一次搜索该元素(在您的循环之外)?

它可能会更快。

logo = self.driver.find_element_by_id('logo')
while i < 10: 
    logo.click()
    i+= 1
    print (i)
于 2017-12-14T17:09:24.820 回答
0

您是否尝试过使用 ADB 进行此类多次单击?

这是伪代码...不确定 100% 是否可以工作并且现在无法对其进行测试...

def sendClickByAdb(self, logo):
   x = logo.location['x']
   y = logo.location['y']
   procId = subprocess.Popen('adb shell', stdin = subprocess.PIPE)
   while i < 10:
      procId.communicate('input tap '+str(x)+' '+str(y))
      i+=1
      print(i)

您唯一需要知道的是调用该方法:

self.sendClickByAdb(self.driver.find_element_by_id('logo'))

我希望它有帮助

于 2017-12-15T13:12:26.627 回答