新版本开发完毕

This commit is contained in:
liwanlei
2017-11-01 10:28:31 +08:00
parent 0d6ecd0182
commit cd825a19ae
14 changed files with 424 additions and 51 deletions

View File

@@ -16,3 +16,13 @@ def assert_in(asserqiwang,fanhuijson):
else:
LOG.info('填写测试预期值')
raise ('请填写期望值')
@logger('断言测试结果')
def assertre(asserqingwang):
if len(asserqingwang.split('=')) > 1:
data = asserqingwang.split('&')
result = dict([(item.split('=')) for item in data])
return result
else:
LOG.info('填写测试预期值')
raise ('请填写期望值')

View File

@@ -4,7 +4,6 @@
## qq交流群194704520  
### 使用的库 requests绝大部分是基于Python原有的库进行的这样简单方便
### 使用脚本参数分离等思想,尽可能降低代码的耦合度。
# 最近更新增加了记录测试结果的,后期打算加入测试数据的统计。
# 首先我们来看下我们的目录
##
![Alt text](https://github.com/liwanlei/jiekou-python3/blob/master/img/xiangmujiegoutu.png)

View File

@@ -1,21 +0,0 @@
list1=[1,2,3,4,5,6,7]
list2=['a','b','c','d']
list3=[]
i=0
for i in range(len(list2)):
list3.append({'id':list1[i],'password':list2[i]})
i+=1
print(list3)
# import ddt,unittest
# data=[{1:1, 2:2},{1:2, 2:3},{1:3, 2:4}]
# @ddt.ddt
# class Testcase(unittest.TestCase):
# def setUp(self):
# pass
# def tearDown(self):
# pass
# @ddt.data(*data)
# def test(self,data):
# self.assertEqual(data[1],data[2])
# if __name__=='__main__':
# unittest.main()

BIN
img/ddt_log.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

BIN
img/ddt_report.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

BIN
img/测试报告.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -1,10 +0,0 @@
[2017-10-31 21:17:01.191553] INFO: jiekou: 当前模块 requests封装
[2017-10-31 21:17:01.273558] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-10-31 21:17:01.274558] INFO: jiekou: 当前模块 解析测试用例文件
[2017-10-31 21:17:16.660438] INFO: jiekou: 当前模块 requests封装
[2017-10-31 21:17:16.739442] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-10-31 21:17:16.740442] INFO: jiekou: 当前模块 解析测试用例文件
[2017-10-31 21:17:16.754443] INFO: jiekou: 当前模块 执行测试用例
[2017-10-31 21:18:18.624982] INFO: jiekou: 当前模块 requests封装
[2017-10-31 21:18:18.704987] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-10-31 21:18:18.705987] INFO: jiekou: 当前模块 解析测试用例文件

View File

