第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何從 VSCode 在 docker 容器上更好地運(yùn)行 phpunit

如何從 VSCode 在 docker 容器上更好地運(yùn)行 phpunit

PHP
滄海一幻覺 2023-09-08 18:20:06
我正在嘗試使用更好的 phpunit 擴(kuò)展從 vs code 在 docker 容器上運(yùn)行 php 單元測試,但我無法讓它工作。到目前為止我所擁有的:-docker-compose.yml:-version: '3.1'services:    php:        build:            context: .            dockerfile: .docker/Dockerfile        image: laraboard        ports:            - 8000:80        restart: always        volumes:            - .:/var/www/html        networks:            - laraboard    mysql:        image: mysql:8.0        volumes:            - db_data:/var/lib/mysql        restart: always        ports:            - 3306:3306        environment:            MYSQL_DATABASE: laraboard            MYSQL_USER: root            MYSQL_PASSWORD: password            MYSQL_ROOT_PASSWORD: password        networks:            - laraboard    phpmyadmin:        depends_on:            - mysql        image: phpmyadmin/phpmyadmin        restart: always        ports:            - 8001:80        environment:            PMA_HOST: mysql            MYSQL_ROOT_PASSWORD: password         networks:            - laraboardnetworks:    laraboard:volumes:    db_data:設(shè)置.json:-"better-phpunit.docker.enable": true,    "better-phpunit.docker.command": "docker exec laraboard_php_1",    "better-phpunit.docker.paths": {        "c:/Users/Chris/Web/laraboard": "/var/www/html"    }ThreadTest.php:-<?phpnamespace Tests\Feature;use Illuminate\Foundation\Testing\RefreshDatabase;use Tests\TestCase;class ThreadsTest extends TestCase{    /** @test */    public function a_user_can_browse_threads()    {        $response = $this->get('/threads');        $response->assertStatus(200);    }}通過此設(shè)置,我收到錯(cuò)誤:-OCI 運(yùn)行時(shí)執(zhí)行失?。簣?zhí)行失?。篶ontainer_linux.go:346: 啟動(dòng)容器進(jìn)程導(dǎo)致“執(zhí)行格式錯(cuò)誤”:未知終端進(jìn)程“C:\Windows\System32\cmd.exe /d /c docker exec laraboard_php_1 /var/www /html/vendor/bin/phpunit.bat /var/www/html/tests/Feature/ThreadsTest.php --filter '^.*::a_user_can_browse_threads'" 終止,退出代碼:126。我哪里錯(cuò)了?
查看完整描述

1 回答

?
子衿沉夜

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊

這使我找到了解決方法,我已接受他的答案,但仍想擴(kuò)展它:-


我已經(jīng)找到了解決方法,但仍然覺得必須有更好的方法,因?yàn)樗匀淮嬖趩栴}:-


第一個(gè)問題是我在 docker.command 中使用了容器名稱而不是服務(wù)名稱,并且我需要輸入 bash:


"better-phpunit.docker.command": "docker exec php bash",

然后我必須按照 @Florian Engelhardt 的建議更改 phpunit 二進(jìn)制文件:-


"better-phpunit.phpunitBinary": "${workspaceFolderBasename}/vendor/bin/phpunit",

現(xiàn)在不再出現(xiàn)錯(cuò)誤并顯示 phpunit 幫助,所以我知道我已經(jīng)取得了進(jìn)展。


然后我不得不更改套件命令(我不知道為什么,但這也修復(fù)了單個(gè)測試運(yùn)行):-


"better-phpunit.suiteSuffix": "/var/www/${workspaceFolderBasename}/tests",

上面只是告訴 phpunit 測試 laravel 測試目錄中的所有內(nèi)容,我希望它使用 phpunit.xml 配置文件,但無法讓它工作,我已經(jīng)嘗試過,正如文檔所說,如果沒有找到配置,它將自動(dòng)拉"/var/www/${workspaceFolderBasename}"取在 .xml 中,但它沒有,我已經(jīng)嘗試過,"/var/www/${workspaceFolderBasename}/phpunit.xml"但這只是試圖測試 .xml。無論如何,上述解決方法有效,也許我會(huì)添加一個(gè)新問題phpunit.xml


運(yùn)行測試后,我注意到顏色不再起作用,所以我添加了:-


"better-phpunit.commandSuffix": "--colors=auto"

我的 settings.json 現(xiàn)在看起來像:-


"better-phpunit.docker.enable": true,

    "better-phpunit.docker.command": "docker-compose exec workspace bash",

    "better-phpunit.docker.paths": {

        "${workspaceFolder}": "/var/www/${workspaceFolderBasename}"

    }, 

    "better-phpunit.phpunitBinary": "${workspaceFolderBasename}/vendor/bin/phpunit",

    "better-phpunit.suiteSuffix": "/var/www/${workspaceFolderBasename}/tests",

    "better-phpunit.commandSuffix": "--colors=auto"

現(xiàn)在討論問題,在測試運(yùn)行時(shí),到目前為止,我發(fā)現(xiàn)任何使用 POST 請求測試表單的測試都會(huì)由于 CSRF 令牌不匹配而失敗,而如果我手動(dòng)運(yùn)行 phpunit,它們不會(huì)失敗。我仍然需要一個(gè)更好的解決方案,但目前上述解決方案可以滿足我的需求,我只是將其用作運(yùn)行單個(gè)測試然后手動(dòng)測試套件的快速方法。


查看完整回答
反對(duì) 回復(fù) 2023-09-08
  • 1 回答
  • 0 關(guān)注
  • 115 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)