Skip to Content
Async Rust ―高いパフォーマンスと安全性を両立するRustによる非同期処理
book

Async Rust ―高いパフォーマンスと安全性を両立するRustによる非同期処理

by Maxwell Flitton, Caroline Morton, 中田 秀基
July 2025
Intermediate to advanced
284 pages
4h 4m
Japanese
O'Reilly Japan, Inc.
Content preview from Async Rust ―高いパフォーマンスと安全性を両立するRustによる非同期処理

11章テスト

Rustで非同期システムを記述することが強力だということはわかった。しかし、Rustで大きな非同期システムを構築するには、非同期コードのテスト方法を知っておく必要がある。システムのサイズが大きくなれば、システムの複雑性も増大するからだ。

テストを行えば、実装中のコードからのフィードバックが多く得られ、安全なコードを速く書くことができるようになる。例えば、大規模なコードベースの一部の機能を変更したり追加したりする場合、システム全体を起動してコードが動作を確認するのは、時間もかかるし危険でもある。コードを変更した場合や必要なコードを追加した場合に、そのコードの部分だけに対してテストを行えば、フィードバックループを高速にできるし、エッジケースをテストできるようになり、コードをより安全にすることができる。本章では、非同期コードと、非同期コードと外部システムのインタフェースをテストするさまざまな手法を探求する。

本章を読めば、インタフェースのモックを作成し、それらのインタフェースに対する呼び出しを監視することで、隔離した環境でのテストを行えるようになる。これによって、完全に隔離されたテストを構築することができる。デッドロックや競合状態、チャネル容量の問題などの、非同期タスクを止めてしまう同期の落とし穴についてもテストできるようになる。最後に、サーバなどのネットワークインタラクションのモックを作成する方法を学び、さらに、すべてのフューチャを制御して細粒度にテストする方法と、ポーリングの条件が異なった場合に、システムの進行がどのように変わるかを知るためにポーリングを制御する方法についても学ぶ。

我々のテストの旅を、基本的な同期テストの説明から始めよう。

11.1 基本的な同期テスト ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Async Rust

Async Rust

Maxwell Flitton, Caroline Morton
Rust Web Programming

Rust Web Programming

Maxwell Flitton

Publisher Resources

ISBN: 9784814401185Publisher Website