一个菜鸟测试工程师的简易自动化测试框架

发表于:2012-9-06 10:39

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:AskaNeverEnd    来源:51Testing软件测试网采编

  自己新建一个类,继承unittest,然后修改必要的一些方法,并添加部分方法,譬如设置testName啊,设置标记值来标记case知否执行结束啊。这些都是可以根据自己喜好来加入的方法。

def setTestName(self, tname):
self.testname = tname
def getTestName(self):
return self.testname
def setCompleted(self):
self.completed = True
def isCompleted(self):
return self.completed

  对于unittest框架的修改 就写这么多。

  对selenium的基本方法做一些小改动,动机优化 unittest 框架一致,只是为了让你的用例跑起来的时候更加让人理解。我们相当于在 selenium 的基本方法外面又封装了一层。下面是部分方法示例:

def open(self,url):
self.sel.open(url)
def GetValue(self, element):
value = self.sel.get_value(element)
self.assertLogTrue(True, "Value for element %s is %s" %(element, value))
return value
def isTextPresent(self, text):
val = self.sel.is_text_present(text)
if val is False:
self.assertLogTrue(val, note="error occured *************" + text +\
" not found")
else:
print 'present (%s,%s)' % (text,val)
return val
def Select(self, element, selection):
if self.isElementPresent(element):
self.sel.select(element, selection)
def Check(self, element):
if self.isElementPresent(element):
self.sel.check(element)
def Type(self, element, text):
if self.isElementPresent(element):
self.sel.type(element, text)

  测试数据分离,这个做的非常简单,就是把期望值和控件位置作为测试数据放入 xml 中。

GWEB
link
//span[text()="Web"]
Web
GIMAGES
link
//span[text()="Images"]
Images

  name 表示控件名字,type 为控件的类型,locator 表示控制位置,expect_value 表示期望值。

32/3<123>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • d悠然夏天
    2015-10-16 10:17:07

    +1

  • fnngj
    2013-6-26 17:13:01

    求作者联系方式

  • TesterChen
    2012-9-21 13:16:13

    敢于动手去做,就是好的!

  • TesterChen
    2012-9-21 13:16:09

    敢于动手去做,就是好的!

  • pengpengfly
    2012-9-21 11:40:19

    不错,比那些瞎扯的强多了

  • dengwei729
    2012-9-19 11:06:19

    给力,好厉害

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号