python自动生成测试用例_批量生成python自动化测试脚本
#!/usr/bin/env python#-*- coding:utf-8 -*-#!python3__author__ = "xxx""""自动化脚本生成工具"""importosimportxlrdimporttimeTestCaseName= ""TestCaseDescription= ""TestCasePreCondition= ""TestCaseStep= ""TestCaseE
#!/usr/bin/env python#-*- coding:utf-8 -*-#!python3
__author__ = "xxx"
"""自动化脚本生成工具"""
importosimportxlrdimporttime
TestCaseName= ""TestCaseDescription= ""TestCasePreCondition= ""TestCaseStep= ""TestCaseExpectResult= ""TestEnvironment= ""TestScriptName= ""cur_path=os.getcwd()defscripts_template():
testcases= os.path.join(cur_path, u"用例模板.xlsx")
data= xlrd.open_workbook(r'%s' %testcases)
table=data.sheet_by_index(0)
n_rows=table.nrows
n_cols=table.ncolsfor i in range(1, n_rows):
TestCaseName= table.cell_value(i, 1)
TestCaseDescription= table.cell_value(i, 2)
TestCasePreCondition= table.cell_value(i, 3)
TestCaseStep= table.cell_value(i, 4)
TestCaseExpectResult= table.cell_value(i, 5)
TestEnvironment=table.cell_value(i, 0)
TestScriptName= "test_{0}".format(TestCaseName) #符合unittest测试用例定义的识别条件, 以"test"开头
filename = os.path.join(cur_path, "{0}.py".format(TestScriptName))
with open(filename,'w', encoding='utf-8') as out:
out.write('''# !/usr/bin/env python
# -*- coding:utf-8 -*-
"""
#-----------------------------------------------------------------------
用例名称: {0}
用例描述: {1}
前置条件:
{2}
测试步骤:
{3}
预期结果:
{4}
测试环境: {5}
作者:{6}
日期:{7}
#-----------------------------------------------------------------------
"""
import unittest
class {8}(unittest.TestCase):
def setUp(self):
#TODO 添加用例执行前置条件
pass
def testRun(self):
#TODO 添加用例执行测试步骤
pass
def tearDown(self):
#TODO 添加恢复测试环境操作
pass
if __name__ == '__main__':
unittest.main()'''.format(TestCaseName, TestCaseDescription, TestCasePreCondition,
TestCaseStep, TestCaseExpectResult, TestEnvironment,__author__,
time.strftime('%Y-%m-%d'), TestScriptName));print("generate scripts finished!")if __name__ == "__main__":
scripts_template()
运行一下以上测试脚本生成代码。生成的脚本如下:1 #!/usr/bin/env python
2 #-*- coding:utf-8 -*-
3
4 """
5 #-----------------------------------------------------------------------6 用例名称: case_01_01_01_017 用例描述: 测试天气提示刷新8 前置条件:9 打开天气APP10 测试步骤:11 1.后台设置今日天气为多云,查看App提示是否更新。12 预期结果:13 页面天气提示刷新为多云14 测试环境: Phone15 作者:xxx16 日期:2019-01-0817 #-----------------------------------------------------------------------18 """
19
20 importunittest21
22
23 classtest_case_01_01_01_01(unittest.TestCase):24
25 defsetUp(self):26 #TODO 添加用例执行前置条件
27 pass
28
29 deftestRun(self):30 #TODO 添加用例执行测试步骤
31 pass
32
33 deftearDown(self):34 #TODO 添加恢复测试环境操作
35 pass
36
37 if __name__ == '__main__':38 unittest.main()
更多推荐



所有评论(0)