@@ -0,0 +1,284 @@
[2017-11-01 10:06:23.188881] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:06:23.264885] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:06:23.264885] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:06:23.278886] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:06:23.278886] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:06:23.278886] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:06:23.311888] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:06:23.311888] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:06:23.312888] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:06:23.313888] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:06:23.313888] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:06:23.313888] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:06:23.343890] INFO: jiekou: 返回结果:{'code': 40002, 'text': '有啥事吗?'}
[2017-11-01 10:06:23.343890] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:06:23.344890] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:06:23.344890] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:06:23.344890] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:06:23.344890] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:06:23.344890] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:07:06.760373] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:07:06.838377] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:07:06.838377] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:07:06.852378] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:07:06.853378] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:07:06.853378] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:07:06.886380] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:07:06.886380] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:07:06.886380] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:07:06.887380] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:07:06.887380] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:07:06.887380] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:07:06.920382] INFO: jiekou: 返回结果:{'code': 40002, 'text': '此时无声胜有声?'}
[2017-11-01 10:07:06.920382] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:07:06.921382] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:07:06.921382] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:07:06.921382] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:07:06.921382] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:07:06.921382] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:07:20.637167] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:07:20.736172] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:07:20.737172] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:07:20.749173] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:07:20.749173] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:07:20.750173] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:07:20.789175] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:07:20.789175] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:07:24.632395] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:07:24.732401] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:07:24.733401] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:07:24.745401] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:07:24.746402] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:07:24.746402] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:07:24.785404] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:07:24.785404] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:07:53.710058] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:07:53.714058] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:07:53.715058] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:07:53.715058] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:07:53.748060] INFO: jiekou: 返回结果:{'code': 40002, 'text': '干哈呀?'}
[2017-11-01 10:07:53.749060] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:07:56.700229] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:07:56.801235] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:07:56.801235] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:07:56.813236] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:07:56.814236] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:07:56.814236] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:07:56.849238] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:07:56.849238] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:08:04.610682] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:08:04.689686] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:08:04.689686] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:08:04.704687] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:08:04.704687] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:08:04.704687] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:08:04.738689] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:08:04.738689] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:08:04.738689] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:08:04.740689] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:08:04.740689] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:08:04.740689] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:08:04.776691] INFO: jiekou: 返回结果:{'code': 40002, 'text': '有啥事吗?'}
[2017-11-01 10:08:04.776691] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:08:04.777691] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:08:04.777691] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:08:04.778691] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:08:04.778691] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:08:04.778691] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:20:30.384337] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:20:30.459342] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:20:30.459342] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:20:30.474343] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:20:30.474343] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:20:30.474343] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:20:30.513345] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:20:30.513345] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:20:30.514345] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:20:30.515345] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:20:30.515345] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:20:30.515345] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:20:30.544347] INFO: jiekou: 返回结果:{'code': 40002, 'text': '你想说什么就直说,不用藏在心里哈~'}
[2017-11-01 10:20:30.544347] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:20:30.544347] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:20:30.545347] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:20:30.545347] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:20:30.545347] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:20:30.545347] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:21:01.846137] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:21:01.921141] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:21:01.921141] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:21:01.936142] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:21:01.936142] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:21:01.936142] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:21:01.972144] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:21:01.972144] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:21:01.973144] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:21:01.973144] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:21:01.974144] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:21:01.974144] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:21:02.003146] INFO: jiekou: 返回结果:{'code': 40002, 'text': 'what?'}
[2017-11-01 10:21:02.003146] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:21:02.004146] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:21:02.005146] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:21:02.005146] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:21:02.005146] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:21:02.006146] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:21:44.590582] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:21:44.667586] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:21:44.667586] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:21:44.682587] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:21:44.682587] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:21:44.683587] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:21:44.717589] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:21:44.718589] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:21:44.718589] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:21:44.719589] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:21:44.719589] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:21:44.719589] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:21:44.755591] INFO: jiekou: 返回结果:{'code': 40002, 'text': '你想和我说什么呢?'}
[2017-11-01 10:21:44.755591] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:21:44.756591] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:21:44.757591] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:21:44.757591] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:21:44.757591] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:21:44.757591] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:23:21.727138] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:23:21.806142] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:23:21.806142] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:23:21.821143] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:23:21.821143] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:23:21.821143] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:23:21.855145] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:23:21.855145] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:23:21.855145] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:23:21.856145] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:23:21.856145] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:23:21.857145] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:23:21.886147] INFO: jiekou: 返回结果:{'code': 40002, 'text': 'what?'}
[2017-11-01 10:23:21.886147] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:23:21.886147] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:23:21.886147] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:23:21.887147] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:23:21.887147] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:23:21.887147] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:23:48.852689] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:23:48.928694] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:23:48.928694] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:23:48.943694] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:23:48.943694] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:23:48.943694] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:23:48.981697] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:23:48.981697] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:23:48.981697] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:23:48.982697] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:23:48.983697] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:23:48.983697] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:23:49.021699] INFO: jiekou: 返回结果:{'code': 40002, 'text': '干哈呀?'}
[2017-11-01 10:23:49.021699] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:23:49.021699] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:23:49.022699] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:23:49.022699] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:23:49.022699] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:23:49.022699] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:24.567732] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:24:24.644736] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:24:24.644736] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:24:24.659737] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:24.659737] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:24:24.659737] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:24:24.694739] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:24:24.694739] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:24:24.694739] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:24.696739] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:24.696739] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:24:24.696739] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:24:24.728741] INFO: jiekou: 返回结果:{'code': 40002, 'text': '干啥呀?'}
[2017-11-01 10:24:24.728741] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:24:24.728741] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:24.729741] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:24.729741] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:24:24.729741] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:24:24.729741] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:31.959155] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:24:32.040159] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:24:32.040159] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:24:32.054160] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:32.055160] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:24:32.055160] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:24:32.089162] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:24:32.090162] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:24:32.090162] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:32.091162] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:32.091162] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:24:32.091162] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:24:32.126164] INFO: jiekou: 返回结果:{'code': 40002, 'text': '有些话,难以说出口?'}
[2017-11-01 10:24:32.127164] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:24:32.127164] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:32.127164] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:32.127164] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:24:32.128164] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:24:32.128164] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:40.651652] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:24:40.728656] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:24:40.728656] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:24:40.743657] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:40.743657] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:24:40.743657] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:24:40.777659] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:24:40.777659] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:24:40.777659] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:40.778659] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:40.778659] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:24:40.779659] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:24:40.814661] INFO: jiekou: 返回结果:{'code': 40002, 'text': '干啥呀?'}
[2017-11-01 10:24:40.815661] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:24:40.815661] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:24:40.816661] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:24:40.816661] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:24:40.816661] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:24:40.817661] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:25:40.019048] INFO: jiekou: 当前模块 requests封装
[2017-11-01 10:25:40.093052] INFO: jiekou: 当前模块 生成数据驱动所用数据
[2017-11-01 10:25:40.094052] INFO: jiekou: 当前模块 解析测试用例文件
[2017-11-01 10:25:40.109053] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:25:40.109053] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:25:40.109053] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:25:40.143055] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:25:40.143055] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:25:40.144055] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:25:40.144055] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:25:40.144055] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:25:40.144055] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:25:40.177057] INFO: jiekou: 返回结果:{'code': 40002, 'text': 'what?'}
[2017-11-01 10:25:40.177057] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:25:40.178057] INFO: jiekou: 测试用例执行完毕
[2017-11-01 10:25:40.178057] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:25:40.178057] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:25:40.178057] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:25:40.178057] INFO: jiekou: 测试用例执行完毕

