为啥使用step数据驱动无法引用text

lALPBFRyfPH01t3NAeDNAkY_582_480

使用变量注解,pycharm就可以自动识别

from selenium.webdriver.remote.webelement import WebElement



element=self.find() #type:WebElement

还是不行

麻烦支支招 :sweat_smile:

你在89行那里给element加个类型再试试

element:WebElement = None

还是不行

还有其它方法吗?

还有其它方法吗?

能否发出来,可以的话发到gitee上,我下载看看

链接:百度网盘-链接不存在
提取码:4i7x

麻烦看一下


改成这样子看看,还不行的话截下得出none的那行代码是咋写的

还是不行

你截下是到哪里报错吧,你那地址像是内网的,没法访问

看了下你运行的那条用例,是运行这个的yaml文件的吧,这个yaml文件最后是个点击操作,如果你想要打印文本的话还得加个获取文本信息的操作

不行,会报错

设计的问题,应该是先获取到元素,在获取到值

    def steps(self, path):  # path为yaml文件路径
        with open(path) as f:  # 打开yaml文件
            steps = yaml.safe_load(f)  # 加载yaml文件

        for step in steps:  # 对yaml文件进行遍历,以便执行多个动作
            if "by" in step.keys():
                element = self.find(step["by"], step["locator"])
            else:
                element = None

            if "action" in step.keys():
                action = step["action"]
                if action == "click":
                    element.click()
                if action == "send":
                    element.click()
                    element.send_keys(step["value"])
                if action == "text":
                    print(element.text)

可以了,是设计有问题,感谢!

优秀,是我逻辑有问题,感谢!