タグ

ブックマーク / tech.smarthr.jp (2)

  • test_profを用いたRailsの自動テストの高速化の実践例 - SmartHR Tech Blog

    このエントリは、SmartHR Advent Calendar 2023 シリーズ1の5日目の記事です。 こんにちは!SmartHRでプロダクトエンジニアをしている大澤(@qwyngg)です。 最近Railsの自動テストの高速化について調べていたので、その内容をまとめてみました。 主にtest_profというgemを用いた解析と、その結果を元にした改善方法について書いています。 test_profとは https://github.com/test-prof/test-prof テストのパフォーマンスを分析する様々なツールを提供するgemです。 色々機能があるのですが、今回は以下の機能を使って発見した問題とその解決方法を紹介します。 factory_botプロファイラ テストに対してstackprofを(面倒な設定無しで)実行できる 詳しい使い方はTestProf: Ruby tests

    test_profを用いたRailsの自動テストの高速化の実践例 - SmartHR Tech Blog
  • Railsのモデル名をすべて変更した話 - SmartHR Tech Blog

    SmartHRでは開発にRuby on Railsを広く採用しています。 今日は負債解消のために、開発しているサービスでRailsのモデル名をすべて変更した話を紹介します。 既存のモデル構造のつらみ 私達が開発しているサービスでは、モデルの親子構造が分かりやすいということで、モデルをネストした構造にしていました。 例えば、 User に紐づくプロフィール画像 User::ProfileImage は、 app/models/user/profile_image.rb に配置する具合です。 パッと見の構造が分かりやすいのですが、時が経つにつれて次のようなつらさが顕在化してきました。 Railsの規約(推奨ルールのようなもの)に則っていないので、関連定義が冗長になる テーブル名が長くなる。 外部キーや関連名が長くなる。 関連名と外部キー名が一致せず、カラムを呼び出したいときにDB定義を見ないと

    Railsのモデル名をすべて変更した話 - SmartHR Tech Blog
    daira4000
    daira4000 2023/06/30
    「なお、このバグは社内勉強会で修正されました」 偉業
  • 1