テスト関数の返却型を[[Result]]にすれば、[[Question mark operator]]が使える。 ```rust pub fn throw_dice(num: i32) -> Result<(), String> { match num { n if (1..=6).contains(&n) => Ok(()), n => Err(format!("Invalid number: {}", n)), } } #[cfg(test)] mod tests { use super::*; #[test] fn it_test() -> Result<(), String> { throw_dice(1)?; throw_dice(10)?; Ok(()) } } ``` [[Question mark operator]]以外で意図的にテストを失敗させたいときは、普通に[[Err]]を返してやればよい。