2201_75857997 2023-01-06 17:39 采纳率: 0%
浏览 43

web自动化报错:'TestUnit1' object has no attribute 'driver',调试调试。

web自动化报错:'TestUnit1' object has no attribute 'driver',大神帮忙调试调试。
代码如下:

from time import sleep ... testcase_methods = list(testcase_class. .keys()) ... wd.get('
from time import sleep

from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
import unittest




class MyTestLoader(unittest.TestLoader):
    def getTestCaseNames(self, testcase_class):
        # 调用父类的获取“测试方法”函数
        test_names = super().getTestCaseNames(testcase_class)
        # 拿到测试方法list
        testcase_methods = list(testcase_class.__dict__.keys())
        # 根据list的索引对testcase_methods进行排序
        test_names.sort(key=testcase_methods.index)
        # 返回测试方法名称
        return test_names
'''访问目标网址'''

wd = webdriver.Chrome()  # 创建一个webdriver的实例对象
wd.get('http://admintest.sv1.k9s.run:2271/platform-framework/index.html')
# wd.maximize_window()

class TestUnit1(unittest.TestCase):

    def setUp(self):
        """登录系统"""

        element = self.driver.find_element(By.XPATH, '//input[@placeholder="账号"]')
        element.send_keys('ceshi')
        element = self.driver.find_element(By.XPATH, '//input[@placeholder="密码"]')
        element.send_keys('ceshi')
        set_elem = self.driver.find_element(By.XPATH, '//button[@type="button"]')
        ActionChains(self).click(set_elem).perform()
        sleep(2)
        # 点击编辑商品
        self.driver.find_element(By.XPATH, '//span[contains(text(),"编辑商品")]').click()
        sleep(2)
        # 点击产品设置
        self.driver.find_element(By.XPATH, '//body/div[@id="mainApp"]/nav[1]/div[2]/div[1]/ul[1]/li[4]/ul[1]/li[2]/a[1]').click()

        name = self.driver.find_element(By.XPATH, '//iframe[@name="iframe15"]')
        self.driver.switch_to.frame(name)

    def test_added(self):
        """新增产品设置"""
        # 点击新增
        self.driver.find_element(By.XPATH, '//body[1]/div[1]/div[1]/div[1]/div[2]/button[1]/span[1]/i[1]').click()
        sleep(1)
        # 编辑新增的产品信息
        self.driver.find_element(By.XPATH, '//input[@class="ivu-select-input"]').click()
        self.driver.find_element(By.XPATH, '//li[contains(text(),"大保健")]').click()
        sleep(1)
        self.driver.find_element(By.XPATH,
                                  '//body[1]/div[1]/div[2]/div[2]/form[1]/div[2]/div[1]/div[1]/div[1]/input[2]').click()
        self.driver.find_element(By.XPATH, '//li[contains(text(),"重量")]').click()
        self.driver.find_element(By.XPATH, '//textarea[@class="ivu-input"]').send_keys('重量为2kg')
        sleep(2)
        self.driver.find_element(By.XPATH, '//span[contains(text(),"提交")]').click()
        # 弹出确认框框
        self.driver.find_element(By.XPATH, '//a[contains(text(),"确定")]').click()
        sleep(1)

    def test_madify(self):
        """修改产品设置"""
        # 勾选其中一个产品设置
        self.driver.find_element(By.XPATH, '//tbody/tr[@id="65"]/td[2]').click()
        # 点击修改
        self.driver.find_element(By.XPATH, '//button[@class="ivu-btn ivu-btn-warning"]').click()
        sleep(1)
        # 编辑修改信息
        username = self.driver.find_element(By.XPATH, '//textarea[@class="ivu-input"]')
        username.send_keys('web自动化')
        self.driver.find_element(By.XPATH, '//span[contains(text(),"提交")]').click()
        sleep(2)
        # 弹出确认弹框
        self.driver.find_element(By.XPATH, '//a[contains(text(),"确定")]').click()
        sleep(2)

    def test_delete(self):
        """删除产品设置"""

        # 勾选其中一个产品设置
        self.driver.find_element(By.XPATH, '//tbody/tr[@id="60"]/td[2]').click()
        # 点击删除
        self.driver.find_element(By.XPATH, '//body[1]/div[1]/div[1]/div[1]/div[2]/button[3]/span[1]/i[1]').click()
        # 弹出删除确认弹框
        self.driver.find_element(By.XPATH, '//a[contains(text(),"确定")]').click()

    def tearDowm(self):
        driver.switch_to.default_content()
        sleep(2)
        wd.driver.quit()


if __name__ == "__main__":
    unittest.main(testLoader=MyTestLoader())

  • 写回答

3条回答 默认 最新

  • 「已注销」 2023-01-07 09:51
    关注

    你把报错复制出来发给我看一下

    评论

报告相同问题?

问题事件

  • 创建了问题 1月6日