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

企业门户网站费用看别人的wordpress

企业门户网站费用,看别人的wordpress,北京专业快速建站制作,优化搜索引擎思想#xff1a; 1、基本目录的搭建 report:静态输出目录(报告或者日志) data#xff1a;静态输入目录(可以存放Excel数据#xff0c;被读取的一些数据) utils:实用方法层(这里存放的是项目的公共方法#xff0c;一般拿到别…思想     1、基本目录的搭建         report:静态输出目录(报告或者日志)                  data静态输入目录(可以存放Excel数据被读取的一些数据)                  utils:实用方法层(这里存放的是项目的公共方法一般拿到别的项目可以直接使用列如读取Excel中的数据连接数据库)                  apis:接口请求层(这里封装的方法一般都是和项目有关系列如发送post请求发送get请求登录接口注册接口支付接口加入购物车接口)                  testcases:用例目录(用来存放项目中涉及到的用例用例即包含单接口用例也包含关联接口用例管理目录时也可以通过目录分层结构管理)                  conftest:这里存放的是fixture只对文件的所在目录生效如果只是单目录用例那么可以在根目录下创建如果分为分层目录结构的用例那么为了                                    满足当前目录的用例可以在该目录下创建一个conftest用来存放fixturefixture是pytest框架的根髓                  pytest.ini:是pytest的配置文件可用来存放一些运行配置项如-v -s 或者配置日志输出渠道该文件的具体配置可百度学习              2、接口框架的重要思想》金字塔的配置                  ①reportdata---》utilsapis---》conftest---》pytest.ini---》testcases                  ②以上相当于金字塔结构从左至右为从底部到顶部的过程                  ③金字塔精髓之处在于(上部依赖底部底部不依赖于上部)举一个列子(testcases中的用例需要调用apis目录中的接口请求方法而apis不会去主动调用testcases)所以                      在工作中我们如果修改了某一个文件需要往上找看看谁调用了这个文件相对应的进行修改 ##########################utils中的db.py的封装 import pymysql# # # 1. 连接数据库 # conn pymysql.connect( # host服务器地址, # port3306, # user用户名, # password密码, # db数据库名 # ) # # 2. 建立游标 # cur conn.cursor(pymysql.cursors.DictCursor) # 没有s 有括号 # # # 3. 执行sql # # 3.1 执行查询 # cur.execute(SELECT * FROM cardInfo WHERE cardNumberhzc_00011;) # conn.commit() # # 获取结果 # result cur.fetchall() # # result cur.fetchone() # 取一条少一条 # # cur.fetchmany(3) # print(result) # # # 3.2 执行修改 # # cur.execute(DELETE FROM cardInfo WHERE cardNumberhzc_00011;) # # conn.commit() # # # 4. 关闭 # cur.close() # conn.close()class DB(object):def __init__(self):self.conn pymysql.connect(host服务器地址,port3306,user用户名,password密码,db数据库名,autocommitTrue)self.cur self.conn.cursor(pymysql.cursors.DictCursor) #添加此配置项默认commit了即建立游标def do_sql(self, sql):print(执行sql, sql)self.cur.execute(sql) #执行sql语句# self.conn.commit() return self.cur.fetchall() #返回查询到的所有结果class FuelCardDB(DB): #继承DB执行具体的sql语句def del_card(self, card_number):执行删除语句self.do_sql(fDELETE FROM cardInfo WHERE cardNumber{card_number})def check_card(self, card_number):执行查询语句result self.do_sql(fSELECT * FROM cardInfo WHERE cardNumber{card_number};)if result:return Truereturn Falsedef add_card(self, card_number):执行添加语句result self.check_card(card_number)if not result:self.do_sql(fINSERT INTO cardInfo (cardNumber) VALUES ({card_number});) #######################api文件的封装 思想该文件可以将不同的请求方法不同的请求地址接口封装成一个类然后在用例层用到了哪一个就去调取哪一个 以下实列是添加加油卡项目 import requestsDATA_SOURCE_ID bHRzclass Api(object):def __init__(self, base_url):self.url base_url /gasStation/processself.session requests.session()def add_fuelcard(self, card_number):json_data {dataSourceId: DATA_SOURCE_ID, methodId: 00A, CardInfo: {cardNumber: card_number}}res self.session.post(self.url, jsonjson_data)print(res.text)return resdef bind_card(self, user_name, id_type, id_number, card_number):json_data {dataSourceId: DATA_SOURCE_ID,methodId: 01A,CardUser: {userName: user_name,idType: id_type,idNumber: id_number},CardInfo: {cardNumber: card_number}}res self.session.post(self.url, jsonjson_data)print(res.text)return resdef query_card(self, user_id, card_number):#dataSourceIdbHRjczExuserId1039cardNumber1111111111methodId02Aparams {dataSourceId: DATA_SOURCE_ID,methodId: 02A,userId: user_id,cardNumber: card_number}res self.session.get(self.url, paramsparams)print(res.text)return res 思想该文件下主要封装的是fixtures方法即为了简化用例层步骤可以将操作前提步骤和过程步骤在此文件下完成在该文件下 有一个base_url,这个是安装的插件安装方法为pip install pytest-base-url import pytest from utils.db import FuelCardDB from apis.fuelcard_api import Apipytest.fixture(scopesession) def db():#实例化一个对象return FuelCardDB()pytest.fixture(scopesession) def api(base_url):#实例化一个对象并将配置文件中的base_url传给Api层的方法return Api(base_url)pytest.fixture def del_card(db):def _del_card(card_number):db.del_card(card_number)yielddb.del_card(card_number)return _del_card #######################pytest.ini文件的封装 思想上述已说明该文件为pytest框架的配置文件即运行用例时会默认执行该文件操纵注意表达格式conftest文件和api文件中 都用到了base_url,就是这里的base_url目的是当服务器地址变了之后不用去接口层去一一修改服务器地址只需要修改这里的地址就行但是 如果接口的请求地址变了就要去一一修改了毕竟针对不同的请求地址封装了不同的方法 [pytest] addopts -s --htmlreports/report.html --self-contained-html testpaths testcases base_url http://***.***.***.***:*** #######################总结 ①接口的主要框架基本已经出来了当我们需要其他方法时可以再去相对应的添加例如读取excel表格数据的方法可以再封装到utils目录下 ②如果需要公共的方法时可以去百度查一下别人写好的模块说实话自己写半天也不如人家封装好的实用性更高我们的目标就是会使用别人封装好的方法就OK了 ③如果涉及到自己的业务模块就要自己去封装了例如上面所说的api文件conftest文件都是和业务相关的 ④对于初级的自动化测试人员最主要的不是去写框架而是去运用好别人写好的框架来设计用例写用例 ⑤一条用例的基本流程测试环境准备、测试数据准备、发送数据、获取数据响应结果、设置断言、环境清理 总结 感谢每一个认真阅读我文章的人 作为一位过来人也是希望大家少走一些弯路如果你不想再体验一次学习时找不到资料没人解答问题坚持几天便放弃的感受的话在这里我给大家分享一些自动化测试的学习资源希望能给你前进的路上带来帮助
http://www.zqtcl.cn/news/869532/

