多平台统一管理软件接口,如何实现多平台统一管理软件接口
533
2023-03-19
本文目录一览:
测试用例
本例中,根目录的index.php的配置如下:
<?php
define('APP_NAME', 'example');
define('APP_PATH', '../example/');
define('APP_PHPUNIT', false);
define('APP_DEBUG', true);
require('../ThinkPHP/ThinkPHP.php');
?
首次访问之后,生成以下目录结构:
在example站点中新建文件夹,命名为“Testcase”。
测试Model
创建HelloModel.class.php:
<?php
class HelloModel extends Model
{
public function sayHello()
{
print 'Hello';
return 'Hello';
}
}
在Test文件夹中新建Test.php文件作为PHPUnit,其中注意require ThinkPHP作为初始化框架环境,另外在Think.class.php中,修改
start()函数中,App::run()为 !APP_PHPUNIT App::run();
该区分站点运行与测试用例。
<?php
define('APP_NAME', 'example');
define('APP_PATH', './../../example/');
define('APP_PHPUNIT', true);
require('./../../ThinkPHP/ThinkPHP.php');
class TestSayHello extends PHPUnit_Framework_TestCase {
public function setUp() { }
public function tearDown(){ }
}
在TestSayHello中加入测试用例:
public function testHelloModel()
{
$hello = D('Hello');
$this-assertTrue( $hello-sayHello('Hello') == 'Hello');
}
测试Action
修改IndexAction.class.php如下:
<?php
class IndexAction extends Action
{
public function index()
{
$hello = D("Hello");
return $hello-sayHello();
}
}
浏览器访问Index效果:
在TestSayHello中加入测试用例:
public function testHelloAction()
{
$hello = new IndexAction();
$this-assertTrue($hello-index() == 'Hello');
}
运行效果
运行Test.php效果如下:
Test通过,至此给ThinkPHP加上了单元测试。
JSONXML
XML: 是一种标记语言,设计的宗旨是传输数据
JSON: 轻量级的数据交换格式
APP接口主要是用JSON输出格式
APP接口输出格式三要素:
1. code::错误码
2. msg:错误码对应的描述
3. data:接口返回的数据
谁有权限调用APP接口,客户端需要带着凭证来调用APP接口
JWT的原理:
服务端认证之后,生成一个JSON对象,返回给用户。后续客户端所有请求都会带上这个JSON对象。服务端依靠这个JSON对象来认定用户身份。
组成: Header, Payload, Signature
1. Header
说一下我是什么
header通常包含了两部分:类型和加密算法
{
"alg": "HS256",
"typ": "JWT"
}
header需要经过Base64Url编码后作为IWT的第一部分。
2. Payload
payload包含了claim, 三种类型reserved, public, private
reserved这些claim是JWT预先定义的,不强制使用,常用的有:
1). iss: 签发者
2). exp: 过期的时间戳
3). sub: 面向的用户
4). aud: 接收方
5). iat: 签发时间
{
"sub": "1234567890",
"name": "John Doe",
"admin": true
}
payload需要经过Base64Url编码后作为JWT的第二部分。
3. Signature
创建签名使用编码后的header和payload以及一个密匙,使用header中指定的签名算法进行签名
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
secret
)
签名是在服务端进行的,客户端并不知道,所以是安全的。
关于php接口输出测试用例和php接口测试工具的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 php接口输出测试用例的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php接口测试工具、php接口输出测试用例的信息别忘了在本站进行查找喔。版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~