zoukankan      html  css  js  c++  java
  • UI自动化实战(禅道登录和bug的创建)

    from lib.pyse import Pyse


    # 实例化 pyse 和提供一个公用功能
    class BasePage(object):
    def __init__(self):
    self.pyse = Pyse('chrome')

    def open(self, url):
    self.pyse.open(url)

    def close(self):
    self.pyse.close()

    def quit(self):
    self.pyse.quit()

    def swicth_windows(self):
    self.pyse.open_new_window()


    class LoginPage(BasePage):
    def username(self):
    css = 'css=>#account'
    self.pyse.type(css, 'admin')

    def passwd(self):
    css = 'css=>[name="password"]'
    self.pyse.type(css, 'houyafan123')

    def login(self):
    css = 'css=>#submit'
    self.pyse.click(css)

    class Menu(LoginPage):
    def bug(self):
    css='css=>[href="/bug/"]'
    self.pyse.click(css)

    class BugList(Menu):
    def createBug(self):
    css='css=>[href^="/bug-create"]'
    self.pyse.click(css)
    class CreateBug(BugList): ####所属模块的定位,
    # 第一种两次点击的方式(不稳定) 第三种也可鼠标操作
    def module(self):
    css='css=>#module_chosen'
    self.pyse.click(css)
    css1 = 'css=>[data-option-array-index="1"]'
    self.pyse.click(css1)
        # 第二中种js修改display属性的方式(不稳定)
        def select_module(self):
    js="document.getElementById('module').style.display='';"
    self.pyse.js(js)
    css='css=>#module'
    self.pyse.select_by_value(css,'3')
    def os(self):
    css='css=>#os'
    self.pyse.select_by_value(css, 'windows')
    def browser(self):
    css='css=>#browser'
    self.pyse.select_by_value(css, 'ie11')
    def deadline(self):
    css = 'css=>#deadline'
    self.pyse.type(css,'2018-07-12')
    def openedBuild(self):
    js="document.getElementById('openedBuild').style.display='';"
    self.pyse.js(js)
    css='css=>#openedBuild'
    self.pyse.select_by_value(css,'3')

    def title(self):
    css='css=>#title'
    self.pyse.type(css,'ui自动化自动创建')
    def info(self):#########注意如何查找该输入框的元素(针对标签中间值得情况)
    js = "document.getElementById('steps').innerText='通过UI自动化生成的测试步骤';"
    self.pyse.js(js)

    def save(self):
    css='css=>#submit'
    self.pyse.click(css)
    class Page(CreateBug):
    pass

    if __name__ == '__main__':
    page = Page()
    page.open('http://zbox.imdsx.cn/user-login-Lw==.html')
    page.username()
    page.passwd()
    page.login()
    page.bug()
    page.createBug()
    page.select_module()
    page.os()
    page.browser()
    page.deadline()
    page.openedBuild()
    page.title()
    page.info()
    page.save()
  • 相关阅读:
    strpos与strstr之间的区别
    jquery 滚动效果插件
    自定义加密解密函数
    access变转换为mysql表工具
    CI学习总结
    表单验证
    解决国外模板h1、h2、h3...不显示中文文章标题的问题
    leetcode Largest Rectangle in Histogram
    leetcode Remove Duplicates from Sorted List
    leetcode[82] Remove Duplicates from Sorted List II
  • 原文地址:https://www.cnblogs.com/cslw5566/p/9319731.html
Copyright © 2011-2022 走看看