博主尝试了下更换python版本

之前很多脚本改正运行错误后、还是不能正常运行

忙会了半天还是没有成功

只好还原版本

所以下面的代码还没实际运行成功、先记录下

 #!/usr/bin/env python
# -*- coding: utf-8 -*- import subprocess
from createtest import CreateTest
import json
from xml.dom import minidom
import sys old_name = "case_login.txt"
new_name = "case_list.txt"
cmd = "pict " + old_name + " > " + new_name
path = "E:\work\python project" # noinspection PyTypeChecker,PyCallByClass
class CreateCase:
reload(sys)
sys.setdefaultencoding("utf-8") def __init__(self):
pass @classmethod
def case_cmd(cls):
subprocess.Popen(args=cmd, shell=True, stdout=subprocess.PIPE, cwd=path)
print "接口测试用例生成成功" @classmethod
def case_list(cls):
case_list = []
file_txt = open(new_name, "r+")
for line in file_txt.readlines():
line_txt = line.replace("\n", '').split("\t")
case_list.append(line_txt)
return case_list
# txt读取拆分截取 @classmethod
def case_data(cls):
data_list = []
for l in range(1, len(CreateCase.case_list())):
data_dict = {CreateCase.case_list()[0][0].decode("gbk"): CreateCase.case_list()[l][0].decode("gbk"),
CreateCase.case_list()[0][1].decode("gbk"): CreateCase.case_list()[l][1].decode("gbk")}
data_str = json.JSONEncoder().encode(data_dict)
data_json = json.loads(data_str)
data_list.append(data_json)
return data_list
# 创建字典转化json字符串、再转化成json格式 @classmethod
def case_result(cls):
post = "post"
url = "http://localhost:8081/swcw/back/sysLogin.action"
xml = minidom.Document()
xml.appendChild(xml.createComment("测试报告"))
caselist = xml.createElement("caselist")
xml.appendChild(caselist)
for i in range(0, len(CreateCase.case_data())):
case_result = CreateTest.test_api(post, url, CreateCase.case_data()[i])
case_code = str(case_result.status_code)
case_name = str(CreateCase.case_data()[i])
case_pattern = u"个人信息"
case_id = "swcw" + str(i)
try:
CreateTest.test_http(case_result.status_code)
except AttributeError:
pass
# 生成xml文件
case = xml.createElement("case")
case.setAttribute("id", case_id)
# 输入用例ID name = xml.createElement("name")
name.appendChild(xml.createTextNode(case_name))
# 输入用例名称
method = xml.createElement("method")
method.appendChild(xml.createTextNode(post))
# 输入接口类型
code = xml.createElement("code")
code.appendChild((xml.createTextNode(case_code)))
# 输入用例返回状态码
result = xml.createElement("result")
result.appendChild(xml.createTextNode(CreateTest.test_result(case_pattern, case_result.text)))
# 输入用例测试结果
time = xml.createElement("time")
time.appendChild(xml.createTextNode(CreateTest.test_time()))
# 输入用例执行时间 case.appendChild(name)
case.appendChild(method)
case.appendChild(code)
case.appendChild(result)
case.appendChild(time) caselist.appendChild(case)
# xml文件生成结束
filename = open(CreateTest.test_report(), "w+")
# 生成以当前时间命名的测试报告文件
xml.writexml(filename)
filename.close()
# 关闭文件 if __name__ == '__main__':
CreateCase.case_result()

最新文章

  1. 今天搞了一天的CentOS,唉,实在感觉自己渺小啊
  2. java int与integer的区别
  3. 多态(RAW)
  4. C语言实现单链表-01版
  5. js apply/call/caller/callee/bind使用方法与区别分析
  6. IOS开发之功能模块--自定义导航控制器类常用自定义的代码
  7. 关于DCMTK3.6.1源代码编译的总结
  8. NOIP模拟赛 by hzwer
  9. [Irving]SqlServer 标量函数 详解【转】
  10. sql语句书写升降序
  11. python字符串(移除空白,长度,索引,分割,切片,拼接,格式化输出)
  12. 构建一个最简单的web应用并部署及启动
  13. 【每天一道算法题】Numeric Keypad
  14. C语言中变量的作用域和生命周期
  15. mysql水平分表和垂直分表的优缺点
  16. Flash Builder4.0运行应用程序报错
  17. JavaScript(第二十二天)【动态加载js和css】
  18. 知物由学|游戏开发者如何从容应对Unity手游风险?
  19. hexo 建站参考
  20. 行业观察报告:从SAAS困局看行业趋势 ZT

热门文章

  1. Linux磁盘管理命令(fdisk,mount,umount,mkfs)
  2. 命名空间 <iostream>和<iostream.h> 由程序设计者命名的内存区域
  3. PHP中Trait详解及其应用
  4. 个人觉得存成char(12),优于varchar(12)
  5. 4.Data Types in the mongo Shell-官方文档摘录
  6. django--之登录表单提交
  7. 利用EasySQLMAIL实现自动数据提取和邮件发送功能 (1)
  8. Android用surface直接显示yuv数据(三)
  9. C++11中的array
  10. Java io流详解二