当前位置: 首页 > news >正文

php 小企业网站 cmswordpress导航分类

php 小企业网站 cms,wordpress导航分类,百度建设网站,php网站开发试题最近一段时间学了Python语言#xff0c;重新学了 Java#xff0c;js#xff0c;html语言#xff0c;CSS#xff0c;linux#xff0c;一堆测试工具#xff1b;唉#xff5e; 在接触接口测试过程中补了很多课#xff0c; 终于有点领悟接口测试的根本#xff1b; 偶是…最近一段时间学了Python语言重新学了 Javajshtml语言CSSlinux一堆测试工具唉 在接触接口测试过程中补了很多课 终于有点领悟接口测试的根本 偶是个实用派那么现实中没有用的东西基本上我都不会有很大的概念 下面给的是接口测试的统一大步骤其实就是让我们对接口测试有一个整体的概念我们要做或学习接口测试应该从那些地方着手也就是告诉你百度搜索了半天接口测试之后我还是没有概念那怎么办呢那么下面这些步骤就是你需要把接口测试拆开来了解的步骤 如第一步百度之后要研究什么是resful怎么个增删改查 这些步骤都可以拆开来反复实践等把这些步骤都拆开来实践完了你的接口测试也就通透了通杀所有接口测试 接口测试Http类webservice类  其实大同小异 找一个你自己的项目没人做过接口测试的也可以这样你可以自己想明白 怎么测而不是用别人的思想思想。。。最重要可是没有思路到有思路的路程并不长只是你要开始做这个事情相信我会很快你发现自己确实很聪明 声明我的这些东西之所以能入门主要归功于乙醇大神的接口测试概念和冯xx朋友的不吝赐教以及网络上的各种散碎思想 第一步 先要明白你要测什么? 本质就是增删改查。(学名叫 resful) 第二步先用网上推荐的工具来感觉一下比如:postman 比如SoapUI 第三步get, post, put, delete 大概怎么个用法比如传参比如 json串怎么看结果这些确实需要你有些技术基础的比如 端口返回值编码类型 第四步那么那么我们学了语言那就来用用吧一定要拿写好的接口例子来看看要不然你不知道用这个语言的什么包或什么函数来帮我们获取到URl的数据等... 第五步那么我们加入框架吧(Unittest)这样和前面你的老版本自创的那一版对比一下会感触然后明白为什么用框架 实践确实是个有意思的事情 第六步把你的那些参数放入数据库或者excel等等 实现数据驱动倒腾吧 第七步优化你的代码反复反复倒腾 重构你应该在通往 python高手的路上了 第八步当然如果你会Java但是并不会用它写接口测试那么把这些用例变成Java吧 第九步那么你还能干嘛还多着呢思考你现在这个接口是否只测试了A接口那么B接口能测试吗 比如C调用A接口那么C是一个接口呢 是吗 你能分辨出来吗把它弄清楚如果不是接口或者它是什么能测试吗怎么测试 第十步自己做一个假的接口Moco):最好和你现在的项目结合的比如开发正在开发的和开发沟通自己测试 第十一步自己写一个接口可以先按照之前开发开发好的接口照葫芦画瓢一个那也要画必须画谁叫你是做测试的知己知彼呀先简单后复杂主要倒腾清楚原理就行反正你也不做开发当然如果你想做开发那去做开发吧别在这浪费时间自己测试 第十二步 开始倒腾 测试第二个接口这次你直接从第六步开始就行代码优美可不是一天炼成的 如果你倒腾的很细的话本人认为倒腾三个接口应该很够了最后一定记得拿你这个知识到市场去卖钱哟科技是第一生产力 其实其实 有了这个基础 应该倒腾自动化的其他就不难了 第一版 unittest 框架源码 1 # Lawsuit_interface_unittest.py2 # coding:utf-83 4 import json5 import unittest6 from suds.client import Client7 8 9 class Lawsuit_interface_testing(unittest.TestCase): 10 11 def setUp(self): 12 self.url http://.....:8080/sys/webservice/sysNotifyTodoWebService?wsdl 13 self.client Client(self.url) # 14 15 def tearDown(self): 16 pass 17 18 def test_getTodo(self): 19 20 notify_TodoGetContext self.client.factory.create( 21 notifyTodoGetContext) 22 notify_TodoGetContext.otherCond 23 notify_TodoGetContext.pageNo 1 24 notify_TodoGetContext.rowSize 3 25 notify_TodoGetContext.targets json.dumps( 26 {LoginName: xiaoming}) 27 notify_TodoGetContext.type 1 28 notify_TodoAppResult self.client.service.getTodo( 29 notify_TodoGetContext) 30 returnState notify_TodoAppResult.returnState 31 self.assertEqual(returnState, 2) 32 33 def test_sendTodo(self): 34 35 notify_TodoSendContext self.client.factory.create( 36 notifyTodoSendContext) 37 notify_TodoSendContext.appName Lawsuit 38 notify_TodoSendContext.createTime 2015-11-27 15:32:39 39 notify_TodoSendContext.key 40 notify_TodoSendContext.link http://wwww.baidu.com 41 notify_TodoSendContext.subject Lawsuit_testing 42 notify_TodoSendContext.modelId 123456789 43 notify_TodoSendContext.modelName Lawsuit 44 notify_TodoSendContext.targets json.dumps( 45 {LoginName: xiaoming}) 46 notify_TodoSendContext.type 1 47 notify_TodoAppResult self.client.service.sendTodo( 48 notify_TodoSendContext) 49 returnState notify_TodoAppResult.returnState 50 self.assertEqual(returnState, 2) 51 52 def test_deleteTodo(self): 53 54 notify_TodoRemoveContext self.client.factory.create( 55 notifyTodoRemoveContext) 56 notify_TodoRemoveContext.appName Lawsuit 57 notify_TodoRemoveContext.modelId 123456789 58 notify_TodoRemoveContext.key 59 notify_TodoRemoveContext.modelName Lawsuit 60 notify_TodoRemoveContext.optType 1 61 notify_TodoRemoveContext.targets json.dumps( 62 {LoginName: xiaoming}) 63 notify_TodoAppResult self.client.service.deleteTodo( 64 notify_TodoRemoveContext) 65 returnState notify_TodoAppResult.returnState 66 self.assertEqual(returnState, 2) 67 68 def test_setTodoDone(self): 69 70 notify_TodoRemoveContext self.client.factory.create( 71 notifyTodoRemoveContext) 72 notify_TodoRemoveContext.appName Lawsuit 73 notify_TodoRemoveContext.modelId 123456789 74 notify_TodoRemoveContext.key 75 notify_TodoRemoveContext.modelName Lawsuit_testing 76 notify_TodoRemoveContext.optType 1 77 notify_TodoRemoveContext.targets json.dumps( 78 {LoginName: xiaoming}) 79 notify_TodoAppResult self.client.service.setTodoDone( 80 notify_TodoRemoveContext) 81 returnState notify_TodoAppResult.returnState 82 self.assertEqual(returnState, 2) 83 84 85 if __name__ __main__: 86 unittest.main() 第二版 使用excel 数据驱动 1 # Lawsuit_interface_unittest_excel_v1.1.py2 # coding:utf-83 4 import unittest5 import json6 import xlrd7 from suds.client import Client8 import time9 import sys10 11 12 class Lawsuit_interface_testing(unittest.TestCase):13 14 def setUp(self):15 self.url http:// xx?wsdl16 self.client Client(self.url)17 self.xlsfile rlawsuit_casedata.xlsx18 self.excel_data(self.xlsfile)19 20 def tearDown(self):21 pass22 23 def test_getToDO(self):24 25 self.Cannot_find_file(self.xlsfile)26 27 notify_TodoGetContext self.client.factory.create(28 notifyTodoGetContext)29 notify_TodoGetContext.pageNo self.pageNo_value30 notify_TodoGetContext.rowSize self.rowSize_value31 # another way to json32 # notify_TodoGetContext.targets { \LoginName\: \xiaoming\ }33 notify_TodoGetContext.targets self.targets_value34 notify_TodoGetContext.type self.ptype_value35 36 notify_TodoAppResult self.client.service.getTodo(37 notify_TodoGetContext)38 returnState notify_TodoAppResult.returnState39 40 print returnState41 self.assertEqual(returnState, 2)42 43 def test_sendTodo(self):44 self.Cannot_find_file(self.xlsfile)45 46 notify_TodoSendContext self.client.factory.create(47 notifyTodoSendContext)48 notify_TodoSendContext.appName self.appName_value49 notify_TodoSendContext.createTime self.creatime_value50 # notify_TodoSendContext.key 51 notify_TodoSendContext.link self.link_value52 notify_TodoSendContext.subject self.subject_value53 notify_TodoSendContext.modelId self.modelId_value54 notify_TodoSendContext.modelName self.modelName_value55 notify_TodoSendContext.targets self.targets_value56 notify_TodoSendContext.type self.ptype_value57 notify_TodoAppResult self.client.service.sendTodo(58 notify_TodoSendContext)59 returnState notify_TodoAppResult.returnState60 self.assertEqual(returnState, 2)61 62 def test_deleteTodo(self):63 self.Cannot_find_file(self.xlsfile)64 65 notify_TodoRemoveContext self.client.factory.create(66 notifyTodoRemoveContext)67 notify_TodoRemoveContext.appName self.appName_value68 notify_TodoRemoveContext.modelId self.modelId_value69 # notify_TodoRemoveContext.key 70 notify_TodoRemoveContext.modelName self.modelName_value71 notify_TodoRemoveContext.optType self.optType_value72 notify_TodoRemoveContext.targets self.targets_value73 notify_TodoAppResult self.client.service.deleteTodo(74 notify_TodoRemoveContext)75 returnState notify_TodoAppResult.returnState76 self.assertEqual(returnState, 2)77 78 def test_setTodoDone(self):79 self.Cannot_find_file(self.xlsfile)80 81 notify_TodoRemoveContext self.client.factory.create(82 notifyTodoRemoveContext)83 notify_TodoRemoveContext.appName self.appName_value84 notify_TodoRemoveContext.modelId self.modelId_value85 # notify_TodoRemoveContext.key 86 notify_TodoRemoveContext.modelName self.modelName_value87 notify_TodoRemoveContext.optType self.optType_value88 notify_TodoRemoveContext.targets self.targets_value89 notify_TodoAppResult self.client.service.setTodoDone(90 notify_TodoRemoveContext)91 returnState notify_TodoAppResult.returnState92 self.assertEqual(returnState, 2)93 94 def excel_data(self, xlsfile):95 96 self.Cannot_find_file(self.xlsfile)97 book xlrd.open_workbook(xlsfile)98 api_sheet book.sheet_by_index(0)99 nrows api_sheet.nrows 100 for i in range(1, nrows): 101 caseID api_sheet.cell(i, 0) 102 appName api_sheet.cell(i, 1) 103 creatime time.strftime( 104 time.strftime(%Y-%m-%d %X, time.localtime(time.time()))) 105 link api_sheet.cell(i, 3) 106 subject api_sheet.cell(i, 4) 107 modelId api_sheet.cell(i, 5) 108 modelName api_sheet.cell(i, 6) 109 targets api_sheet.cell(i, 7) 110 ptype api_sheet.cell(i, 8) 111 pageNo api_sheet.cell(i, 9) 112 rowSize api_sheet.cell(i, 10) 113 optType api_sheet.cell(i, 11) 114 # returnstatue api_sheet.cell(i, 12) 115 # message api_sheet.cell(i, 13) 116 if api_sheet.cell(i, 0).ctype ! 0: 117 # caseID_valuestr(int(caseID.value)) 118 self.appName_value appName.value 119 self.creatime_valuecreatime 120 self.link_value link.value 121 self.subject_value subject.value 122 self.modelId_value modelId.value 123 self.modelName_value modelName.value 124 # print type(targets) 125 self.targets_value targets.value 126 # print type(targets.value) 127 self.ptype_value int(ptype.value) 128 self.pageNo_value int(pageNo.value) 129 self.rowSize_value int(rowSize.value) 130 self.optType_value int(optType.value) 131 132 # returnstatue_valuereturnstatue.value 133 # message_valuemessage.value 134 else: 135 return 0 136 # data1 137 138 # return data1 139 140 # exception 141 142 def Cannot_find_file(self, xlsfile): 143 try: 144 foo open(self.xlsfile) 145 except EnvironmentError as err: 146 print Unable to open file:{}.format(err) 147 sys.exit(1) 148 149 150 if __name__ __main__: 151 unittest.main() 最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 文档获取方式 这份文档对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你 以上均可以分享只需要你搜索vx公众号程序员雨果即可免费领取
http://www.pierceye.com/news/159108/

