Fragments of verbose memory

冗長な記憶の断片 - Web技術のメモをほぼ毎日更新

Jan 9, 2025 - 日記

AIによるスペックテストの変更をガードする方法

python-guard-spec-testcases cover image

テスト駆動開発(TDD)では、顧客の分析された顧客の要求仕様をテストケースとして初期段階に完成させますが、 開発者やAIがこのテストケースを変更してしまってはTDDの意味がありません。

本稿では、Pythonの pytest を使ってテストを書いている中で、顧客レビュー済みの**スペックテスト(仕様テスト)**を開発者が変更してしまうのを防ぐためのアイデアをご紹介いたします。

Jan 6, 2025 - 日記

GitHub Actions: cronジョブとして使う完全ガイド

github-actions-as-cron cover image

GitHub Actionsは、リポジトリのコードを基盤にCI/CDタスクを自動化するための強力なツールです。その中でも cron スケジュールを利用することで、特定のタイミングで定期的にジョブを実行できます。本記事では、GitHub Actionsを使ってcronタスクを設定する方法、利点と欠点、さらに具体的な利用例について解説します。

Jan 5, 2025 - 日記

uv のサブコマンドを分類して完全に理解した

python-uv-subcommands cover image

最近Python のプロジェクト管理ツールである uv を使い始めました。

そのサブコマンドは一見シンプルに見えますが、似たような機能に見えるコマンドがあるため 「どのコマンドを使えばいいの?」と戸惑うことがあります。 これは、 uv のサブコマンドに「低レベルの機能」と「高レベルのラッパー」が混在しているためです。

この記事では、 uv のサブコマンドを低レベルの機能と高レベルのラッパーに分類し、それぞれの役割や使いどころを整理してみます。特に、普段遣いで便利な高レベルのラッパーに注目し、効率的な使い方を解説します。

Jan 2, 2025 - 日記

pytest テスト実行中の状態を知るデバッグオプション --pdb

python-pytest-pdb cover image

pytest は Python 開発者にとって無くてはならないテストフレームワークです。その中でも、失敗したテストケースで即座にデバッガーを起動できる --pdb オプションは、テスト駆動開発 (TDD) やバグ修正において非常に便利な機能です。

この記事では、 --pdb の使い方、注意点、副作用、そしてその回避方法について詳しく解説します。

Jan 1, 2025 - 日記

SQLAlchemyでmypy型チェックエラーに対処する方法

python-sqlalchemy-mypy cover image

SQLAlchemyはPythonのデータベース操作を強力に支援してくれるライブラリですが、mypyなどの型チェックツールと組み合わせると問題が発生することがあります。この記事では、特にselect.where句で型エラーが発生するケースについて、再現例と解決策を詳しく紹介します。最近この現象でドハマリしたので備忘録です。