Swoft单元测试基本坑

4 篇文章 0 订阅
2 篇文章 0 订阅

前言:

基于项目中使用swoft写Api接口服务,要求使用phpunit单元测试,趟过两个大坑。

1. 报各种类的找不到,原因是swoft框架测试基础类SwoftTest\Testing\TestApplication 无法自动加载。
解决办法:需要手动加载,更改文件test/bootstrap.php
<?php
use Composer\Autoload\ClassLoader;
use SwoftTest\Testing\TestApplication;


/** @var ClassLoader $loader */
$loader = require dirname(__DIR__) . '/vendor/autoload.php';

$componentDir  = dirname($loader->findFile("Swoft"), 2);
$componentJson = $componentDir . '/composer.json';
$composerData  = json_decode(file_get_contents($componentJson), true);
foreach ($composerData['autoload-dev']['psr-4'] as $prefix => $dir) {
    $loader->addPsr4($prefix, $componentDir . '/' . $dir);
}
//$FormPage= new \App\Testing\Entity\FormPage();
//var_dump($loader);die;

$application = new TestApplication();
$application->setBeanFile(__DIR__ . '/testing/bean.php');
$application->run();
2. 报关于协程的错误
PHP Fatal error:  Uncaught Swoole\Error: API must be called in the coroutine in /webroot/vendor/swoft/connection-pool/src/AbstractPool.php:296
解决办法:

到swoft兄弟项目Hyperf测试组件,把co-phpunit复制到你想放到的位置,我自己放到vender/bin/目录下,执行测试时用vendor/bin/co-phpunit就可以了。

[root@you webroot]# vendor/bin/co-phpunit --configuration phpunit.xml --coverage-text --colors=never
PHPUnit 7.5.18 by Sebastian Bergmann and contributors.

.....                                                               5 / 5 (100%)

Time: 4.77 seconds, Memory: 38.00 MB

OK (5 tests, 5 assertions)

Generating code coverage report in HTML format ... done


Code Coverage Report:      
  2019-12-18 19:47:35      
                           
 Summary:                  
  Classes:  2.33% (2/86)   
  Methods:  3.67% (19/518) 
  Lines:    4.55% (61/1340)

后续再有什么坑,之后再写!!!!!!
个人SWOT分析是一种评估个人优劣势的工具,以下是我对半导体测试方面的个人SWOT分析: Strengths(优势): 1.良好的半导体测试技能和知识,包括测试方法、测试设备、测试分析等方面的知识。 2.能够独立思考和解决问题,并在压力下保持冷静。 3.具有良好的团队合作能力,能够与其他测试工程师、设计师和生产人员进行有效的沟通和合作。 4.具有良好的时间管理能力和灵活性,能够在紧张的测试进度下高效地完成任务。 Weaknesses(劣势): 1.在某些情况下可能会缺乏创造性和创新性,需要更多地思考如何改进测试方法和流程。 2.有时可能会过于关注细节,而忽略了整体的目标和战略。 3.需要更多的经验和知识来应对复杂的测试场景和问题。 4.有时可能会过于依赖自己的经验和知识,而忽略了团队中其他成员的建议和贡献。 Opportunities(机会): 1.随着新技术的不断涌现,半导体测试领域的需求不断增加,为个人提供了更多的职业机会和发展空间。 2.可以通过与其他领域的专业人士进行合作和交流,扩大自己的知识面和技能。 3.通过参加行业会议和研讨会等活动,可以了解最新的测试技术和趋势,提高自己的竞争力。 4.可以参与到新产品的测试和开发中,为自己的职业发展提供更多的机会和挑战。 Threats(威胁): 1.随着全球半导体市场的竞争加剧,测试成本和效率成为了一个重要的考虑因素,对测试工程师的要求也越来越高。 2.新技术的涌现和快速变化,需要测试工程师不断更新自己的知识和技能,否则可能会被淘汰。 3.半导体测试领域的工作压力较大,需要具备较强的心理承受能力和抗压能力。 4.在测试过程中出现的错误和问题可能会对产品质量和公司声誉造成不良影响,需要测试工程师具备高度的责任感和敬业精神。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值