美文网首页
CMTC管理平台UI自动化代码

CMTC管理平台UI自动化代码

作者: DD丿 | 来源:发表于2021-07-31 17:22 被阅读0次

对应lib套件下的cmtclogin文件中 声明的cmtc_login方法

from time import sleep
from hytest import *
from hytest import STEP, INFO
from selenium.webdriver.support.wait import WebDriverWait

from selenium.webdriver.support.ui import Select

from lib.cmtclogin import cmtc_login

class cmtc001:
name = '登录测试 cmtc001'
tags = ['文件管理']

# 初始化方法setup  登录
# 对象wd调用lib/cmtclogin中cmtc_login
def setup(self):
    INFO('初始化登录流程')
    cmtc_login()
    STEP(1, '登录成功')

# 测试用例开始执行
def teststeps(self):
    # 从lib cmtclogin中取出gstore方法中的wd对象
    wd = GSTORE['wd']
    # 隐式等待
    wd.implicitly_wait(10)
    STEP(2, '文件管理菜单检查')
    # 文件管理
    wd.find_element_by_css_selector(
        'div#app div:nth-child(12) > li').click()
    # # 定义变量菜单menu获取内容 并用check_point检查菜单是否符合 注:一定要定位到文案标签头span
    # menu = wd.find_elements_by_css_selector('div#app div:nth-child(1) > a > li > span')
    # menuText = [ele.text for ele in menu]
    # INFO(menuText)
    # CHECK_POINT('左侧菜单检查', menuText[:4] == ['标准文件', '标准文件目录管理', '程序文件','程序文件目录管理'],True)
    # WebDriverWait(wd, 10)
    # 标准文件
    STEP(3, '标准文件查询')
    wd.find_element_by_css_selector('div#app div:nth-child(1) > a > li').click()
    # 搜索内容标准文件 \换行
    wd.find_element_by_css_selector('div#app div.el-input.el-input--medium.el-input--prefix > input').send_keys('dd')
    # # 文件状态点击选择下拉框文件类型选择受控文件
    # wd.find_element_by_css_selector("div#app div.el-col.el-col-20 > div:nth-child(1) > div.el-select.el-select--medium > div > input").click()
    # wd.implicitly_wait(10)
    # wd.find_element_by_xpath("/html/body/div[3]/div[1]/div[1]/ul/li[2]/span")

    # 搜索
    wd.find_element_by_css_selector('div#app div.el-col.el-col-20 > div:nth-child(1) > button[type="button"] > span').click()
    sleep(2)
    STEP(4, '新增标准文件')
    # 新建标准文件
    wd.find_element_by_css_selector(
        'div#app div.maintenance-export > button[type="button"]:nth-child(1) > span').click()
    wd.implicitly_wait(5)
    wd.find_element_by_css_selector(
        'div#app form > div:nth-child(1) > div:nth-child(1) > div > div > div > input').send_keys('dd00001')
    wd.find_element_by_css_selector(
        '#app > div > div.main-container.hasTagsView > section > div.maintenanceBox > div.el-dialog__wrapper.dialogAdd > div > div.el-dialog__body > div > div:nth-child(2) > form > div:nth-child(1) > div:nth-child(2) > div > div > div.el-input.el-input--medium > input').send_keys(
        '滴滴测试1')
    # 英文名称
    wd.find_element_by_css_selector(
        'div#app div:nth-child(1) > div:nth-child(3) > div > div > div > input').send_keys('ddenglish')
    # 中标分类
    wd.find_element_by_css_selector(
        'div#app form > div:nth-child(2) > div:nth-child(1) > div > div > div > input').send_keys('dd中标分类1')
    # ICS分类
    wd.find_element_by_css_selector(
        'div#app form > div:nth-child(2) > div:nth-child(2) > div > div > div > input').send_keys('ddISC分类1')
    # 标准分类编号
    wd.find_element_by_css_selector(
        'div#app div:nth-child(2) > div:nth-child(3) > div > div > div > input').send_keys('dd13123124124312')
    # 标引依据
    wd.find_element_by_css_selector(
        'div#app div.el-col.el-col-16 > div > div > div > input').send_keys('dd依据1')
    wd.find_element_by_css_selector(
        'div#app form > div:nth-child(2) > div:nth-child(2) > div > div > div > input').send_keys('ddISC分类1')
    # 复审结果
    wd.find_element_by_css_selector(
        'div#app div:nth-child(3) > div.el-col.el-col-8 > div > div > div > input').send_keys('dd复审结果通过')
    # 所属目录
    wd.find_element_by_css_selector(
        'div#app div:nth-child(4) > div:nth-child(1) > div > div > div > div > button[type="button"] > span').click()
    wd.implicitly_wait(5)
    # 选择标准目录GB
    wd.find_element_by_css_selector(
        'div#app div.el-dialog__body > div > div > div.el-tree-node.is-expanded > div.el-tree-node__children > div:nth-child(1) > div.el-tree-node__children > div:nth-child(2) > div.el-tree-node__content > label > span > span').click()
    wd.find_element_by_css_selector(
        'div#app div:nth-child(4) > div > div.el-dialog__footer > span > button[type="button"].el-button.el-button--primary.el-button--medium > span').click()
    # 文件上传
    # 使用os调用本地autoit.exe上传图片
    wd.find_element_by_css_selector('div#app div:nth-child(6) > div:nth-child(1) > div > div > div > div > button[type="button"] > span').click()
    os.system('D:\autoit.exe')
    WebDriverWait(wd, 20)
    # remark备注
    wd.find_element_by_css_selector(
        'div#app textarea').send_keys('dd自动化测试国标文件1')
    # 关联穿梭框流程
    wd.find_element_by_css_selector(
        '#app > div > div.main-container.hasTagsView > section > div.maintenanceBox > div.el-dialog__wrapper.dialogAdd > div > div.el-dialog__body > div > div:nth-child(2) > form > div:nth-child(7) > div > div > div > div > div:nth-child(1) > div > div.el-checkbox-group.el-transfer-panel__list.is-filterable(1)').click()
    wd.find_element_by_css_selector(
        'div#app button[type="button"]:nth-child(2)').click()

# 初始化清除teardown
# def teardown(self):
#   wd = GSTORE['wd']
#   wd.find_element_by_id('userName').clear()
#   wd.find_element_by_id('password').clear()

相关文章

网友评论

      本文标题:CMTC管理平台UI自动化代码

      本文链接:https://www.haomeiwen.com/subject/ualkvltx.html