from business.jwzczzkgjmqysfrdsq import jwzczzkgjmqysfrdsq from business.dqysssqfw import dqysssqfw import time class dealWith : def __init__(self,driver,By,Keys) -> None: self.driver=driver self.By=By self.Key=Keys def operate(self): with open('./business.txt','r',encoding='utf-8') as f: line=f.readline() line = line.strip('\n') businessName= line.split(':',1)[1] print('测试的模块为'+businessName) line= f.readline() line = line.strip('\n') testBusiness= line.split(':',1)[1] print('测试业务模块的首字母'+testBusiness) #调用测试的模块 # match testBusiness: # case 'jwzczzkgjmqysfrdsq': # print() # case _: # print() if testBusiness == 'jwzczzkgjmqysfrdsq':# jwzczzkgjmqysfrdsq = jwzczzkgjmqysfrdsq(self.driver,self.By) elif testBusiness == 'dqysssqfw':# dqysssqfw = dqysssqfw(self.driver,self.By) else: print("未找到该业务,请检查业务名称是否正确") #开始操作页面 search = self.driver.find_element(self.By.CLASS_NAME,'t-input__inner') search.click() search.send_keys(businessName) search.send_keys(self.Keys.ENTER) search.send_keys(self.Keys.DOWN) time.sleep(0.1) search.send_keys(self.Keys.ENTER)
时间: 2024-02-14 18:28:20 浏览: 74
你的代码看起来有一些问题,我来帮你检查一下。
首先,你导入了`jwzczzkgjmqysfrdsq`和`dqysssqfw`模块,但是在后面使用这些模块时,你又定义了同名的变量`jwzczzkgjmqysfrdsq`和`dqysssqfw`,这会导致变量名覆盖和混淆。为了避免这种问题,你可以将导入的模块改为其他名称,比如:
```python
from business.jwzczzkgjmqysfrdsq import jwzczzkgjmqysfrdsq_module
from business.dqysssqfw import dqysssqfw_module
```
然后,在根据`testBusiness`的值创建对象时,你使用了与模块同名的变量名,这也会导致混淆。为了避免这个问题,你可以将对象名称改为其他名称:
```python
if testBusiness == 'jwzczzkgjmqysfrdsq':
jwzczzkgjmqysfrdsq_obj = jwzczzkgjmqysfrdsq_module(self.driver, self.By)
elif testBusiness == 'dqysssqfw':
dqysssqfw_obj = dqysssqfw_module(self.driver, self.By)
```
最后,在操作页面时,你使用了未定义的变量`self.Keys`。根据代码开头的初始化方法参数,我假设你想使用`self.Key`,所以你需要将`self.Key`改为`self.Key`:
```python
search.send_keys(self.Key.ENTER)
search.send_keys(self.Key.DOWN)
search.send_keys(self.Key.ENTER)
```
希望这些修改可以帮助你解决问题。如果还有其他疑问,请随时提问。
阅读全文