UI自动化实战(禅道登录和bug的创建)

2018/07/16 19:36
阅读数 67
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()
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部