View File

@@ -6,7 +6,7 @@
"""
from Public.pyreport_excel import create
import os,threading,datetime
from testCase.test_case import testinterface
from testCase.case import testinterface
from Public.emmail import sendemali
from Public.get_excel import datacel
from Public.create_report import save_result

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
# @Author : leizi
import unittest,os,datetime,time
from testCase.test_case import testinterface
from testCase.case import testinterface
from Public.py_Html import createHtml
from Public.get_excel import datacel
from Public.emmail import sendemali

View File

@@ -1,13 +1,15 @@
from testCase.test import ApiTest
# -*- coding: utf-8 -*-
# @Author : leizi
from testCase.ddt_case import MyTest
import unittest,time,os
from Public import BSTestRunner
if __name__=='__main__':
suite = unittest.TestSuite()
suite.addTests(unittest.TestLoader().loadTestsFromTestCase(ApiTest))
suite.addTests(unittest.TestLoader().loadTestsFromTestCase(MyTest))
now = time.strftime('%Y-%m%d', time.localtime(time.time()))
basedir = os.path.abspath(os.path.dirname(__file__))
file_dir = os.path.join(basedir, 'test_Report')
file = os.path.join(file_dir, (now + '.html'))
re_open = open(file, 'wb')
runner = BSTestRunner.BSTestRunner(stream=re_open, title='接口测试报告', description='测试结果')
runner.run(suite)
runner.run(suite)

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
# @Time : 2017/6/4 20:15
# @Author : lileilei
# @File : test_case.py
# @File : case.py
from Interface.testFengzhuang import TestApi
from Public.get_excel import datacel
from Public.log import LOG,logger

View File

@@ -1,20 +1,20 @@
from Interface.testFengzhuang import TestApi
from Public.get_excel import datacel,makedata
from Public.log import LOG,logger
import ddt,unittest
from Public.panduan import assertre
import ddt,unittest,time,os
data_test=makedata()
@logger('执行测试用例')
@ddt.ddt
class ApiTest(unittest.TestCase):
class MyTest(unittest.TestCase):
def setUp(self):
pass
LOG.info('测试用例开始执行')
def tearDown(self):
pass
LOG.info('测试用例执行完毕')
@ddt.data(*data_test)
def test_api(self,data_test):
api = TestApi(url=data_test['url'], key=data_test['key'], connent=data_test['coneent'], fangshi=data_test['fangshi'])
LOG.info('输入参数url:%s,key:%s,参数:%s,请求方式:%s'%(data_test['url'],data_test['key'],data_test['coneent'], LOG.info('输入参数url:%s,key:%s,参数:%s,请求方式:%s'%(data_test['url'],data_test['key'],data_test['coneent'],data_test['fangshi']))))
apijson = api.getJson()
LOG.info('返回结果:%s'%apijson)
self.assertEqual(data_test['qiwang'],apijson,msg='预期和返回不一致')
qingwang=assertre(asserqingwang=data_test['qiwang'])
self.assertNotEqual(dict(qingwang),dict(apijson),msg='预期和返回不一致')

View File

@@ -150,9 +150,9 @@ function showOutput(id, name) {
<div class="container">
<div class='heading'>
<h1>接口测试报告</h1>
<p><strong>Start Time:</strong> 2017-10-31 21:15:03</p>
<p><strong>Duration:</strong> 0:00:00</p>
<p><strong>Status:</strong> none</p>
<p><strong>Start Time:</strong> 2017-11-01 10:25:40</p>
<p><strong>Duration:</strong> 0:00:00.070004</p>
<p><strong>Status:</strong> <span class="text text-success">Pass <strong>2</strong></span> <span class="text text-warning">Error <strong>1</strong></span></p>
<p class='description'>测试结果</p>
</div>
@@ -177,14 +177,123 @@ function showOutput(id, name) {
</thead>
<tbody>
<tr class='text text-warning'>
<td>testCase.ddt_case.MyTest</td>
<td>3</td>
<td>2</td>
<td>0</td>
<td>1</td>
<td><a class="btn btn-xs btn-primary"href="javascript:showClassDetail('c1',3)">Detail</a></td>
</tr>
<tr id='pt1.1' class='hiddenRow'>
<td class='text text-success'><div class='testcase'>test_api_1</div></td>
<td colspan='5' align='center'>
<!--css div popup start-->
<a class="popup_link btn btn-xs btn-default" onfocus='this.blur();' href="javascript:showTestDetail('div_pt1.1')" >
pass</a>
<div id='div_pt1.1' class="popup_window">
<div style='text-align: right;cursor:pointer'>
<a onfocus='this.blur();' onclick="document.getElementById('div_pt1.1').style.display = 'none' " >
[x]</a>
</div>
<pre>
pt1.1: [2017-11-01 10:25:40.109053] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:25:40.109053] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式POST
[2017-11-01 10:25:40.109053] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api,key:aaaa,参数:sasa,请求方式None
[2017-11-01 10:25:40.143055] INFO: jiekou: 返回结果:{'code': 40001, 'text': '亲爱的key不对哦。'}
[2017-11-01 10:25:40.143055] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:25:40.144055] INFO: jiekou: 测试用例执行完毕
</pre>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='pt1.2' class='hiddenRow'>
<td class='text text-success'><div class='testcase'>test_api_2</div></td>
<td colspan='5' align='center'>
<!--css div popup start-->
<a class="popup_link btn btn-xs btn-default" onfocus='this.blur();' href="javascript:showTestDetail('div_pt1.2')" >
pass</a>
<div id='div_pt1.2' class="popup_window">
<div style='text-align: right;cursor:pointer'>
<a onfocus='this.blur();' onclick="document.getElementById('div_pt1.2').style.display = 'none' " >
[x]</a>
</div>
<pre>
pt1.2: [2017-11-01 10:25:40.144055] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:25:40.144055] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式POST
[2017-11-01 10:25:40.144055] INFO: jiekou: 输入参数url:http://www.tuling123.com/openapi/api
,key:dfeb1cc8125943d29764a2f2f5c33739,参数:,请求方式None
[2017-11-01 10:25:40.177057] INFO: jiekou: 返回结果:{'code': 40002, 'text': 'what?'}
[2017-11-01 10:25:40.177057] INFO: jiekou: 当前模块 断言测试结果
[2017-11-01 10:25:40.178057] INFO: jiekou: 测试用例执行完毕
</pre>
</div>
<!--css div popup end-->
</td>
</tr>
<tr id='ft1.3' class='none'>
<td class='text text-warning'><div class='testcase'>test_api_3</div></td>
<td colspan='5' align='center'>
<!--css div popup start-->
<a class="popup_link btn btn-xs btn-default" onfocus='this.blur();' href="javascript:showTestDetail('div_ft1.3')" >
error</a>
<div id='div_ft1.3' class="popup_window">
<div style='text-align: right;cursor:pointer'>
<a onfocus='this.blur();' onclick="document.getElementById('div_ft1.3').style.display = 'none' " >
[x]</a>
</div>
<pre>
ft1.3: [2017-11-01 10:25:40.178057] INFO: jiekou: 测试用例开始执行
[2017-11-01 10:25:40.178057] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式GET
[2017-11-01 10:25:40.178057] INFO: jiekou: 输入参数url:https://api.douban.com/v2/photo/:id,key:,参数:,请求方式None
[2017-11-01 10:25:40.178057] INFO: jiekou: 测试用例执行完毕
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Roaming\Python\Python36\site-packages\ddt.py", line 139, in wrapper
return func(self, *args, **kwargs)
File "C:\Users\Administrator\Desktop\jiekou-python3\testCase\ddt_case.py", line 17, in test_api
apijson = api.getJson()
File "C:\Users\Administrator\Desktop\jiekou-python3\Interface\testFengzhuang.py", line 27, in getJson
json_data = self.testapi()
File "C:\Users\Administrator\Desktop\jiekou-python3\Interface\testFengzhuang.py", line 21, in testapi
response = reques.get(self.url,self.parem)
TypeError: get() takes 2 positional arguments but 3 were given
</pre>
</div>
<!--css div popup end-->
</td>
</tr>
</tbody>
<tfoot>
<tr id='total_row'>
<td>Total</td>
<td>0</td>
<td class="text text-success">0</td>
<td>3</td>
<td class="text text-success">2</td>
<td class="text text-danger">0</td>
<td class="text text-warning">0</td>
<td class="text text-warning">1</td>
<td>&nbsp;</td>
</tr>
</tfoot>