[英]Simplecov with docker
我們最近將我們必須的應用程序遷移到 docker 和 docker-compose。
在沒有 docker 的情況下,我們曾經使用rspec spec
運行測試,例如,在使用 docker 時,我們會使用
docker-compose run app rspec spec
現在,在舊場景中,當我想要一份測試覆蓋率報告時,我會使用:
open coverage/index.html
不過,用 docker 試試這個是行不通的。 嘗試docker-compose run app open coverage/index.html
也不起作用。 事實上,我的項目下沒有名為coverage 的文件夾。
我嘗試在網上左右查找任何帶有 docker 的 simple-cov 示例,但找不到。 任何有關如何使其工作的提示都將不勝感激。
打開
您應該從本地文件夾而不是容器文件夾中打開coverage/index.html
。
當您說“實際上我的項目下沒有名為coverage 的文件夾”時。 ,你說的是容器項目文件夾還是本地項目文件夾?
如果在容器上運行rspec spec
命令后沒有/coverage
文件夾,請確保在其最頂部的spec/rails_helper
文件中啟動了 Simplecov:
require 'simplecov'
SimpleCov.start
在容器上運行rspec spec
后,應創建/coverage
文件夾並自動同步到本地項目文件夾,以便您可以在瀏覽器上打開coverage/index.html
文件。
如果它沒有自動同步,您可以使用docker compose cp
命令將其復制到本地文件夾中:
docker compose cp app:/app_root_folder/coverage/index.html ./coverage/index.html
在哪里:
app
是你的容器標簽app_root_folder
是您的Dockerfile
中的WORKDIR
./coverage/index.html
是本地計算機上的目標文件夾。 在嘗試從容器中復制它之前,請確保在本地目錄上創建了/coverage
文件夾。
mkdir coverage
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.