簡體   English   中英

無法為“貨物測試”提供 CLI 參數

[英]Unable to provide CLI arguments to `cargo test`

我曾經能夠從命令行界面運行特定的命名測試,如下所示: cargo test <test_name> 但是現在這給了我錯誤

running 1 test
error: Found argument '<test_name>' which wasn't expected, or isn't valid in this context

cargo test的其他論據也不起作用。

導致錯誤的行是測試設置中的這一行:

let cli_default_args = Arc::new(cli_args::Args::from_args());

其中cli_args::Args結構是保存命令行參數值的結構,而from_args函數來自StructOpt包派生。 cli_args::Args#[derive(StructOpt)]裝飾。

問題是用於cargo test的參數被解釋為應用程序的參數。

在測試設置中替換有問題的行

let cli_default_args = Arc::new(cli_args::Args::from_args());

let cli_default_args = Arc::new(cli_args::Args::from_iter::<Vec<String>>(vec![]));

解決問題。 上面的代碼意味着您的測試設置就像程序沒有獲得任何 CLI 參數一樣運行,一切都以其默認值運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM