Python自动化测试:如何在遍历的多个按钮中仅点击单个按钮
Python自动化测试:如何在遍历的多个按钮中仅点击单个按钮
嗨,我来帮你搞定这个问题!你当前的代码会遍历所有的“Add to cart”按钮并逐个点击,要实现只点击其中单个随机按钮(或者指定某一个按钮)其实很简单,下面给你两种实用的解决方案:
方法一:随机点击任意一个按钮
我们可以借助Python内置的random模块,从获取到的按钮列表里随机挑选一个,然后只点击这个选中的按钮就行。修改后的代码如下:
import random # 记得导入random模块 class AddToCart(BasePage): def select_item_to_add(self): # 先获取所有按钮元素的列表 all_add_buttons = self.get_elements(AddToCartItem.Product_Item_Button) # 随机挑选一个按钮 random_button = random.choice(all_add_buttons) # 只点击这个随机选中的按钮 random_button.click()
这样每次运行时,都会从所有按钮里随机选一个来点击,完美解决你当前全选点击的问题~
方法二:点击指定位置的按钮
如果你想固定点击某一个特定的按钮(比如第2个按钮,注意Python列表索引从0开始),可以直接通过索引来获取元素:
class AddToCart(BasePage): def select_item_to_add(self): all_add_buttons = self.get_elements(AddToCartItem.Product_Item_Button) # 比如点击第1个按钮(索引0),或者按需修改索引值 target_button = all_add_buttons[0] target_button.click()
补充说明
你原来的代码会点击所有按钮,是因为用了for循环遍历每一个按钮元素,并且对每个元素都执行了click()操作。现在我们改成先获取完整的元素列表,再从中挑选单个元素执行点击,就不会再出现全选点击的情况啦。
备注:内容来源于stack exchange,提问作者aben17
相关产品推荐
相关产品推荐