相关文章:

  • 中国移动网站备案管理系统不能用科普网站建设的支持力度
  • 谁教我做啊谁会做网站啊企业网站模板seo
  • 自己建立一个网站需要什么wordpress 平衡插件
  • 邯郸手机建站价格青海网站开发 建设
  • 苏州 手机网站免费个人简历模板电子版可填写
  • 永州内部网站建设公司wordpress 模版开发
  • 云建站优势门户网站如何建设方案
  • 网站建设收费标准不一湖州网站开发公司
  • asp制作网站青岛建网站公司
  • 人人商城程序做的网站打不开百度网盘客户端下载
  • 医疗器械注册证查询网站优化推广服务
  • 网站制作网页做简单的网站首页
  • 怎样做网站上的语种链接泰安网络犯罪案件
  • soap公司网站建设国家游戏网站
  • 网站可以用什么做安阳区号是什么
  • 网站建设实战李静如何建设网站的能力
  • 威海 网站开发做家具的网站有哪些
  • 宁波网站建设公司怎么报价网页打开速度慢的解决方法
  • 有趣的网站有哪些推荐关键词没有排名的网站怎么做
  • 昆山网站制作哪家强海淀区企业网络公司
  • 北京网站制建设公司永兴县网站建设服务商
  • 嘉兴做网站优化公司江阴网站优化公司
  • dz可以做旅游网站吗wordpress 4.1.1 漏洞
  • 谷歌网站地图生成福州便民网免费发布信息
  • 最新军事战争新闻超级优化大师
  • 好的网站建设公司排名网站建设 交易保障
  • 怎么查看网站外链效果代理注册公司有什么风险
  • 西安网站漏洞免费自动生成小程序
  • 怎么修改网站信息同ip网站做301
  • 松江品划网络做网站logo设计网页