一个菜鸟测试工程师的简易自动化测试框架
作者:网络转载 发布时间:[ 2012/9/6 14:35:22 ] 推荐标签:
读取 xml 的内容。这段代码属于我现学现卖,直接看了一下 python 对 xml 的支持,然后自己捣鼓了一下写出来了,可以获取自己需要的 xml 里面的数据。
from xml.dom import minidom
class PageData():
def __init__(self, page_name, file):
self.name = page_name
self.data = minidom.parse(file)
self.xpth_dict = self.XML_Dict()
def XML_Dict(self):
xpath_dict = {}
for i in self.data.getElementsByTagName(self.name):
xpath_dict[str(i.childNodes[1].firstChild.nodeValue)] =
[str(i.childNodes[5].firstChild.nodeValue),
str(i.childNodes[7].firstChild.nodeValue)]
return xpath_dict
def GetLocator(self, object_name):
return self.xpth_dict[object_name][0]
def GetValue(self, object_name):
return self.xpth_dict[object_name][1]
后,主程序里面,我们能用下面的方式,执行我们本来已经设计好的案例。
def testAutoCompleteFunctionMouseMove(self):
'''test the function of auto complete. case 2: when user move mouse to the suggestion, there will be a link '''
self.initTest("testAutoCompleteFunctionMouseMove")
self.open('http://www.google.com/ncr')
GoogleHomePage = data_parser.PageData("GoogleHomePage", self.data_file)
self.Type(GoogleHomePage.GetLocator('SEARCHTEXT'), 's')
GoogleAutoComplete = data_parser.PageData("AutoCompleteCase", self.data_file)
self.isElementPresent(GoogleAutoComplete.GetLocator("SUGGESTIONFIELD"))
time.sleep(10)
self.MouseMove(GoogleAutoComplete.GetLocator("SUGGESTIONONEFORS"))
expect_text = "I'm Feeling Lucky ?"
self.assertLogTrue(self.isTextPresent(expect_text), "The text %s has been displayed" %expect_text)
self.MouseMove(GoogleAutoComplete.GetLocator("SUGGESTIONTWOFORS"))
time.sleep(10)
self.assertLogTrue(self.isTextPresent(expect_text), "The text %s has been displayed" %expect_text)
self.endTest()
这样,一个相当简易的自动化测试框架基本完工。可以完善的地方实在太多了,希望有志之士去完善吧,加入些新功能,譬如错误出现的时候截图,然后统计测试用例总数以及通过的数量。
后记
作为一个菜鸟测试工程师,没有任何的开发经验,搞出这个东西还是有点小激动的,也激发了本人对许多事情的兴趣。 以后希望能有更好的 test frame 去学习去创造。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11