並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 776件

新着順 人気順

testingの検索結果361 - 400 件 / 776件

  • リリースプロセス改善のために工夫して自動化を推し進めたらチームの底力が爆上がりした話 - NTT Communications Engineers' Blog

    こんにちは、クラウド&ネットワークサービス部の福岡です。 SDPF(Smart Data Platform) クラウドの IaaS である、ベアメタルサーバー・ハイパーバイザーサービス開発のソフトウェアエンジニアとして働いています。 本記事では、リリースプロセスの改善を目指して QA チームが実施している試験の一部を自動化したことで、チームの底力が爆上がりした事例について紹介します。 SDPF ベアメタルサーバーサービスのミッション 機能リリースまでの流れと課題 課題1: 価値提供までのリードタイムが長くなる 課題2: QA チームの稼働がひっ迫する QA 削減に向けた取り組み 〜自動テストによる代替〜 思いがけない困難 どうやってこの困難に立ち向かったのか 1. 締切のあるタスクと締切のないタスクをセットにして取り組む 2. チームでサービス説明書の読み合わせ会を実施 取り組みの成果 1

      リリースプロセス改善のために工夫して自動化を推し進めたらチームの底力が爆上がりした話 - NTT Communications Engineers' Blog
    • 第9回 自動テストの実行結果 ~意思決定と行動を促す情報としての役割~ | gihyo.jp

      WEB+DB PRESS休刊に伴い、今回からWeb上で連載を継続させていただくことになりました。今後とも何卒よろしくお願いします。さて、あらためて本連載の最近の連載のテーマを振り返りますと、それは「信頼性の高い実行結果に短い時間で到達する自動テスト群を組み上げ、ソフトウェアの成長を持続可能なものにする」となります。今回はそのなかから「実行結果」に光を当てます。 多くのテスティングフレームワークには実行結果の出力フォーマットを変更するオプションやプラグイン機構があり、自動テストはその実行結果を様々なフォーマットで出力します。それらテストの実行結果は「情報」であり、情報の役割とは意思決定と行動を促すことです。テストの実行結果が促す行動とはデプロイ、マージ、コードの修正などです。今回は、そのようなテスト実行結果出力の種類と目的についてまとめます。 信号機としてのテスト出力 意思決定から行動へつな

        第9回 自動テストの実行結果 ~意思決定と行動を促す情報としての役割~ | gihyo.jp
      • Rails+PostgreSQL+Apartmentでたった1行の変更がレスポンスタイムを3倍速にした話 - KAYAC Engineers' Blog

        こんにちは! Tech KAYAC Advent Calendar 2023 11日目を担当する荒賀(@ken39arg)です。 在籍期間15年と弊社の中でかなり古参になってしまった私ですが、アドベントカレンダーを年に2本書くのは初めてです。1 今回の内容は、今年7月に無事に成功したお仕事の話で、完了したらブログに書くように言われていたものです。 が、どうしても筆が進まず、のらりくらりと逃げていたのですが、良い年越しをするためにいい加減書いておくか〜という内容です。 TL;DR Rails + PostgreSQL + Apartment という構成のサービスで下記の1行の設定変更コミットを取り込んだ結果・・・ $ git log -n1 -p 64b39f258e9adde2e55752e4f1d5b6be12bcb216 commit 64b39f258e9adde2e55752e4f

          Rails+PostgreSQL+Apartmentでたった1行の変更がレスポンスタイムを3倍速にした話 - KAYAC Engineers' Blog
        • PR TIMESにおけるPlaywrightを用いたVisual Regression Test | PR TIMES 開発者ブログ

          CypressからPlaywrightに移行しました こんにちは、フロントエンドエンジニアのやなぎ( @apple_yagi )です。 先日、フロントエンドのIntegration Testで使用されていたCypressをPlaywrightに移行したので、... 前提 PR TIMESは、React + Vite製のアプリケーション(主に企業様の管理画面)とNext.js製のアプリケーション(SEOが重要なページ)が存在します。 本エントリーで紹介するのは、React + Vite製のアプリケーションに対するVRTとなります。 VRTの実行環境 VRT(Playwright)は公式のDocker Imageを用いて、Docker上で実行するようにしています。 { "scripts": { "_docker": "docker run --rm --ipc=host -v $(pwd):/

            PR TIMESにおけるPlaywrightを用いたVisual Regression Test | PR TIMES 開発者ブログ
          • 数十年分相当の書き込み負荷テストで各社のSSDの信頼性を検証してみた [Sponsored]

              数十年分相当の書き込み負荷テストで各社のSSDの信頼性を検証してみた [Sponsored]
            • プロダクト組織全員がレベルアップする勉強会を継続的に開催する秘訣

              10 ©2024 Loglass Inc. 現在の組織 CTO/VPoE EM EM TL Engineers Designer PdM Management 経営管理 Enabling &Platform AI/LLM EM CRE TL Engineers Designer PdM TL Engineers Designer PdM TL Engineers TL Engineers EM QA QA QA TL Engineers Designer PdM QA 人員計画 TL Engineers 11 ©2024 Loglass Inc. 現在の組織 CTO/VPoE EM EM TL Engineers Designer PdM Management 経営管理 Enabling &Platform AI/LLM EM CRE TL Engineers Designer PdM T

                プロダクト組織全員がレベルアップする勉強会を継続的に開催する秘訣
              • エンジニアとQAEの壁が崩れていくのを眺めていた | at-blog

                こんにちは、asatoです。 あるスクラムチームの話です。とりとめもなく、そんなチームで起こったことを書き連ねていきます。 Table of Contents 【スタート】エンジニアとQAEの間には壁がありました 【1ヶ月目】DoDを作成しました 【2ヶ月目】スプリント中にテストを完了できる方法を探しました、が見つかりませんでした。 【4ヶ月目】QAEもテスト環境構築ができるようになりました 【5ヶ月目】スプリント内でテストが完了するようになってきたのでDoDを更新しました 【6ヶ月目】QAEみんなでAgile Testing Condencedを読み始めました 【6ヶ月目】Engineerもテストするようになりました 【7ヶ月目】QAEも見積もりに参加するようになりました 【7ヶ月目】QAEもスプリントレビューでインクリメントをお披露目するようになりました 【7ヶ月目】開発者全員で探索的

                  エンジニアとQAEの壁が崩れていくのを眺めていた | at-blog
                • TiDBにおけるパフォーマンス検証の進め方とつまづきポイント

                  TL;DR TiDBにおけるパフォーマンス検証をどうやって行ったか パフォーマンス検証を行ったときにつまづいた問題とその対応策 TiDBの仕様やアーキテクチャなどの話はありません 前提 対象のDBはAmazon Auroraで稼働中 DBエンジンはMySQL TiDBに移行できないかPoCを実施 DB周りにいろんな課題があり、TiDBで解決できないか検証 TiDB Cloudで検証 本番運用を想定してTiDB Dedicatedを利用 先にお伝えしたいこと TiDB導入したいとか言う前に、今使っているRDBで発生しているスロークエリとかIndex設計を見直した方が良いです笑 理由はこの記事を見てもらえるとわかると思いますw パフォーマンス検証の進め方 1. パフォーマンス検証に利用するクエリを洗い出す 観点としては以下の2つ 実行される頻度が高いSQL 実行速度が遅いSQL(スロークエリ)

                    TiDBにおけるパフォーマンス検証の進め方とつまづきポイント
                  • Go で実 DB を使ったテストをしてみた - Repro Tech Blog

                    はじめに こんにちは。Repro で新規事業の開発をしている冨永です。 我々のチームでは主に、ユーザーのイベント集計を定期的にバッチ処理するフローで Go を採用しています。 Go で RDB など外部依存のあるコンポーネントを扱うテストをする際 interface などで抽象化しモックすることが多かったのですが、実際にその部分の挙動が確かめられないという不安がありました。 そこで今回は testfixtures というライブラリを使って実際に DB アクセスするテストを書いてみたのでその紹介です。 きっかけ まずはチーム内でテストに関する共通認識を作るためワークショップを実施しました。 各々の『知りたいこと』『教えたいこと』『議論したいこと』を話し合った結果、以下のような話題が上がりました。 今回は特に『外部依存のあるコンポーネントでテストが書き辛い』というトピックが盛り上がり、その中で

                      Go で実 DB を使ったテストをしてみた - Repro Tech Blog
                    • Next.js 製アプリケーションの CI の実行時間削減や安定性向上のために取り組んだこと - Cybozu Inside Out | サイボウズエンジニアのブログ

                      こんにちは!DOGO プロジェクトでソフトウェアエンジニアとして活動している @nissy_dev です。 DOGO プロジェクトでは、画面刷新を進めていく中で CI の実行時間が長く不安定になってしまい、開発生産性に大きな影響が出ていました。今回の記事では、CI の課題改善のために取り組んだことを紹介します。 目次 DOGO について CI を改善することになった背景 CI の改善のために取り組んだこと ビルド時に tsc を実行しない .next/cache を除いて、artifacts にアップデートする E2E テストをより多くの shard 数で分割する Playwright のブラウザのインストールをキャッシュする PR ではコード差分に関連するテストのみを実行する Hydration の挙動によってテストが flaky になっていた問題の解消 CI の改善の結果 今回取り組ま

                        Next.js 製アプリケーションの CI の実行時間削減や安定性向上のために取り組んだこと - Cybozu Inside Out | サイボウズエンジニアのブログ
                      • 「やはりGitHubActionsは使ったほうが良い」 AWS環境へのデプロイとテストを自動化して感じた効果

                        「インフラ技術基礎勉強会 #4」は、業務改善、業務効率化、自動化をテーマにした勉強会です。ここで「GitHubActionsで構築した自動化の仕組み」をテーマに奈良氏が登壇。GitHubActionsの基本と、AWS環境へのデプロイとテストの自動化について話します。 奈良氏の自己紹介 奈良貴充氏:こういった機会をいただきありがとうございます。「GitHubActionsで構築した自動化の仕組み」と題して、今回話します。よろしくお願いします。 今回ですが、7つのアジェンダでお話しします。「GitHubActions」を使っている方も多いと思うので、「こういったケースで使っているんだな」と聞いてもらえればと思います。 まず自己紹介します。私は凸版印刷というところで仕事をしています。主に新規サービスの立ち上げに関するシステム開発全般を扱っています。好きなものは日本のサブカルじゃないですが、漫画、

                          「やはりGitHubActionsは使ったほうが良い」 AWS環境へのデプロイとテストを自動化して感じた効果
                        • メルカリ ハロ リリースのQA戦略 | メルカリエンジニアリング

                          こんにちは。メルカリのQAエンジニアリングマネージャーの@____rina____ です。今回は、連載『Mercari Hallo, World! -メルカリ ハロ 開発の裏側-』の第4回を担当します。 本記事では、メルカリ ハロのサービスローンチまでのQAプロセスを通じて、私たちはどのようにして安心・安全なプロダクトを迅速にリリースするための戦略を実行したか、具体的な方法とともに詳述しています。 この記事を通じて、以下の点についての理解を深めていただけることを目指しています: QAの役割とプロジェクト概要 効率的なQAアサイン戦略 成果物の透明性と管理ツールの効果的な活用方法 また、この記事を書くにあたり、私自身が学んだことや得た教訓についても触れています。これらの経験は、今後のプロジェクトにおいて更なる品質向上と効率化を目指す上で非常に貴重なものとなりました。 プロジェクト概要とQAの

                            メルカリ ハロ リリースのQA戦略 | メルカリエンジニアリング
                          • LeanとDevOpsのためにE2Eテストができること

                            2024.6.29に行われた「開発生産性Conference2024」の登壇資料です。 https://dev-productivity-con.findy-code.io/2024

                              LeanとDevOpsのためにE2Eテストができること
                            • data-testidはいつ使うべきか?そもそも使うべきなのか? | フューチャー技術ブログ

                              Playwrightあるいはそのロケーターの元ネタとなっているTesting Libraryでは、DOMを指定する方法として data-testid 属性を扱ったクエリーを提供しています。どちらでも getByTestId(ID文字列) メソッドを使い、この属性値を使った要素の取得が行えます。しかし、ドキュメントを見ると、PlaywrightもTesting Libraryも、「他の手法が使えないときの最終手段」としています。 In the spirit of the guiding principles, it is recommended to use this only after the other queries don’t work for your use case. Using data-testid attributes do not resemble how your

                                data-testidはいつ使うべきか?そもそも使うべきなのか? | フューチャー技術ブログ
                              • 小数点の罠:メンバーシップポイント計算の裏側 - BASEプロダクトチームブログ

                                はじめに この記事はBASEアドベントカレンダーの四日目の記事です。 こんにちは!私は@shiiyannnと申します。現在、メンバーシップ Appの開発に携わっています。メンバーシップ Appはショップオリジナルの「メンバーシップ」(会員制度)を作成することができる機能です。 2023年9月、メンバーシップ Appは大幅な機能アップデートを遂げました。今回のアップデートでは、ショップオーナーが商品購入時に独自のポイントを付与できるようになりました。付与されるポイントの量は、注文金額にショップオーナーが設定したポイント付与率を掛け合わせて計算されます。 この記事では、ポイント付与機能の開発中に直面した、浮動小数点計算の問題とその解決策についてお話しします。この問題を深掘りすることで、料率計算や金額処理に取り組む開発者の皆さんに有益な情報を提供できればと考えています。 リリース直前に発見した浮

                                  小数点の罠:メンバーシップポイント計算の裏側 - BASEプロダクトチームブログ
                                • [入門]Webフロントエンド E2E テスト ――PlaywrightによるWebアプリの自動テストから良いテストの書き方まで

                                  この本の概要 E2Eテスト(End-to-End Testing)とは,システムの端から端(End-to-End)まで,全体を通して行うソフトウェアテストを指します。本書ではE2Eテストを「ユーザーの視点でWebシステムの動作を確認する自動テスト」として定義し,E2Eテストをこれからプロジェクトに導入しようとしている人,すでに導入しているがパフォーマンスや保守性で課題を感じている人を対象に,E2Eテストのフレームワークとして近年人気が急上昇しているPlaywrightをツールとして,その目的からモダンなノウハウまで,E2Eテスト初心者の方にもわかりやすくハンズオンを交えながら解説します。CIへ組み込む方法やユニットテストとの棲み分けなど,E2Eテストを実際の開発現場に投入するうえでの知見も数多く紹介します。 こんな方におすすめ E2Eテストをこれからプロジェクトに導入しようとしている人 す

                                    [入門]Webフロントエンド E2E テスト ――PlaywrightによるWebアプリの自動テストから良いテストの書き方まで
                                  • GoでgRPCのAPIテスト環境を構築する - enechain Tech Blog

                                    はじめに JCEXで実践しているAPIテストについて 単体テスト 負荷テスト なぜAPIの単体テストを行っているのか API単体テストで使用するパッケージ 実例によるAPI単体テストの環境構築 前提 ステップ1: テストしたいAPIの定義 ステップ2: テストの作成 ステップ3: APIの実装 ステップ4: DBを使ったテスト ステップ5: ヘルパー関数化 ステップ6: テーブル駆動テストに変える ステップ7: フィクスチャを使ったテスト まとめ おわりに はじめに こんにちは、enechainのGXデスクでエンジニアをしている@ejiです。 GXデスクは、『日本気候取引所 - Japan Climate Exchange』 (以下 JCEX) のサービス開発を担当しており、 私は主にBFFとバックエンドのAPIをGoで開発しています。バックエンドのAPIは gRPC を使用しています。

                                      GoでgRPCのAPIテスト環境を構築する - enechain Tech Blog
                                    • 【Playwright】v1.4系の新機能まとめ - RAKUS Developers Blog | ラクス エンジニアブログ

                                      こんにちは、フロントエンド開発課所属のkoki_matsuraです! 本記事では、E2EテストライブラリであるPlaywrightのv1.40 ~ 最新版v1.43で追加された機能の中から僕の独断と偏見でいくつかを紹介したいと思います。 では早速、紹介していきます! 以下は目次です。 v1.40の新機能 Test Generatorにアサーションコード生成機能 toBeVisibleアサーション toContainTextアサーション toHaveValueアサーション v1.41の新機能 screenshot関数のstyleオプション toHaveScreenshot関数のstylePathオプション v1.42の新機能 addLocatorHandler関数 タグの追加 v1.43の新機能 LocatorとFrameLocatorの相互変換 clearCookiesのフィルター機能 ま

                                        【Playwright】v1.4系の新機能まとめ - RAKUS Developers Blog | ラクス エンジニアブログ
                                      • エンジニア1人で4年間プロダクトを開発。ミニマムな体制で効率的な価値検証を行う知見 - what we use(技術スタックデータベース)

                                        「サービスがPMFするまで、どのような体制で開発を進めるか」というテーマに、わかりやすい正解は存在しません。企業の創業メンバーの内訳や各々のスキル、会社の資金、世の中や他社の動向など、さまざまな変数が「開発組織のあり方」に影響します。CTOやVPoEといった企業の技術リーダーたちは、そうした変数を鑑みつつ自社の方針を決める重要な役割を担っています。 営業活動支援のSaaS事業およびコンサルティング事業を展開するSALESCORE株式会社のCTOを務める成澤克麻さんは、MVP開発開始から4年間は「エンジニア1人でフルスタックにサービス開発すること」を選びました。そして事業が軌道に乗った現在は方針転換をし、人を増やしながらスケール可能な体制作りを目指しているのです。今回は成澤さんに、SALESCOREがこれまで選択してきた開発組織の方針について聞きました。 KPIを可視化し、営業組織の実行力を

                                          エンジニア1人で4年間プロダクトを開発。ミニマムな体制で効率的な価値検証を行う知見 - what we use(技術スタックデータベース)
                                        • テーブル駆動テストを使った QA エンジニアとソフトウェアエンジニアの連携

                                          test.each([ {a: 1, b: 1, expected: 2}, {a: 30, b: 5, expected: 25}, ])('.sum($a, $b)', ({ a, b, expected }) => { expect(sub(a, b).toBe(expected); }); テーブル駆動テストは Go 言語を使った開発で良く使われるスタイルです。Go 言語の GitHub リポジトリの Wiki にはテーブル駆動テストに関するページがあるので、興味がある人はそちらを読んでみてください。 テーブル駆動テストを使った QA エンジニアとソフトウェアエンジニアの連携 テストがなくリファクタリングが困難なフロントエンド 症状検索エンジン ユビー には、ユビーのビジネスにとって重要な、とあるページがあります。そのページではフロントエンドからロギングサービスに対してたくさんのロ

                                            テーブル駆動テストを使った QA エンジニアとソフトウェアエンジニアの連携
                                          • 自動テストの実行時間を大幅短縮!分析と最適化の実践法

                                            Thinkings 株式会社では、sonar ATS の開発で自動テストを導入しています。過去に CI の実行時間を大幅に削減したことで全体の実行時間は短くなりました。自動テストの速度改善は手が回っていなかったので、CI 実行時間のボトルネックになっていました。今回は自動テストの実行時間を短縮するためにどうやって分析を行ってテストコードを改善したかについて説明します。 開発環境 開発環境は次の通りです。今回はバックエンドの改善内容について説明します。 Visual Studio 2022 .NET Framework 4.6.2 C# xUnit.net 実行時間の分析方法について まずは、自動テストのボトルネックを分析する方法について説明します。前回もお話しましたが、弊社では CI/CD ツールに Jenkins を使用しています。自動テストは1日に数回実行しており、その実行結果をアップ

                                              自動テストの実行時間を大幅短縮!分析と最適化の実践法
                                            • JUnitで学ぶ実践的で本質的なユニットテストの考え方 - Qiita

                                              初めに 具体的なコードや方法も記述しますが、それよりも JUnit などの自動テストのFW、ユニットテストの概念や目的など本質的なことを把握し理解する事を主題にしてます。 また、参考資料欄にあるように、様々なものを参考に網羅的にまとめています。非常にボリュームがるので興味あるところだけ読んでもらう方が良いかもしれません。 こちらでは、ある程度開発経験(1〜2年程度)があり、自動テストについて少しでも触れた事があるくらいの方が対象になる記事です。自分がそうだからです。ただし、コンパイルエラーにならないだけの書き方では意味がないのでそういった構文やお作法に関する話はあまりしません。なぜそのようなお作法になったのか?そうである理由は何なのか?トレードオフは?といった、本質的な部分にフォーカスを当てていきたいと思います。 1. 概要 JUnit は Java 言語向けのユニットテストフレームワーク

                                                JUnitで学ぶ実践的で本質的なユニットテストの考え方 - Qiita
                                              • 第8回 脆いテスト ~継続的な変更と改善を阻むテストの原因と対策~ | gihyo.jp

                                                本連載の主なテーマは、信頼できる実行結果にできるだけ短い時間でたどり着く自動テスト群の構築です。連載の区切りとして、なぜ自動テストを書いてメンテナンスしていくのか、そしてそれに立ちはだかる「脆いテスト」(⁠fragile test)について整理します。 自動テストを書く動機 自動テストを書く動機には、不具合混入を防止する、問題箇所の絞り込みを容易にする、動く仕様書やサンプルになるなどいろいろありますが、最大の動機は、変化を抱擁し、ソフトウェアの成長を持続可能なものにすることだと筆者は考えています。 ソフトウェアを取り巻く世界は変わりました。ソフトウェアは世界を飲み込み、事業と一体化しました。事業を取り巻く市場もエンドユーザーのニーズも刻々と変化する時代においては、より速く、より安全に変化する力が求められます。コードを変更しなければ動き続けることが期待できる時代ではもうなく、決められたものを

                                                  第8回 脆いテスト ~継続的な変更と改善を阻むテストの原因と対策~ | gihyo.jp
                                                • CI/CD Litmus Test: CI/CD レベルを測定しよう! - kakakakakku blog

                                                  AWS が公開しているサイト「CI/CD Litmus Test」を使うと簡単に「CI/CD スコア」と「CI/CD レベル」を測定できる❗️開発チームで実施しながらレベルを上げるにはどうしたら良いかをディスカッションすると効果的に使えそう \( 'ω')/ litmus.devops.aws.dev 流れとしては CI/CD の設計に関する「計20種類」の質問(Yes or No)にポチポチと答えていくと以下の結果が出る📊 CI/CD score CI/CD level 9.5 or above Fully CI/CD 8–9 Mostly CI/CD 5–7 Neutral Below 5 Not CI/CD GET STARTED を押す 質問に Yes or No で答える 今取り組んでる CI/CD をイメージしながら答えたら Mostly CI/CD だった! 質問一覧 最終

                                                    CI/CD Litmus Test: CI/CD レベルを測定しよう! - kakakakakku blog
                                                  • Rust製の負荷テストフレームワークGoose入門

                                                    はじめに Rustを使っているとすべてをRustで書きたい欲に駆られることがあります。 たとえば負荷試験ツールもRustで書きたい、みたいなことがあったりします。 ありがたいことにRustではGooseという負荷テストフレームワークがあり、これを使えば負荷テストをRustで実装できます。 ちなみに、GooseはRust Foundationのメンバーであるtag1が開発しているので安心感があります。[1] 本記事はGooseについて基本的・応用的な使い方などについて紹介していきます。 Gooseとは GooseはPython製の負荷テストツールであるLocustにインスパイアされたRust製の負荷テストフレームワークです。 Locustと比べて、約11倍ほどのトラフィックを生成でき、CPUコアを可能な限り使用してくれます。[2] またLocustと違い、フレームワークなのでビルドしたバイナ

                                                      Rust製の負荷テストフレームワークGoose入門
                                                    • Playwright を使用したエンドツーエンド テストの概要

                                                      エンドツーエンド テストの概要:Playwright。 Playwright は、Microsoft がオープンソースとして開発したエンド ツー エンド テスト用フレームワークで、モダンな Web アプリのテストに使用します。 この 6 部構成のシリーズでは、インストールから、テストの実行、記述、デバッグまで、関連するすべてを取り上げます。 Playwright を使うと、モダンな Web アプリに信頼性の高いエンドツーエンド テストを実行できます エンドツーエンド テストの概要:Playwright。 Playwright は、Microsoft がオープンソースとして開発したエンド ツー エンド テスト用フレームワークで、モダンな Web アプリのテストに使用します。 この 6 部構成のシリーズでは、インストールから、テストの実行、記述、デバッグまで、関連するすべてを取り上げます。 P

                                                        Playwright を使用したエンドツーエンド テストの概要
                                                      • Storybook Test ruuner で安定した Visual Regression Testing を行う

                                                        はじめに 株式会社ナレッジワーク Engineering Division のわだまる(@wadackel)です。 ナレッジワークの Web フロントエンド開発では、Storybook を活用したコンポーネント開発を行っています。そして、昨年末により良いコンポーネント開発の基盤整備を進めるべく @storybook/test-runner(以降 Storybook Test ruuner)を導入しました。導入目的としては主に、各 Story に対するスモークテスト、play 関数を活用したコンポーネントテストを行うことです。 さらに、ナレッジワークでは前述した通常のコンポーネントテストに加えて、reg-suit と storycap を利用した Visual Regression Testing(以降 VRT)を行っています。 これまでは Storybook を活用したテストは VRT の

                                                          Storybook Test ruuner で安定した Visual Regression Testing を行う
                                                        • NewsPicksに推薦システムを本番導入する上で一番優先すべきだったこと - Uzabase for Engineers

                                                          はじめに 皆さんこんにちは! ソーシャル経済メディア「NewsPicks」プロダクトエンジニアの森田です:) 私は2024年4月に株式会社ユーザベースに新卒入社し、現在は主にNewsPicksにおける推薦機能の開発改善に携わっています。 NewsPicksでは、ユーザに価値のある経済情報を届けるための施策の一つとして記事推薦機能を導入しています。 本ブログでは、NewsPicks記事推薦機能にて基盤改善がモデル改善につながってCTR(Click Through Rate)を改善できた事例をもとに、私たちが認識した「推薦システムを本番導入する上で一番優先すべきだったこと」を共有します。 また先日行われた「実応用 × 推薦システム」をテーマとしたイベント Recommendation Industry Talks にて、本ブログの内容に関して発表させていただきました!参加者の皆様とカジュアルか

                                                            NewsPicksに推薦システムを本番導入する上で一番優先すべきだったこと - Uzabase for Engineers
                                                          • ZOZOTOWN検索における精度評価手法の運用で見えた課題とその改善アプローチ - ZOZO TECH BLOG

                                                            こんにちは。検索基盤部の橘です。検索基盤部では、ZOZOTOWNのおすすめ順検索の品質向上を目指し、機械学習モデル等を活用しフィルタリングやリランキングによる検索結果の並び順の改善に取り組んでいます。 ZOZOTOWN検索の並び順の精度改善の取り組みについては以下の記事をご参照ください。 techblog.zozo.com 検索基盤部では新しい改善や機能を導入する前にA/Bテストを行い効果を評価しています。A/Bテストの事前評価として、オフラインの定量評価と定性評価を実施しています。これらの評価によりA/Bテストの実施判断をしています。 おすすめ順検索のフィルタリング処理の効果検証として導入したオフライン定量評価の方法については以下の記事をご参照ください。 techblog.zozo.com 以前の記事で紹介したオフライン評価を日々運用する中で、幾つか課題点が見つかりました。本記事では、そ

                                                              ZOZOTOWN検索における精度評価手法の運用で見えた課題とその改善アプローチ - ZOZO TECH BLOG
                                                            • フロントエンドのテスト基盤を Jest から Vitest に移行した話

                                                              こんにちは。ナレッジワークの torii です。 7 月にフロントエンドエンジニアとして入社してもうすぐ半年、そろそろ技術記事の一つも書きたいなと思っていたところに、ちょうどいいネタを見つけたので投稿してみます! Jest から Vitest に移行してみた 早速やったことですが、フロントエンドのテストフレームワークを Jest から Vitest に移行しました。理由としては、Jest が CJS を前提として動作しており、ESM 前提のモジュールを動かすのに一手間も二手間もかかるからです。 ナレッジワークのフロントエンドは Next.js を採用しており、テストフレームワークには Next.js と相性の良い Jest を採用していました。関数単位のテストや UI コンポーネントのテストを書く分には問題なかったのですが、それより上層(ページなど)になるとたちまち ESM 互換性の問題を

                                                                フロントエンドのテスト基盤を Jest から Vitest に移行した話
                                                              • GitHub - nucleuscloud/neosync: Open source data anonymization and synthetic data orchestration for developers. Create high fidelity synthetic data and sync it across your environments.

                                                                You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                  GitHub - nucleuscloud/neosync: Open source data anonymization and synthetic data orchestration for developers. Create high fidelity synthetic data and sync it across your environments.
                                                                • Table-driven testing に縛られないGoのテストパターン

                                                                  2024/06/08に開催されたGo Conference 2024のLTで発表した資料です。 https://gocon.jp/2024/sessions/19/

                                                                    Table-driven testing に縛られないGoのテストパターン
                                                                  • 現代的なユニットテストでのコードカバレッジ(テストカバレッジ)の扱い方 - 千里霧中

                                                                    ユニットテストのコードカバレッジ(テストカバレッジ。ステートメントカバレッジやC0、C1など)は、不適切な運用が根強く見られます。多いのが、コードカバレッジの確保だけをテストの十分性目標にして、まずいテストを書いてしまうパターンです。 今回はこのコードカバレッジについて、現代的な開発を支えるための適切な運用について解説します。 コードカバレッジのみを直接のテストの十分性の目標にしてはいけない 結論から言うと、まずユニットテストは以下を目標として作成します。 ふるまいの仕様が実現されているか確認する プログラマが感じる品質リスク(いわゆる不吉な臭い等)が許容できる水準であることを確認する 法規制対応など、外部からのテスト要求に対応する コードカバレッジは、上記目標を達成することで副次的に確保されることを目指します。 注意点として、コードカバレッジの確保のみを直接の目標にすると弊害が大きくなり

                                                                      現代的なユニットテストでのコードカバレッジ(テストカバレッジ)の扱い方 - 千里霧中
                                                                    • 単体テストの考え方/使い方 社内読書会をしました - BASEプロダクトチームブログ

                                                                      この記事はBASE アドベントカレンダー 2023の24日目の記事です。 基盤グループ エンジニアの田中 (@tenkoma) です。 2023年5月から8月にかけて、書籍「単体テストの考え方/使い方」の読書会を社内有志でしました。 読書会の様子や感想をまとめます。 書籍「単体テストの考え方/使い方」について 単体テストの考え方/使い方 プロジェクトの持続可能な成長を実現するための戦略 | マイナビブックス 単体テストの考え方/使い方 プロジェクトの持続可能な成長を実現するための戦略 | 達人出版会 2022年12月に出版されました。 2020年1月に出版されたUnit Testing Principles, Practices, and Patterns (Manning)の翻訳書です。 単体テストについて定義し、その価値を最大限に高めるための方法について解説されています。 書籍への期待

                                                                        単体テストの考え方/使い方 社内読書会をしました - BASEプロダクトチームブログ
                                                                      • RAG評価ツールの "RAGAS" を使って、RAGパイプラインの性能を測定する - Qiita

                                                                        はじめに こんにちは、KDDIアジャイル開発センターのはしもと(仮名)です。 LLMで何かしたい勢のみなさま、検索拡張生成こと RAG (Retrieval Augmented Generation)、やってますか? 自社で持っているデータを使ってエンタープライズサーチを実現したい、それができればきっと無敵。そう考えて色々やろうとしているんじゃないでしょうか。私です。 RAGを使って意図した出力を得られるようにするには、十分なデータセットを準備したりパラメータを変更しながらチューニングをするなど、地道な作業が必要となります。 開発ライフサイクルにおける評価・テストステップで有効な、評価用フレームワーク RAGAS を使ってみましたので、本記事ではそれについてまとめます。 RAGASとは RAGパイプラインを評価/テストするためのフレームワークです。 パイプラインを構築するためのツールは多く

                                                                          RAG評価ツールの "RAGAS" を使って、RAGパイプラインの性能を測定する - Qiita
                                                                        • 税理士ドットコム流のCI/CDを設計する考え方と実践 - 弁護士ドットコム株式会社 Creators’ blog

                                                                          今年の頭から税理士ドットコム事業部に異動した @komtaki です。3 月末から 7 月まで育休を頂いていたのですが、無事復帰しました。 部署異動してすぐに、ジョブ追加の際にコンテナや CI/CD の最適化がされず開発体験を損なっていると感じました。そこで、異動直後の 2 月末に、フルスクラッチでコンテナと CI/CD を作り直しました。 約半年運用し GitLab CI でのデプロイ運用のデータが溜まり、定量的にデプロイを分析できるようになりました。 そこで税理士ドットコムのデプロイフローにどのような問題があったのか、CI/CD の設計の考え方と改善後の効果についてお話しします。 CI/CDとは 簡単におさらいすると、CI/CD とはソフトウェアの変更を常にテストし、自動で本番環境へ適用できるような状態にしておく開発手法です。CI/CD がうまく機能した場合、下記のような効果があります

                                                                            税理士ドットコム流のCI/CDを設計する考え方と実践 - 弁護士ドットコム株式会社 Creators’ blog
                                                                          • 『実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう』

                                                                            テストケースはコンピューターで書くべき! でもどうやって? その答えが「プロパティベーステスト」です Fred Hebert 著、山口能迪 訳 原書 Property-Based Testing with PropEr, Erlang, and Elixir 376ページ A5判 ISBN:978-4-908686-18-4 2023年11月1日 発行 従来のユニットテストでは、人間が「入力に対してコードが返すべき値」を考えて、その通りの結果が得られるかどうかをテストします。 これに対してプロパティベーステストでは、数万にも及ぶ多様なテストケースをコンピューターで自動生成し、その大量のテストを水面下で実行することによって、どんな入力に対してどんな問題が起きるかをテストします。 人間には思いもつかない入力まで網羅できることから、単に手間をかけずにテストケースを増えせるだけでなく、場合によって

                                                                              『実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう』
                                                                            • 身近なツールで始めるコードリーディング入門~「PHPUnit」の場合

                                                                              PHPに関する日本最大のカンファレンスである「PHPカンファレンス2024」が2024年12月22日(日)に開催されます。カンファレンス盛り上げ企画として、開催までの5カ月間にわたりPHPの技術記事の連載を企画しました。この記事のお読みの皆さんには、PHPのさまざまな技術に触れながらカンファレンス当日を楽しみにしていただければと思います。 第2回目の今回は、PHPプログラマのための単体テストフレームワーク「PHPUnit」のコードを読んでみましょう。 PHPUnitとは テストコードは、他の開発者のための仕様の明文化、バグの早期発見、そしてより美しい設計を実現するための重要なツールです。これにより、開発者は安心してプロダクトコードを改善・変更することができます。ソフトウェア開発において、テストコードを書くことは品質保証の要であり、開発者としての責任でもあります。 PHPのための単体テストフ

                                                                                身近なツールで始めるコードリーディング入門~「PHPUnit」の場合
                                                                              • プログラミングの条件式で、>= や <= の比較演算子がロジックに含まれる時にロジックのテストで「値が等しいケース」を書かない人には、重要な設計を任せられない話

                                                                                悉生 游漩 @StewEucen The creator of x-ninja a new JavaScript front-end framework. 「悉生 游漩」「Stew Eucen」の読み方は「しちゅう ゆうせん」です。「ゆうせん」と呼んでね。 Please call me "Eucen" :) x-ninja.org 悉生 游漩 @StewEucen プログラミングの条件式で、>= や <= の比較演算子がロジックに含まれる時。 其のロジックのテストに「値が等しいケース」を書かない人には、重要な設計を任せてはあきませぬ。 (・ω・)<おわかりか

                                                                                  プログラミングの条件式で、>= や <= の比較演算子がロジックに含まれる時にロジックのテストで「値が等しいケース」を書かない人には、重要な設計を任せられない話
                                                                                • 「アニメーションのレベル高すぎ」──“原神”のmiHoYo新作ゲームが「変態クオリティー」と話題

                                                                                  「アニメーション良すぎる」「こだわりすぎ、変態」──いま、あるゲームが話題だ。その名も「ZenlessZoneZero」(ゼンレスゾーンゼロ)。「原神」などを手掛ける中国miHoYoの新作で、11月24日からクローズドβテストを実施しており、プレイヤーたちが投稿するプレイ映像が注目を浴びている。中には、1万以上のいいねを集める投稿も見られる。 特にゲーム中に挟まれるムービー(操作できない、演出としての映像)で見られるキャラクターの表情の変化やアクションに対して「こだわりがすごい」などの声が出ている。中には、1万以上のいいねを集める投稿も見られる。 ZenlessZoneZeroは、「ホロウ」という超自然的な災害によって壊滅した世界の都市を舞台としたアクションゲーム。ホロウは異常な空間を形成する特徴を持ち、プレイヤーはその空間の探索や脱出をガイドする存在「プロキシ」として活動する。少なくとも

                                                                                    「アニメーションのレベル高すぎ」──“原神”のmiHoYo新作ゲームが「変態クオリティー」と話題