Pytestを使ってみる(その2:VSCode拡張機能編)
前回はPytestのインストールと簡単なサンプルを実行してみました。 今回はPytestを便利に使うVSCodeの拡張機能「Python Test Explorer for Visual Studio Code」を紹介したいと思います。 拡張機能のインストール # VSCodeを起動して「拡張機能」から「Python Test Explorer for Visual Studio Code」を検索して、インストールします。 VSCodeの左側のパネルの「テスト」を選択します...
記事を読むPytestを使ってみる(その1:準備編)
Pythonでプログラムを書いていて「TDD(テスト駆動開発)」にトライしてみたいと思ったことは無いでしょか? そんなときは「テスティングフレームワーク」がおすすめです。 JavaではJUnitが有名ですが、Pythonにもテスティングフレームワークが用意されています。 Pythonには標準装備の「unittest」というテスティングフレームワークがありますが、今回は人気のある「Pytest」を紹介します...
記事を読むペアワイズ法テストケース生成ツール「PictMaster」の直交表を使う
前回はペアワイズ法テストケース生成ツール「PictMaster」の”原型シート”機能(因子編)について紹介しました。 今回はペアワイズ法ではなく直交表を使って組み合わせテストケースを生成してみます。 直交表ってなに? # 直交表とは,複数の因子・水準の組み合わせにおいて、任意の2因子について「水準の組み合わせが同じ回数だけ現れる」という性質をもつ”組み合わせ表”を指します。 複数因子・水準を組み合わせてテストする時、因子間に「交互作用」が存在すると、テスト結果が影響を受ける場合があります...
記事を読むペアワイズ法テストケース生成ツール「PictMaster」の原型シートを使う(因子編)
前回はペアワイズ法テストケース生成ツール「PictMaster」の”原型シート”機能(水準編)について紹介しました。 前回は水準のみ変更しましたが、今回は「因子」を変更してみようと思います。 既存のテストケースに因子を追加する # 以下の例で考えてみましょう。 因子が a, b, c の3個で、それぞれが2水準の値を持っている場合を想定します。 2因子間網羅のテストケースは以下のようになりました。 テストケース数は合計4個でした。 次に、因子d(2水準)が追加になった場合を考えてみます...
記事を読むペアワイズ法テストケース生成ツール「PictMaster」の原型シートを使う(水準編)
前回はペアワイズ法テストケース生成ツール「PictMaster」の”カバレッジ指定”機能について紹介しました。 今回はPictMasterの”原型シート”機能について紹介したいと思います。 既存のテストケースを再利用する # ペアワイズ法を使えば複数の因子・水準からテストケースを効率よく生成できますが、網羅すればするほどテスト実行には時間も労力もかかります。 テスト対象の一部が変更になった場合に、”変更になった部分だけ”を追加でテストするテストケースを生成したい場合があります...
記事を読むViteベースの高速テスティングフレームワークVitestを使ってみる
現在JavaScriptのスタンダードなテスティングフレームワークと言えば、Jestかと思います。 Jestはそれ単体でテストランナー、マッチャーからモックまでテストに関する一通りの機能を網羅する万能なフレームワークです。 とはいえ、プロダクトがある程度の規模になってくるとテスト実行時間に不満を持っている方もいるかもしれません。 今回はJestに代わる新しいテスティングフレームワークのVitestを試してみたいと思います...
記事を読むAPI をシナリオベースでテストできる StepCI を試してみた
これは、豆蔵デベロッパーサイトアドベントカレンダー2022第22日目の記事です。 概要 # ここ数年、マイクロサービスの開発に携わっています。 そんな中で、イテレーティブにマイクロサービスの開発を続け、安定してリリースを続けるためにはAPI間のテストが重要であると実感しています。 これまでも、さまざまな方法を試してきましたが、たまたま目にしたStepCIが使いやすそうだったので、使用感を書いていきます...
記事を読むContract Testの使いどころを考える
これは、豆蔵デベロッパーサイトアドベントカレンダー2022第9日目の記事です。 前回の記事ではContract Testについてサンプルを交えて簡単に説明しました。その範囲では、どのようなケースで有効なアプローチなのかまでは紹介しきれていません。 今回は、Contract Testをどのように開発に取り入れるのが効果的なのかを、同じようにサンプルコードを使いながら考察していきます...
記事を読むContract TestツールPactの紹介
これは、豆蔵デベロッパーサイトアドベントカレンダー2022第3日目の記事です。 マイクロサービスのようにAPIを介して要素を結合させてシステムを構成する場合、要素間の結合可能性をどのように担保していますか。 要素単体でキッチリとテストを済ませて、いざテスト環境にデプロイしてみたらAPIの不整合で動かなかったような経験は、かなりの方にあるのではないかと思います。 APIの結合性をデプロイ前に検証するアイデアとしてContract Testという考え方があります...
記事を読むペアワイズ法テストケース生成ツール「PictMaster」のカバレッジ指定を使う
前回はペアワイズ法テストケース生成ツール「PictMaster」の”無効値”機能について紹介しました。 今回はPictMasterの”カバレッジ指定”機能について紹介したいと思います。 2因子より多い組み合わせ数を指定する # テスト対象の因子の数が多く、因子間の影響が2因子間に限定できない場合には、因子の組み合わせ数を2よりも大きくしたいケースがあります...
記事を読む