如何实现一个函数读取1-9按钮?
如何实现一个根据我们Json存的数字,自动选取对应按钮点击,并且点击对应算法?
首先我们肯定不能给每个元素都写一个函数吧,毕竟挺多,而且如果这样写了,那加减乘除都要分开测试,代码太冗余,此时我们发现数字按钮的定位ID都很类似,如下
于是我们可以写成格式化样式simple{},然后根据驱动数据传入的值,写到里面,但这样就不能用函数了,只能用字符串方式,写在init中,所以代码如下:
1 class BasePage():
2 """
3 基类 用作初始化 封装常用操作
4 """
5
6 def __init__(self):
7 """
8 初始化driver
9 """
10 self.driver = webdriver.Firefox()
11 self.calurl = r'http://cal.apple886.com/'
12 self.digit_btn = (By.ID, 'simple{}')
13 self.open_page()
basepage.py
1 class CalElement(BasePage):
2 """
3 封装各种元素对象:清屏、加、减、乘、除、等于
4 """
5
6 def get_result(self):
7 """计算 结果"""
8 res = self.driver.find_element(By.ID,'resultIpt')
9 print(res.get_attribute('value'))
10
11 def find_digit_btn(self, num):
12 """定位数字按钮"""
13 self.driver.find_element(self.digit_btn[0], self.digit_btn[1].format(num))
这样就解决问题了
----------------------------------------------------------------
完整源码见:https://github.com/T-Better/SoftTest
手机扫一扫
移动阅读更方便
你可能感兴趣的文章