相关文章:

  • 淘宝客做网站备注怎么写的用手机做网站视频
  • 深圳专业网站建设制作价格低品牌网站建设网站
  • 织梦体育网站模板临沂建站程序
  • 重庆网站设计最佳科技好听的网络公司名字
  • 如何在人力资源网站做合同续签贵阳网站建设搜王道下拉
  • 多个域名的网站北京注册公司流程
  • 网站建站对象定制网站系统
  • 阳光家园广州网站网站公司怎么做的好
  • wordpress网站音乐放不全阳山做网站
  • 橙色企业网站源码网站下载软件
  • 满足客户的分销管理系统seo搜索引擎优化技术教程
  • 链接网站制作住房建设部官方网站专家注册
  • 北京保障性住房建设投资中心网站以网络营销为主题的论文
  • 数字火币交易网站开发网站建设设计图图片
  • 惠民建设局网站东莞公司建设网站
  • 网站建设与维护教学课件煤炭网站建设规划书
  • 北京建设网站有哪些公司黄陌陌网站怎么做
  • 视频网页制作教程网站优化防范
  • 做优化网站注意什么开发者模式开着好不好
  • 网站顾客评价网站中怎么做网站统计
  • 网站建设安全措施表白网站是怎么做的
  • 一个服务器可以做几个网站百度北京公司地址全部
  • 武侯区网站建设哪里好点个人社保缴费比例是多少
  • 创建属于自己的网站定制应用软件有哪些
  • 网站建设类岗位建设工程施工合同示范文本2023最新版
  • 建站设计公司wordpress 跨域 cros
  • 做网站的公司哪好工程设计东莞网站建设技术支持
  • 虹口网站开发开发公司设计管理部绩效考核
  • 网站改版升级通知国外服务器公司有哪些
  • 做网站的s标的软件深圳网站建设 湖南岚鸿