Skip to Content
DevOpsのためのPython
book

DevOpsのためのPython

by Noah Gift, Kennedy Behrman, Alfredo Deza, Grig Gheorghiu
March 2025
Intermediate to advanced
506 pages
8h 3m
Japanese
O'Reilly Media, Inc.
Content preview from DevOpsのためのPython

第8章 Pytest for DevOps DevOpsのためのPytest

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

継続的インテグレーション、継続的デリバリ、デプロイ、そして一般化されたパイプラインのワークフローは、それなりに考え抜かれたものであれば、検証で埋め尽くされる。この検証は、あらゆる段階で、そして重要なオブジェクトを達成するときに起こりうる。

例えば、デプロイを作成するための長いステップの途中で、重要なファイルを取得するためにcurl コマンドが呼び出された場合、それが失敗してもビルドを継続すべきだと思うだろうか?おそらくそうではないだろう!curl には、HTTPエラーが発生した場合にゼロ以外の終了ステータス(--fail )をプロデューサするために使用できるフラグがある。この単純なフラグの使い方は、検証の一種である。リクエストが成功したことを保証し、そうでなければビルドステップを失敗させる。キーワードは、何かが成功したことを保証することであり、これがこの章の核心である。

Pythonがミックスされ、pytest のようなテストフレームワークを利用してシステムの検証を扱えるようになると、検証について考えることがより満足のいくものになる。

この章では、驚異的なpytest フレームワークを使った Python でのテストに関連するいくつかの基本をレビューし、次にフレームワークのいくつかの高度な機能に飛び込み、最後にシステム検証を行うことができるpytest のプラグインであるTestInfraプロジェクトについて詳しく説明する。

pytestでスーパーパワーをテストする

pytest ・フレームワークについて、私たちは良いことを言い尽くすことができない。Holger Krekelによって作成されたこのフレームワークは、現在多くの人々によってメンテナンスされており、私たちの日常業務の一部となっている高品質のソフトウェアをプロデューサとして素晴らしい仕事をしている。フル機能のフレームワークであるため、プロジェクトの完全なドキュメントを繰り返すことなく、有用な紹介を提供できるほど範囲を絞り込むのは難しい。

チップ

pytest 、そのドキュメントには多くの情報、例、機能の詳細があり、目を通す価値がある。プロジェクトが新しいリリースやテストを改善するさまざまな方法を提供し続けているため、学ぶべき新しいことが常にある。

Alfredoが初めてフレームワークに触れたとき、彼はテストを書くのに苦労していて、Pythonの組み込みのunittest (この章ではこの違いを後で説明する)を使ったテストのやり方に従うのが面倒だと発見した。彼がpytestの魔法のようなレポートに夢中になるのに数分かかった。それは、彼がこれまで書いてきたテストの方法から離れることを強いるものではなく、何の修正もなく、箱から出してすぐに動いた!この柔軟性はプロジェクト全体に表れており、現在では不可能なことでも、プラグインや構成ファイルによって機能を拡張することができる。

よりわかりやすいテストケースの書き方を理解し、コマンドラインツール、レポーティングエンジン、プラグインの拡張性、フレームワークのユーティリティを活用することで、間違いなく全体的に良くなるテストをもっと書きたくなるだろう。

pytestを使い始める

最も単純な形として、pytest は Python のテストを発見して実行するコマンドラインツールである。ユーザが内部を理解することを強制しないので、簡単に使い始めることができる。このセクションでは、テストの書き方から(自動的に検出されるように)ファイルをレイアウトする方法まで、最も基本的な機能のいくつかを紹介し、最後に ...

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

FastAPIで生成型AIサービスを作る

FastAPIで生成型AIサービスを作る

Alireza Parandeh

Publisher Resources

ISBN: 9798341625402