タグ

TestingとCIに関するclavierのブックマーク (49)

  • LLMのプロンプトをCI/CDで評価する。promptfooを使って - Gunosy Tech Blog

    こんにちは。 LLM事業部のUTです。 概要 promptfoo の紹介 起動 CI での評価 GitHub Action まとめ 概要 OpenAI による ChatGPT 登場の衝撃から1年ほど経ちましたが、 LLM を活用する企業はものすごく増えました。 OpenAI だけでなく、大手クラウドや Hugging Face などを通して各企業も提供しています。 遊びで使う分にはどの LLM を使うかは適当で良いかと思いますが、プロダクトとして提供する場合利用を想定しているシーンに対して、最適なモデルを選びたいと思うのは必然でしょう。 また LLM を利用してレスポンスを受けるに当たり、最も重要なのがプロンプトです。 様々な研究結果にもある通り、プロンプトの書き方一つで出力結果が大きく変わります。 欲しいアウトプットを出すプロンプトを探すには、プロンプトを複数作り比較する必要があります。

    LLMのプロンプトをCI/CDで評価する。promptfooを使って - Gunosy Tech Blog
  • ジョブを細かく分けてGitHub Actionsのテストを効率化する

    改善戦略 実行のタイミングやGitHubの状況や依存サーバーのネットワークの状況によって変動はあるものの、早くて7分、だいたい10分〜15分くらいかかっている。早いか遅いかは、他の開発と比べても内容や状況が違うのでなんとも言い難いが、個人的な感想としては「遅い」。というより、一切の工夫をしていなかったので、もっと早くできるはずだと考えた。 ビルドされたファイルを複数の環境で共有する 処理全体の中で時間がかかっている処理は3つ。 依存パッケージのインストール ビルド テスト さらに、課題の一つとして「テスト実行時に開発用依存パッケージ(devDependencies)がインストールされているせいでテストが失敗しない問題がある」というものがあり、これを処理に追加しないといけない。 開発用依存パッケージのインストール ビルド 依存パッケージを一旦すべて削除 番用依存パッケージのインストール テ

    ジョブを細かく分けてGitHub Actionsのテストを効率化する
  • K8sアプリのE2Eテストを無料でCIする。GitHub ActionsとKindで - ダルツ海峡冬景色

    K8sアプリ(=Kubernetes上で動くことを前提としたアプリケーション)のEnd-to-Endテスト(=E2Eテスト)をCIの無料枠で実行する方法を説明します。 テストツールの列挙 まずはK8sアプリケーションのテストに使うツールを列挙します。 代表的には次のような選択肢があります。 fake: client-goのモッククライアント。admission機構が無いなど、物とは挙動が異なる点も多い envtest: controller-runtimeのインテグレーションパッケージ。kube-apiserverとetcdを実際に建てる。APIリソース操作で十分に試験項目を網羅できるなら便利。 kind: dockerベースのスタンドアローンK8s。マルチノードをサポートしている。K8sの下回りに依存しないアプリケーションなら基的にこれで問題なし。 物のK8s: コスト大だがどうし

    K8sアプリのE2Eテストを無料でCIする。GitHub ActionsとKindで - ダルツ海峡冬景色
  • Check! GitHub Actions で導入しておきたい自動化 5つ(GitHubブログ要約)

    Prologue こんにちは、 @dz_ こと、大平かづみです。 今回はこのブログ記事 "5 automations every developer should be running" が気になったので、ちゃんと読むついでに要約してみました。(ブログ駆動) なお、英語の能力は高くないので、誤訳などありましたらご連絡いただけたらうれしいです🙇🏻‍♀️ 要約: "5 automations every developer should be running" TL;DR: セキュリティ脆弱性との闘いや動かないボタン、遅いサイト、リリースノートを手書きすることを避けたいエンジニアの君に捧ぐ テストを書くことや改善のための自動化を行うことは大事ではあるが、実際のところもっとコードを書いた方が楽しい! さいわいなことに、GitHub Actions ではたくさんのコミュニティで作られたテストや

    Check! GitHub Actions で導入しておきたい自動化 5つ(GitHubブログ要約)
  • Terraformのレビューを自動化するために、Conftestを導入してGithub ActionsでCIまで設定してみる - nariのエンジニアリング備忘録

    はじめに 対象読者 OPA/Rego/Conftestとは Regoでポリシールールを記述して、ルール自体のテストも記述しながらCIへ組み込んでいくまで Conftest(OPA/Rego)のセットアップ 前提知識: Terraform plan 結果の構造 ConftestでTerrafom resource tag ルールを書いてみる ConftestでRegoで書いたルール自体のテストを書いて、実行してみる Conftestを実行するCIをGithub Actionで整備する Conftest/Regoで書いたポリシールール自体のfmt/verifyのCIの設定 Conftest testでTerraform plan結果をテストするCIの設定 終わりに 参考文献 English Version: dev.to はじめに メリークリスマス。eureka, inc. でSREをやってい

    Terraformのレビューを自動化するために、Conftestを導入してGithub ActionsでCIまで設定してみる - nariのエンジニアリング備忘録
  • テスト自動化研究会 - テスト自動化の8原則

    1. 手動テストはなくならない 2. 手動でおこなって効果のないテストを自動化しても無駄である 3. 自動テストは書いたことしかテストしない 4. テスト自動化の効用はコスト削減だけではない 5. 自動テストシステムの開発は継続的におこなうものである 6. 自動化検討はプロジェクト初期から 7. 自動テストで新種のバグが見つかることは稀である 8. テスト結果分析という新たなタスクが生まれる これらの原則は、どのようなドメイン、プロセス、ツールの現場におけるテスト自動化であっても共通して言える、テスト自動化に取り組む前に留意しておくべきことがら=原則を、テスト自動化研究会のメンバーによる議論のうえ、絞り込んだものです。これからテスト自動化に取り組まれる方、現在取り組まれている方、これから見直しをされたい方にご参考いただければ幸いです。 解説 1. 手動テストはなくならない ユーザビリティテ

    テスト自動化研究会 - テスト自動化の8原則
  • GitHub - gaia-docker/tugbot: Testing in Production (TiP) Framework for Docker

    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 - gaia-docker/tugbot: Testing in Production (TiP) Framework for Docker
  • システムテスト自動化の動向と勘所

    システムテスト自動化の動向と勘所 1. 1 システムテスト自動化の動向と勘所 2016/01/15 株式会社 SHIFT 太田健一郎 2. 2  SHIFTのテスト自動化サービス  自動化の選定方法とROI  環境構築とビルドの自動化 AGENDA 3. 3 SHIFTのテスト自動化サービス 3 4. 4  自動化のメリット・難しさ  SHIFTの自動化サービス  自動化カウンセリング・可否判断  自動化基盤構築  テストスクリプト作成  導入実績紹介 SHIFTのテスト自動化サービス 5. 5 人の作業だけに頼る開発プロセスの課題 自動化のメリット・難しさ 検証スタート時に問題が噴出 担当者がいないとリリース作業ができない 回帰テストに膨大な工数がかかる リリースに使ったモジュールのバージョンが わからない  開発者のPCでは動作するのに 検証環境では動作しない 

    システムテスト自動化の動向と勘所
  • [iOS] FastlaneでゴニョゴニョしてからEMLauncherにアップする

    iOSアプリ開発担当の加島です。最近のリズムゲームアプリはすごいですね!(3Dアニメとか)ただ、私は現実のコインを使わないことにしています。今のところ。 さて、今回は巷で話題(となってから少し時間が経ちましたがここ最近僕の中で話題)のFastlaneを使ってみました。基的な使い方は公式ガイドである以下をご参照ください。 iOSアプリの継続的デリバリーに便利なfastlaneのご紹介 - Qiita http://qiita.com/gin0606/items/162d756dfda7b84e97d4 iOSアプリのリリースフロー自動化ツールfastlaneのmeetupに通訳で参加しました - Mercari Engineering http://tech.mercari.com/entry/2015/07/13/143000 このFastlaneのビルドツールであるgymですが、直接ビ

    [iOS] FastlaneでゴニョゴニョしてからEMLauncherにアップする
  • Swift環境での自動テスト導入と運用 2015/10/29(金) hireLink vol.9 [勉強会ログ] - Qiita

    iOSの著書も出していらっしゃる、新居雅行先生より、 テストの自動化と運用方法等々、ご教授いただきました! 個人的にこの言葉が印象に残りました。(ちょっと脚色していますw) 自動テストの導入で品質は何倍も上がる。入れるか入れないかという議論はもう終わった。問題はどう導入して運用するかだ。 テストコードを1行もかいたことのない私にはちょっと衝撃でした。。いい意味で。 下記よりログです。 ※ 内容については私のフィルターがかかっているため、間違い・ご指摘があればこの記事へコメントをお願い致します。 (改めて) テストの目的 テストの目的は、 品質の担保 (´・ω・`) <「テストやった?」 (`・ω・´)+ <「やりました!」 ・・それって当にちゃんとやったのか? 「正しく」「動く」だけでは曖昧 テストの基準を持つ CI(継続的インテグレーション)とテスト 要は頻繁にテストするってこと 自動

    Swift環境での自動テスト導入と運用 2015/10/29(金) hireLink vol.9 [勉強会ログ] - Qiita
  • 開発者テストの失敗を追跡しやすくすることで大人数での Web サービス開発を加速する - クックパッド開発者ブログ

    会員事業部サービス開発グループ長の村田です。 私は2015年1月から会員事業部でサービス開発エンジニアをやっていますが、2014年4月までは技術部開発基盤グループで Web サービス開発を加速させる様々な取り組みを実施していました。稿では、開発基盤グループ時代に私が取り組んだ開発者テストの失敗を追跡しやすくする取り組みについて説明します。 クックパッドの Web サービス開発と CI クックパッドのサービス開発は、大きくても5名くらいの小さなチームが一つの機能を担当します。しかし、多数のチームが1つの大きな Rails アプリケーションを同時に変更するのが特徴です *1。 Web サービス開発を加速する工夫には様々な方向性が考えられますが、ここでは、クックパッドのようなスタイルでの Web サービス開発を加速するために開発者テストを何如に円滑にするかを考えます。 図: オムキンス クック

    開発者テストの失敗を追跡しやすくすることで大人数での Web サービス開発を加速する - クックパッド開発者ブログ
    clavier
    clavier 2015/05/19
    開発者テストの失敗を追跡しやすくすることで大人数での Web サービス開発を加速する - クックパッド開発者ブログ
  • iOSアプリ開発における自動化ノウハウ

    これからのPlatform Engineeringを支えるコンテナ×Backstageの真価 / The Future of Platform Engineering: Unveiling the True Value of Containers and Backstage

    iOSアプリ開発における自動化ノウハウ
  • 【iOS/Android】最新事例から学ぶ!モバイル向けテスト手法勉強会に行ってきた - 悪あがきプログラマー

    【iOS/Android】最新事例から学ぶ!モバイル向けテスト手法勉強会 - connpass 会場は名刺共有サービスで有名なSansan株式会社さんでした。 とってもおされ。 いつもは資料のまとめとか他力願なのですが、自分でもひと通り観直したかったのでまとめてみました。 今回の勉強会はiOSとAndroidの両方を対象としたモバイル向けの内容となっています。ただ、僕はAndroidには明るくないのでコメントはiOS寄りになります。 資料がないものは公開され次第追加します。 「テストの種類とBDD」『iOSアプリ テスト自動化入門』著者 長谷川氏 テストの種類とBDD #33testing from Koji Hasegawa iOS自動化入門の著者さんです。僕も買いました。 iOSアプリ テスト自動化入門 作者: 長谷川孝二出版社/メーカー: 秀和システム発売日: 2014/03/18

    【iOS/Android】最新事例から学ぶ!モバイル向けテスト手法勉強会に行ってきた - 悪あがきプログラマー
  • 変更したファイルにrubocopやjscsを実行して pull requestに自動でコメントする

    tl;dr 変更したファイルにrubocopやjscsを実行して、pull requestに自動でコメントさせる方法。 コマンドをパイプでつないで、CIからsaddlerコマンドで書き込みする。 デモリポジトリに rubocop, travis ci, jscs, travis ci エラーになるpull requestしてみてね! saddlerの実行結果イメージ 一番目がjscs, 二番目がrubocop。 流れ diffのあるファイル名を取り出す $ git diff --name-only origin/master README.md bin/run-tests.sh lib/example/travis_ci.rb こんなdiffにrubocop や jscsを実行したい。 diffのあるファイル名を取り出す。 lint実行したいファイルだけに絞り込む $ git diff -

    変更したファイルにrubocopやjscsを実行して pull requestに自動でコメントする
  • WebフロントエンドE2Eテスト 実践編

    構成 TravisCI上に仮想環境作成 TravisCIからProtractorでSauseLab呼ぶ SauseLabからTravisCI上の仮想環境に繋げる SauseLabはChrome, Firefox, IE, Safariでテスト

  • iOSアプリデザインリニューアルの舞台裏の舞台裏 - クックパッド開発者ブログ

    技術部の松尾(@Kazu_cocoa)です。 iOSアプリデザインリニューアルの舞台裏でも書かれていた、" 修正期間中は毎日夜間にアプリケーションの全画面のスクリーンショットを記録するスクリプトを実行し、画面崩れが起きてないか、新デザイン未反映の画面はないか、進捗状況の確認に利用していました。"の舞台裏を少し書いてみようと思います。 はじめに モバイルアプリケーションのテスト環境はまだまだ成長中で、様々なツールが飛び交っていることかと思います。ここでは、E2Eテストに対しての話題に絞り、使っているツール、シナリオの書き方、クックパッドでは、という話しをします。この記事におけるE2Eテストは、UIからの操作によりユーザの操作を模倣して実施するテスト、という意味合いです。 ツール E2Eテストを自動化する為のツールの選定には以下を気にしていました。 OSの更新に追従できそうなもの 特別なテスト

    iOSアプリデザインリニューアルの舞台裏の舞台裏 - クックパッド開発者ブログ
  • parallel_tests ではなく test-queue に乗り換えようと思う - Thanks Driven Life

    みなさま、もうすぐ今年の 2/3 が終わる今日この頃、いかが並列にお過ごしでしょうか。 私も快適に並列を生きていくために、今回 parallel_tests から test-queue に乗り換えようという気持ちになったということをご報告致します。 経緯 現在、PHP の Web アプリケーションを capybara + turnip でテストするお仕事をしており、 最近ようやく富豪な Docker ホスト環境に触れるようになったということもあって、 以前試した Selenium Grid + Docker でがりがり高速化に勤しんでいます。 そんなこんなで RSpec の同時並列実行もしないとね、ということで、以前から触っていた parallel_tests を導入しました。 これまでは全テストの完了まで 約40分 かかっていましたが、parallel_tests を導入するだけで 約1

    parallel_tests ではなく test-queue に乗り換えようと思う - Thanks Driven Life
  • JSコードの品質チェックをしてくれるgrunt-platoについて紹介するよ - Qiita

    grunt-platoとは platoというツールから、JavaScriptコードのソフトウェアメトリクスを計測し、HTMLでレポートを生成してくれるGruntプラグインです。 https://npmjs.org/package/grunt-plato https://github.com/jsoverson/grunt-plato platoとは 上でほとんど書きましたが、platoはJavaScriptコードのソフトウェアメトリクスを計測し、HTMLでレポートを生成してくれるNode製のツールです。 https://github.com/es-analysis/plato platoではjQuery, Grunt, marionetteのレポートをサンプルとして公開してくれてるので、まずはこれらを見て、どのようなものなのか知ってください。 http://es-analysis.gith

    JSコードの品質チェックをしてくれるgrunt-platoについて紹介するよ - Qiita
  • ■ - hitode909の日記

    今日テストなくてめちゃくちゃに壊れてるアプリケーションのテストを一から書いてて、わりと書けてよかった。午前中セットアップに手間取ってて、午後からテスト書き始めて、小さいアプリケーションだったのでC0 90%くらいまでいけた。3年間くらいテストないせいでびくびくみんな触っててめちゃくちゃに壊れててよくなかった。テストえいって書けば書けるんだから、隙を見て書いていきたい。ずっとテストのあるWebアプリケーション眺めてるのでだんだんコツが分かって気がする。まず最初にCIに載せて、カバレッジ測れるようにする。面倒だけど、これやっておくと後で役立つ。普通にテスト書くと、実行環境までは定められないけど、CIがあれば、そこをベースに議論できる。最初は、アプリケーションのルートのモジュールをuse_okするだけ、くらいでまず通して、カバレッジも取れるようにする。たとえば、MyAppっていうアプリケーション

    ■ - hitode909の日記
  • iOSアプリケーションのモンキーテストツール CrashMonkey について - Qiita

    以前作ってGithubに公開していた CrashMonkey というツールについて紹介します。 Github:CrashMonkey CrashMonkey概要 iOSのアプリケーションをモンキーテスト(ランダムな操作をひたすら行う)するためのツールです。 動作イメージはこのデモ動画を御覧ください。 iPhone Simulatorの操作にはUIAutomationを使っていて、ベースとしてui-auto-monkeyを使わせて頂きました。 動作環境 以下の環境でのみ確認してあります。 Max OS X 10.8.4, 10.9.4 Xcode 4.6.3(Build version 4H1503), Xcode5.1.1 Ruby 1.8.7-p371 Rubyについては、1.9系, 2.0系でも動くと思います。 特徴 良い点 アプリのプロジェクト自体に変更を加えなくても実行することがで

    iOSアプリケーションのモンキーテストツール CrashMonkey について - Qiita