xshell5 绿色版,启动时提示缺少 MSCVP110.dll,在各网站下载了对应的Dll文件,依然尝试无果;最后我在xshell 官网下载 xshell6 个人版安装包,安装完就可以使用,旧 xshell5的session 文件夹路径大概是 Data\Settings\NetSarang\Xshell\Sessions中,将下面的文件复制到 新安装的 xshell6 默认数据地址下的6\Xshell\Sessions下就可以了。Xshell 启动报缺少msvcp110.dll文件,参考了该文才决定使用安装包安装,而不是继续找缺失的dll文件,尝试启动绿色版的xshell5
参考 Test Driven API Development using Laravel, Dingo and JWT with Documentation
php artisan vendor:publish --provider="Dingo\Api\Provider\LaravelServiceProvider"Illuminate\Database\QueryException: could not find driver (SQL: select * from sqlite_master where type = ‘table‘ and name = migrations)的错误信息,在php artisan migrate gives me an error could not find driver 找到解决方法,在 ubuntu中运行 sudo apt-get install php-sqlite3.laravel项目不是运行在根目录下,修复直接访问 http://localhost/blog/public/api时,会 301 重定向到 http://localhost/api下, 修改 .htaccess 文件中的RewriteRule ^(.*)/$ /$1 [L,R=301] 为 RewriteRule ^(.*)/$ public/$1 [L,R=301], 参考链接: Removing "/public" from URL (Where does Laravel get the base URL from?)
phpunit testunits 说明 phpunit 单元测试--laravel[持续更新]
测试类中的所有方法必须为public 修饰并且以test开头的public function test*(){}方式
phpunit tests/FruitsTest.php为phpunit tests/Feature/FruitsTest.php,测试类中的方法名必须已test关键字开头,如文章中的it_fetches_fruits 得改为 testit_fetches_fruits,运行phpunit测试的时候,phpunit 才会执行这个方法laravel .env default mysql config back
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret我根据教程和目前的语法写了一遍,基本了解清楚了在有dingo/api和jwt auth的情况下,如何写单元测试;我 学习该phpunit的 github 项目地址 github链接
如何写单元测试一直是我个人的空白
swagger-codegen-cli 2.2.1版本运行生成命令会报,如果 operationId 没有定义为空,会提示
Exception: null
    at io.swagger.codegen.DefaultGenerator.processOperation(DefaultGenerator.java:796)使用 2.3.1版本,在path中的operationId为空,会自动生成operationId
如:
[main] WARN io.swagger.codegen.DefaultCodegen - Empty operationId found for path
: post /user/login. Renamed to auto-generated operationId: userLoginPost最后生成 swagger.json文件,但是我windows 7 下生成的swagger.json 文件编码是GB2312,在 swagger-ui中显示的中文会乱码
windows下运行,需要加上set JAVA_OPTS=-Dfile.encoding=UTF-8,ASP.NET Core 1.0
java -jar swagger-codegen-cli-2.3.1.jar generate  -i swagger.yaml -l swagger -o tests 我将 swagger-codegen-cli-2.3.1.jar 放入到 opt中:
java -jar /opt/swagger-codegen-cli-2.3.1.jar generate -iswagger.yaml -l swaggerLinux(我的vagrant安装了ubuntu xenial执行同一个命令后)生成的swagger.json文件编码(Encoding)是 UTF-8,使用swagger ui 访问,中文显示正常
在Jenkins中,因为我项目中的 swagger的yaml是分开的,所以需要借助其它工具进行合并 其它的yaml文件为一个大的 swagger.yaml,工具链接swagger-merger
目前只用到 jenkins 通过 Publish over ssh插件进行自动部署,运行的案列:
cd /var/www/html/testapi # 进入 testapi 目录中
/usr/src/node-v8.11.1-linux-x64/bin/swagger-merger -i ./yamlmerge/main.yaml -o ./yamlmerge/swagger.yaml # 合并yaml文件
java -jar /opt/swagger-codegen-cli-2.3.1.jar generate -i yamlmerge/swagger.yaml -l swagger -o public/api # 将swagger.yaml 转换为swagger.json 并输出(放)到 public/api 目录中sed -i 直接替换文件中的内容不输出,
如 将 laravel .env中的 QUEUE_DRIVER=sync 替换为 QUEUE_DRIVER=redis, 在Laravel的项目根目录中运行命令:
sed -i "s|QUEUE_DRIVER=sync|QUEUE_DRIVER=redis|" .env
其中的 s是替换指定字符
原文:https://www.cnblogs.com/fsong/p/9180683.html