Python Webdriver 我有一个 class 定义但是从 unittest TestCase class 我看不到 class 方法

Python Webdriver I have a class defined but from the unittest TestCase class I cannot see the class methods

我正在使用 Webdriver 自动化我们的网站,Python。 我有一个名为 administrationPage.py 的 class,其中定义了一些方法,例如def add_project(self) 在 GUI

中添加项目的方法

我有一个名为 AdministrationPage_TestCase 的测试用例 class 和一个名为 def add_Project(self) 的方法: 在我实例化的这个方法中,声明了administionPage.pyclass。例如。 administration_page = administrationPage(self.driver) 从 administration_page 我想调用 add_project 方法。 当我输入 administration_page 时。当我按下时。它应该会弹出一个 class 中的方法列表。 它没有显示 class.

可用方法的弹出窗口

我的 LoginPage_TestCase.py 和 LoginPage.py 我已经以同样的方式实现了,没关系。我可以看到在 LoginPage class.

中定义的方法 userLogin_valid()

你知道我错过了什么或做错了什么吗?

我的代码片段如下。谢谢。

AdministrationPage.py

from element import BasePageElement
from locators import MainPageLocators
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import NoAlertPresentException
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import TimeoutException
import time
import datetime

class BasePage(object):

    def __init__(self, driver):
        self.driver = driver

class administrationPage(BasePage):

    def get_date_now(self):
            date_now = datetime.datetime.now()
            print str(date_now)

    # Add a project, enter project name & description, save
    def add_project(self):
        add_project_button = self.driver.find_element(*MainPageLocators.addButton_project)
        add_project_button.click()
        project_name_textfield = self.driver.find_element(*MainPageLocators.projectName_textfield)
        project_name_textfield.click()
        project_name_textfield.clear()
        dateNow = self.get_date_now()
        project_name_textfield.sendkeys('LADEMO_IE_nn_')
        project_description_textfield = self.driver.find_element(*MainPageLocators.projectDescription_textfield)
        project_description_textfield.click()
        project_description_textfield.clear()
        project_name_textfield.sendkeys("LADEMO create a basic project test script - Selenium Webdriver/Python Automated test")

AdministrationPage_TestCase.py

import unittest
from selenium import webdriver
import page
import administrationPage
import time

class AdministrationPage_TestCase(unittest.TestCase):

    def setUp(self):
        self.driver = webdriver.Ie("C:\QA\Automation\Python_projects\Selenium Webdriver\IEDriverServer_Win32_2.45.0\IEDriverServer.exe")
        self.driver.get("http://riaz-pc.company.local:8080/clearcore")
        self.login_page = page.LoginPage(self.driver)
        time.sleep(15)

    def add_Project(self):
        login_page = page.LoginPage(self.driver)
        login_page.userLogin_valid()
        administration_page = administrationPage(self.driver)
        administration_page.

    def tearDown(self):
        self.driver.close()

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

我现在已经设法解决了。

administration_page = administrationPage.administrationPage(self.driver)
administration_page.add_project()