Đây là một điều đáng sợ vì tôi đã xây dựng các bộ thử nghiệm dựa trên Hspec, trong đó tất cả các màu đều hoạt động bình thường. Nhưng trong dự án này, tôi không thể có được màu sắc xuất hiện khi chạy tất cả các bộ thử nghiệm cùng một lúc.Khi sử dụng "kiểm tra ngăn xếp", đầu ra kiểm tra hspec của tôi không được tô màu
project.cabal tôi được thiết lập như thế này:
test-suite unit
type: exitcode-stdio-1.0
main-is: SpecMain.hs
hs-source-dirs: tests/unit
other-modules: WikiSpec
default-language: Haskell2010
ghc-options: -Wall -fno-warn-orphans -threaded
build-depends: base >=4.6
...
test-suite integration
type: exitcode-stdio-1.0
main-is: SpecMain.hs
hs-source-dirs: tests/integration, webapp
other-modules: ApiSpec
default-language: Haskell2010
ghc-options: -Wall -fno-warn-orphans -threaded
build-depends: base >=4.6
...
Và sau đó SpecMain.hs tác phẩm của tôi (giống hệt nhau) chứa này:
{-# OPTIONS_GHC -F -pgmF hspec-discover #-}
Vì vậy, khi tôi chạy stack test
, tất cả các thử nghiệm của tôi chạy, nhưng đầu ra không được tô màu. Nếu tôi chạy stack build --file-watch --test
, các thử nghiệm sẽ chạy, nhưng nếu có bất kỳ lỗi nào thì tất cả đầu ra có màu đỏ. Cuối cùng, nếu tôi chạy stack test weblog:unit
hoặc stack test weblog:integration
thì màu sẽ kết thúc chính xác như chúng cần. Tiêu đề có màu trắng, các thử nghiệm đi qua có màu xanh lục, các thử nghiệm không có màu đỏ và các thử nghiệm đang chờ xử lý có màu vàng.
Khi tôi đang phát triển tích cực, tôi có xu hướng phụ thuộc vào stack build --file-watch --test
, nhưng tôi thực sự cần màu sắc phù hợp.
Cho bất kỳ ai trong số các bạn biết điều gì đang diễn ra, cách tôi có thể khắc phục điều này hoặc thông tin bổ sung nào tôi cần cung cấp?
Hm, không thể sao chép bằng biến thể không sử dụng khám phá hspec và Stack 1.0.4. Điều đó đang được nói, bạn sử dụng vỏ nào? Ngoài ra, bạn đã thử tô màu đầu ra bằng tay với '--test-arguments '--color" '? – Zeta
Điều đó thật thú vị. 'stack test --test-arguments" --color "' hoạt động. Điều này sẽ giúp, nhưng nó khiến tôi băn khoăn về cách dự án hiện tại của tôi khác với dự án khác. –