タグ

testに関するokinakaのブックマーク (115)

  • API シナリオテストツール Postman・Tavern・runn 徹底比較 – 私が runn を選んだ理由 - TechDoctor開発者Blog

    はじめに はじめまして、テックドクターでバックエンドエンジニアをしている筧と申します。 最近、弊社では API の品質を担保するために「API シナリオテスト」をプロダクトに導入しました。今回は、この API シナリオテストのツールである Postman(+Newman)、Tavern そして runn を比較し、最終的に runn を選んだ理由をご紹介します。 API シナリオテストとは? API シナリオテストとはなんでしょうか? 開発におけるテストといえば、ユニットテストや結合テスト、API テストや E2E テストなどをよく耳にします。しかしAPI シナリオテストという言葉はあまり聞き馴染みがないという方も多いかもしれません。 API シナリオテストは API テストの一種で、複数の API を連鎖的に呼び出して実行するテストです。以下の特徴を持っています。 複数の API を順序

    API シナリオテストツール Postman・Tavern・runn 徹底比較 – 私が runn を選んだ理由 - TechDoctor開発者Blog
  • Goのテストをはじめてみよう(2025年版) | フューチャー技術ブログ

    春の入門祭り2025 13目の記事です。 はじめに製造エネルギー事業部の辻です。Goのテストをはじめてみよう、という記事です。 この記事は、5年前の2020年に私が執筆したGoのテスト入門記事(Goのテストに入門してみよう!)のリメイク版です。当時は執筆したときのGoのバージョンは1.14でした。記事はありがたいことに継続的に反響をいただいていたものの、いくつか記述が古くなっていた点がありました。そこで今回Go1.15以降で導入された機能や、周辺のアップデート等を取り込み、改良しました。 Go のテストに関するヒント集としてお役に立てれば幸いです。 TipsGo のテストの仕組みに、ベンチマークに関するテストと Example テストというサンプルコード用のテストも含まれているのですが、この2つは対象外にします。基礎的と思われる内容から順に並べてみました。 Tips テストがしたい テス

    Goのテストをはじめてみよう(2025年版) | フューチャー技術ブログ
  • runn と Testcontainers で「ちょうどいい」Go API テスト - Techtouch Developers Blog

    はじめに バックエンド API のテスト事情 バックエンドのテスト構成(これまでとこれから) テスト構成分類(これまで) テスト構成分類(これから) 「ちょうどいい API テスト」とは API テストに求める価値 実行の容易性 メンテナンスのしやすさ 技術選定のポイント runn の採用理由 Testcontainers の活用 実装例 API サーバー実体 APIテスト runn シナリオ APIテストコード おわりに はじめに バックエンドエンジニアの nome です。花粉症🤧なのでこの時期はリモート仕事の幸せを改めて実感しています。 テックタッチのバックエンドAPIでは、これまでユニットテストと Postman による API 統合テストを中心に自動テストを実施してきましたが、テストカバレッジの不足や実行・メンテナンスコストの課題がありました。 記事では、これらの課題を解決する

    runn と Testcontainers で「ちょうどいい」Go API テスト - Techtouch Developers Blog
  • テスト自動化の前に大切にしていることについて発表してきた - ブロッコリーのブログ

    はじめに この記事はソフトウェアテスト Advent Calendar 2024の8日目の記事です。 昨日、登壇してきました 昨日、ソフトウェアテスト自動化カンファレンス2024というイベントで登壇してきました。 登壇資料はこちらです。 speakerdeck.com 「振る舞い駆動開発(BDD)におけるテスト自動化の前に大切にしていること」と題して、BDDにおける大切な「発見(Discovery)」と「定式化(Formulation)」について発表してきました。 今回の発表を行ったきっかけ 今回このような発表を行った理由は、BDDについて考えている人たちが訴えているBDDの3つの要素が、あまり世の中に浸透していないと感じているからです。 特に、BDDというと「自動化(Automation)」の部分ばかりに目が行きがちですが、それ以前に「発見(Discovery)」と「定式化(Formul

    テスト自動化の前に大切にしていることについて発表してきた - ブロッコリーのブログ
    okinaka
    okinaka 2024/12/09
  • E2Eテストにおける要素選択のベストプラクティス

    こんにちは。Autifyの品質エバンジェリストの末村です。 もう5年前にもなりますが、なぜE2Eテストでidを使うべきではないのかという記事を書きました。この記事はありがたいことに長い間閲覧されており、弊社ブログの人気コンテンツの一つとなっています。 一方で、5年という歳月はソフトウェア開発のトレンドを変化させるには十分すぎるほどに長いです。テストツールの面では Playwright が新たな選択肢として加わった他、 testing-library によるアクセシビリティ属性を用いた要素探索が新たなベストプラクティスとして登場しています。 この記事では、E2Eテストにおける要素探索の考え方の変遷をおさらいしつつ、ベストプラクティスについて説明します。 要素選択の考え方 まずは、要素選択の考え方についておさらいしておきましょう。要素選択とは、読んで字の如く、Webページ内の特定の要素を探すこ

    E2Eテストにおける要素選択のベストプラクティス
  • Introduction - Testcontainers for Go

  • DockertestとLocalStackを使って 外部サービスに依存した多要素認証の 動作確認・テストをした話 / A story about using Dockertest and LocalStack to check and test the operation of multi-factor authentication that depends on external services

    2024/06/08: Go Conference 2024 https://gocon.jp/2024/ DockertestとLocalStackを使って 外部サービスに依存した多要素認証の 動作確認・テストをした話 西田 智朗 ソフトウェアエンジニア

    DockertestとLocalStackを使って 外部サービスに依存した多要素認証の 動作確認・テストをした話 / A story about using Dockertest and LocalStack to check and test the operation of multi-factor authentication that depends on external services
  • Goでtime.Now()を使用している箇所のテストについて

    概要 time.Now()を使用している箇所のテストがしづらいと感じたのでその際のメモ 結論:contextにtime.Now()で生成する方法を採用 既存のコード func Hoge() { todo := GetTodo() if IsTimeAfter(todo.StartTime) { ... } } func IsTimeAfter(startTime time.Time) { currentDate := time.Now() // テストを実行する時刻に依存する。現在日時を固定にしたい。 return startTime.After(currentDate) } func Hoge() { todo := GetTodo() currentDate := time.Now() if IsTimeAfter(todo.StartTime, currentDate) { ...

    Goでtime.Now()を使用している箇所のテストについて
  • エディタ内でテスト結果が表示される開発体験を、エディタに依存せず実現するツールを作った

    エディタ上でテストのエラーを表示することができるLSPサーバとその周辺ツールを作りました。 ⚠️ Notice この記事に記載したツールの使用方法はアップデートに追従しておらず古くなっているため、使用する場合は適宜リポジトリのREADMEを参考にしたりIssueを立ててください。 動機 数ヶ月前にこの記事を見ました。 Wallaby.jsを使ってフロントエンド開発のテストを効率化しよう - Findy Tech Blog https://tech.findy.co.jp/entry/2024/04/15/100523 エディタ上でリアルタイムにテスト結果が反映される開発体験が大変魅力的に見えます。 私は普段Neovimを使用しているので、この記事を見てすぐ、Neovimでも同じようなことがやりたい、と考えました。Wallaby.jsはNeovim用の拡張は用意していないようだったので、その

    エディタ内でテスト結果が表示される開発体験を、エディタに依存せず実現するツールを作った
  • Readable end-to-end tests for PHPStan with bashunit

  • Playwrightでメール配信のテスト自動化にチャレンジ! - JX通信社エンジニアブログ

    こんにちは、JX通信社でシニアエンジニアをしているSirosuzumeです。 JX通信社の「FASTALERT」には、ユーザーが事前に設定した地域で発生した災害情報を、メールで受信する機能があります。 しかしテストする手順も複雑で、配信条件も多様化していったこともあって、手動でのテストを行うことに限界を感じていました。 設定画面の挙動確認など、ブラウザ上で完結するテストであればPlaywrightを使って自動化することもできていたのですが、実際にメールを受信するところのテストを自動化する方法についてのノウハウ不足が課題でした。 そこで、Amazon SESの機能を改めて確認していたところ、特定のメールアドレスで受信したメールをS3に保存する機能があることを知り、E2Eテスト内からS3にアクセスすることでメールの受信テストまで自動化でカバーできるのではないか、と考えたことが、今回のチャレンジ

    Playwrightでメール配信のテスト自動化にチャレンジ! - JX通信社エンジニアブログ
  • プライベートメソッドのテストは書かないもの? - t-wadaのブログ

    この文章の背景 この文章はプライベートメソッドのテストを書くべきか否かに関する knsmr さんのご質問に対して 2013/03/13 に QA@IT で回答したものです。残念ながらQA@IT のサービス終了(2020/02/28)と共にアクセスできなくなってしまったため、運営を行っていたアイティメディア株式会社様、開発を行っていた永和システムマネジメント様、そして質問をされた knsmr さんに許可とご協力をいただき、当時の回答をサルベージしてブログに転載する運びとなりました。 プライベートメソッドのテストはよく議論になるテーマですので、当時の回答を再編集し、knsmr さんのご質問も含め、ご利用いただきやすいライセンス CC BY(クリエイティブ・コモンズ — 表示 4.0 国際 — CC BY 4.0) で公開いたします。 目次 この文章の背景 目次 knsmr さんのご質問 私の回

    プライベートメソッドのテストは書かないもの? - t-wadaのブログ
    okinaka
    okinaka 2024/01/17
  • ◯ツコの知らないテストツールの世界 - Qiita

    こんにちは。 3度の飯よりテストが好き!(やっぱ、飯も好き)@hakumai_です。 私は社外でテストの講座を担当することがあるのですが、テストツールの章では「もっと具体的なツールをたくさん知りたい」という感想をもらうことがあります。 世の中にはたくさんのツールがあり、網羅的かつ詳細に説明する事は難しいので、今日は必要な時に取り出せるようにするための 「ツールの俯瞰的な捉え方」「探し方」 についてお話したいと思います。 テストツールの種類を俯瞰的に捉える JSTQB(ISTQB)ではツールの分類方法を紹介しています。 分類の仕方は様々あり正解は1つではありませんが、シラバスでは「支援する活動」ごとに分類しています。 参考)JSTQB-Foundationシラバス(https://jstqb.jp/dl/JSTQB-SyllabusFoundation_Version2018V31.J03.

    ◯ツコの知らないテストツールの世界 - Qiita
    okinaka
    okinaka 2023/12/08
    マツコ
  • テスト自動化成功の鍵「テスト自動化アーキテクチャ」、構築のポイントと考え方とは

    開発の現場では、単体テストの自動化、結合テスト(APIテスト)の自動化、システムテストの自動化など、段階ごとにさまざまなテスト実行が自動化されている。だが、特に結合以降において、テスト自動化の導入を失敗するケースは少なくない。その原因の一つは、テストの自動化をツール導入と捉えていることにある。セッションでは、テスト自動化アーキテクチャという概念を通じて、ソフトウェアテストを自動化する仕組み、テスト自動化システム構築のポイントについて語られた。 テスト自動化成功の大きな鍵「テスト自動化アーキテクチャ」 テスト自動化アーキテクチャはその名の通り、テスト自動化の仕組みを構築するためのアーキテクチャを意味し、テスト自動化が成功するか失敗するかの大きな鍵と言われている。 セッションは、mablのQuality Advocateを務め、TestingやQAの啓蒙活動に取り組むおだしょーこと小田祥平

    テスト自動化成功の鍵「テスト自動化アーキテクチャ」、構築のポイントと考え方とは
  • フロントエンドにおける「単体テストの考え方/使い方」

    稿における「単体テスト」とは自動テストにおける単体テストを指します。手動テストのことではないので、ご了承ください。 単体テストの考え方/使い方というを読みました。筆者自身、「単体テストはプロダクションコードの付属」という意識がどこかにありました。このを読んで、単体テストについてあまりに何もわかってなかったことに気付かされ、単体テストの設計はプロダクションコードの設計と同じくらい重要という意識に変わりました。何のために単体テストをやるのか、いいテストとは、「単体」とは、など多くの点で学びを得られ、また、多くのプラクティスとアンチパターンを知ることができました。 稿はこのを読んで得られた学びを、フロントエンド開発、特にコンポーネント開発に適用することを試みた際のまとめです。より詳細な解説を求む方にはを手に取ってもらう前提で、できるだけポイントを抑えられるようにまとめることを目指しま

    フロントエンドにおける「単体テストの考え方/使い方」
    okinaka
    okinaka 2023/01/31
  • N予備校開発でのRSpecの書き方指針 - ドワンゴ教育サービス開発者ブログ

    はじめに テストコード一般の考え方 壊れにくいテストを書く 実装した通りに動作することではなく、仕様通りに動作することをテストする テストコードはシンプルにわかりやすく書く 失敗の原因がわかりやすくなるように意識する RSpecの書き方 テストケース名をitの引数で明記する letよりもlet!を使う 通常の変数と同じ方針に基づいてlet!を利用する subjectを使わない 不要なcontextでのネストを避ける matcherを適切に使い分ける factoryのデフォルト値に依存しないテストを書く 参考にしたブログ記事等 付録:RuboCop設定 We are hiring! サムネイル画像 はじめに テストコードを書く習慣も、近年ではかなり一般的なものになってきました。 ドワンゴ教育事業のバックエンドチームでも自発的にテストコードを書く文化は根付いており、実際に計測はしていませんが、

    N予備校開発でのRSpecの書き方指針 - ドワンゴ教育サービス開発者ブログ
  • デシジョンテーブル使ってますか? | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、稲垣です。 ソフトウェアが仕様通りに動くかを確認する場合、どのようにテストケースを作成していますか? テスト技法にはさまざまな種類がありますが、今回はデシジョンテーブルについて説明します。 1.デシジョンテーブルって何? デシジョンテーブルとは、入力データや入力条件の組み合わせに対する動作や処理の出力結果を表にしたものです。 複数の条件が重なり合ったテストをするためには、仕様をしっかりと把握することが重要になります。 デシジョンテーブルを使うと、自然言語より視覚化でき、仕様の整頓もできます。 デシジョンテーブは下記5つから成り立ちます。 1.条件の一覧(条件記述部) 2.結果の一覧(動作記述部) 3.条件の組み合わせ(条件指定部) 4.組み合わせに対応する結果(動作指定部) 5.規則 1.条件記述部 入力条件や入力データを記述します。 2.動作記述部 条件に合わせて実行する動作

    デシジョンテーブル使ってますか? | TECHSCORE BLOG | TECHSCORE BLOG
    okinaka
    okinaka 2019/04/17
  • Browser testing - CircleCI

    This page describes common methods for running and debugging browser testing in your CircleCI config. Every time you commit and push code, CircleCI automatically runs your tests against the browsers you choose. You can configure your browser-based tests to run:

    Browser testing - CircleCI
  • ユニットテストをしよう

    【最新JavaScript開発~ES2017対応モダンプログラミング】 株式会社インプレスR&Dより発行された「最新JavaScript開発~ES2017対応モダンプログラミング」の立ち読みコーナー第5回です。 ユニットテストは、メソッドや関数など小さなユニット単位に絞り込んだ自動テストです。現代的なプログラミングに欠かせないものです1。 効能としてはコードの信頼性が向上するというのはもちろんですが、何より重要なことはテストのコストが下がることです。手動でテストを毎回行っていたらとても手間がかかりますが、ユニットテストならば勝手にテストをしてくれるので、コードを書き換えるたびにテストをするというような開発スタイルで効率が大幅に向上します。 副次的な効果としてより、良い設計をもたらすという点もあります。これはユニットテストをきちんと行おうとすると、設計もそれに合わせたものになるためです。自然

    ユニットテストをしよう
  • テストケースの記述、システム開発現場でバラバラになる理由

    この3つのテストケースは、同じフォーマットを使用しているのに各項目の記述内容が異なっている。テストケースの「分類1」でAさんは「登録ボタン」、Bさんは「入力項目」と異なる画面のパーツを指している。Cさんは「データ登録」と操作内容を示している。分類2や分類3も同様で、3人でバラバラの言葉を書いている。 しかし、読んでみると、どれも入力フォームに金額の値を入力して、登録ボタンを押した場合の挙動を確認させようとしている。これだけ表記のばらつきがあると、テスト実行者が混乱してしまうだろう。 さらに、期待結果(テストケースの「期待値」)の記載粒度が異なっていることも分かる。 Aさんはエラーチェック処理ごとに、エラーメッセージの出力が設計通りに実装されているかどうかを確認しようとしている。Bさんは、エラーチェック処理の入力データの境界値(振る舞いが変わる境目)を網羅しようとしている。Cさんは期待値を「

    テストケースの記述、システム開発現場でバラバラになる理由
    okinaka
    okinaka 2018/01/24