php接口怎么测试,接口测试怎么才能做好?
这个问题还是从需求、测试用例设计、执行来说吧。
A.需求首先要了解这个接口提供的服务的需求定义,那么我们就知道大概测试的结果是啥。同时理论上要先提供接口规范,方便后续测试,以及给调用者联调的一个文档约定。
根据测试的接口规范,基于业务进行场景设计,再结合边界值设计方法、等价类划分等常用设计方法进行用例设计。
1.设计的方向是常规的测试用例设计:协议规范测试、接口入参、接口出参。
协议规范测试:比如HTTP协议:URL地址、Header测试。不过一般情况下,默认调用者按照接口规范正常调用。这个不用过于详细测试。
2.接口入参:参数个数测试(注意是否必传字段),参数值测试(为空、正常值、非法值等,以及首尾有空格是否过滤)。
3.接口出参:至少涵盖一条成功的响应和一条失败的响应,当然我们测试出更多错误码,我们的覆盖率也就更全面。
4.业务场景用例:这个需要你对于这个接口的业务的了解程度,而且这是最重要的部分。
比如中间使用了缓存服务(第一次缓存没有,是不是直接读数据源,并存入缓存;第二次直接读取缓存是否正确);
比如需要考虑请求外部的接口获取相应的信息的时间损耗(连接不上外部接口,外部接口下线了,外部接口响应太慢);
C.测试用例执行1.需要你对接口协议有一定的了解,选择适当的开源工具(如postman)或者自己编写脚本进行模拟请求。
2.需要熟悉接口所使用的中间件等知识(比如redis、kafka、mysql数据库)。
3.需要模拟外部接口返回给你现在正在验证的程序的接口。(比如扣费业务,你不可能每测一个业务,就去调真实扣费)。
PHP可以开发APP吗?
PHP是一个后端语言,可以为app实现数据接口和数据处理,如果按照提问的角度而言,那肯定也算是可以的。
PHP的开发优势主要集中在网上开源代码巨大,框架众多,开发流程极短,可以很快的开发好自己的项目,基本没有什么比较长的开发流程,开发成本也低,学习起来也比较简单。这基本就是PHP语言web网站使用率如此高的原因之一。
所以你可以完全通过php来实现app的数据接口,然后再使用一些开源的h5前端框架,快速的开发出h5+app。整个开发周期和流程都会相对于其它编程需要来说短了不止一点,而且技术难度也会非常的低,很容易自学入门。
但是,如果选用php作为后端语言处理php的接口,也会存在以下的问题:
1.php相对于其它语言而言,性能不够优秀,如果是一个用户量请求量极大的网站,很容易出现各种问题。而这种层面的优化同样需要大量的人力物力,比如bilibili最开始就是php开发的,后来为了拥有更大的用户承载量而全面Golang化。
2.php存在一定程度的安全问题,因为它是海量中小网站普遍使用的语言,以前也出现过各种形式的安全漏洞。相对于java,Python等语言来说,php的安全性仍然有待考量。
3.php往往是配套h5+进行app开发,因为如果app再选用其它语言,基本完全失去了使用php的意义。但是h5+app也存在许多天然性的问题,比如无法上架苹果市场,性能消耗比原生大等。
最后,以上都是我的个人之见,因为自己也玩过一段时间的php开发,了解过这门语言当然的一些现状。
对于app的开发,个人还是建议如果选用开发流程低耗时短的策略,那么建议使用nodejs搭配vue或者mui框架的方式。如果要追求质量和性能,那么还是老老实实的学习原生的安卓开发方式吧。
CodeIgniter怎么样?
ThinkPHP
ThinkPHP(FCS)是一个轻量级的中型框架,是从Java的Struts结构移植过来的中文PHP开发框架。它使用面向对象的开发结构和MVC模式,并且模拟实现了Struts的标签库,各方面都比较人性化,熟悉J2EE的开发人员相对比较容易上手,适合php框架初学者。 ThinkPHP的宗旨是简化开发、提高效率、易于扩展,其在对数据库的支持方面已经包括MySQL、MSSQL、Sqlite、PgSQL、 Oracle,以及PDO的支持。ThinkPHP有着丰富的文档和示例,框架的兼容性较强,但是其功能有限,因此更适合用于中小项目的开发。
优点:
1.易于上手,有丰富的中文文档;
2.框架的兼容性较强,PHP4和PHP5完全兼容、完全支持UTF8等。
3. 适合用于中小项目的开发
缺点:
1.对Ajax的支持不是很好;
2.目录结构混乱,需要花时间整理;
3.上手容易,但是深入学习较难。
Yii
Yii 是一个基于组件的高性能php框架,用于开发大型Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。从 MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L10N,Yii提供了 今日Web 2.0应用开发所需要的几乎一切功能。事实上,Yii是最有效率的PHP框架之一。
优点:
纯OOP
用于大规模Web应用
模型使用方便
开发速度快,运行速度也快。性能优异且功能丰富
使用命令行工具。
缺点:
对Model层的指导和考虑较少
文档实例较少
英文太多
要求PHP技术精通,OOP编程要熟练!
View并不是理想view,理想中的view可能只是html代码,不会涉及PHP代码。
CodeIgniter
优点:
Code Igniter推崇“简单就是美”这一原则。没有花哨的设计模式、没有华丽的对象结构,一切都是那么简单。几行代码就能开始运行,再加几 行代码就可以进行输出。可谓是“大道至简”的典范。 配置简单,全部的配置使用PHP脚本来配置,执行效率高;具有基本的路由功能,能够进行一定程度的路 由;具有初步的Layout功能,能够制作一定程度的界面外观;数据库层封装的不错,具有基本的MVC功能. 快速简洁,代码不多,执行性能高,框架简 单,容易上手,学习成本低,文档详细;自带了很多简单好用的library,框架适合小型应用.
缺点:
本身的实现不太理想。内部结构过于混乱,虽然简单易用,但缺乏扩展能力。 把Model层简单的理解为数据库操作. 框架略显简单,只能够满足小型应用,略微不太能够满足中型应用需要.
评价:
总体来说,拿CodeIgniter来完成简单快速的应用还是值得,同时能够构造一定程度的layout,便于模板的复用,数据操作层来说封装的不 错,并且CodeIgniter没有使用很多太复杂的设计模式,执行性能和代码可读性上都不错。至于附加的library 也还不错,简洁高效。
Laravel 框架
优点:
Laravel 的设计思想是很先进的,非常适合应用各种开发模式TDD, DDD 和BDD,作为一个框
架,它准备好了一切,composer 是个php 的未来,没有composer,PHP 肯定要走向没落。
laravel 最大的特点和优秀之处就是集合了php 比较新的特性,以及各种各样的设计模式,
Ioc 容器,依赖注入等。
缺点:
基于组件式的框架,所以比较臃肿以上就是本章的所有内容了,大家感觉自己的项目使用那个框架进行编写就使用哪吧!其实还是选自己最熟悉的来用是最上手的!
如果只是做api网关的话,yaf更好,简单。
php哪个框架适合做api?
推荐 PhpBoot , 为快速开发 RESTful API 设计的PHP框架,它可以帮助开发者更聚焦在业务本身, 而将原来开发中不得不做, 但又重复枯燥的事情丢给框架, 比如编写接口文档、参数校验和远程调用代码等。
从问题本身来说,是否适合做API和框架关系不大。 框架解决的问题是提供一个优秀的程序架构,提高团队协作效率,提高代码可维护性等等。 实际上,选择框架还应该从更多的角度去衡量,比如是否易学,有没有足够强大的社区支持等等很多方面。其实我自己感觉最重要的还是个人喜好,有时候你喜欢一个东西可能说不出来太具体的理由,就是喜欢。
另一方面,开发 JSON 格式的 API,和开发以 HTML 为格式的网页没有本质区别,只不过是把输出由 HTML 改成 JSON 而已。 所以最重要的还是业务逻辑是什么,而不是开发的是 API 还是什么其他东西。
对接影视接口的公众号?
工具准备:一部已经登入微信的手机,一台电脑(另一部手机也行),一个已实名且满18岁的微信号(没有18岁可以拿长辈)。
微信公众号教程开始(一共就两步,5分钟搞定)
1,注册微信公众平台账号
电脑或备用手机打开微信公众平台进行注册微信订阅号(个人用户只能注册订阅号,用起来和公众号一样的。)
注册链接直达:https://url.cn/59FBoDt
2,登入和配置公众号
登入的时候需要使用已登入微信公众号的手机扫码。
登入后把页面滑到底部找到基本配置
进行修改配置(我已经启用了,没启用的先启用)
配置信息:
Url填:http://域名/wx_api.php
Token填:452776
(接口随时可能更新,请保存此教程链接以免失去组织)
配置如图: