From b1adaf92b34c00ab7d5fc8c5a6214b7b5831fda6 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Tue, 20 May 2025 18:26:42 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20README=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecs/jskult-batch-ultmarc-io/README.md | 91 +++------------------------ 1 file changed, 7 insertions(+), 84 deletions(-) diff --git a/ecs/jskult-batch-ultmarc-io/README.md b/ecs/jskult-batch-ultmarc-io/README.md index 144cf9b8..b52cbfcd 100644 --- a/ecs/jskult-batch-ultmarc-io/README.md +++ b/ecs/jskult-batch-ultmarc-io/README.md @@ -1,12 +1,12 @@ -# 実消化&アルトマーク 日次バッチ +# 実消化&アルトマーク アルトマーク取込/データ出力処理 ## 概要 -実消化&アルトマークの日次バッチ処理。 +実消化&アルトマークのアルトマーク取込/データ出力処理 ## 環境情報 -- Python 3.9 +- Python 3.12 - MySQL 8.23 - VSCode @@ -156,43 +156,6 @@ - テスト結果データと期待値データを突き合わせ、期待値どおりとなっているかを確認する - ignore_col_nameに指定したカラムは、呼び出し元のテストコード内で個別に突き合わせする - -## 単体テスト(実消化データ取込処理) - -実消化データは、単体テストコードを使用してテスト自動化を行う - -### テスト準備 - -※単体テスト(アルトマーク取込処理)と同じ - -### テスト用のサブコマンド一覧 - -- `pipenv run`のあとに、サブコマンドとしてユーザー定義スクリプトを実行できる - - `Pipfile`内の「scripts」セクションに宣言されている - -| コマンド | 概要 | -| ---------------- | -------------------------------------------------------------------------------------------- | -| test:vjsk | tests/batch/vjsk フォルダ配下のユニットテストを実行する | -| test:vjsk:cov | tests/batch/vjsk フォルダ配下のユニットテストを実行し、テストカバレッジを取得する(C0, C1) | - -### テスト共通関数の仕様 - -- tests/testing_vjsk_utility.py内の共通関数の仕様について記載する - -#### create_vjsk_assertion_list - -- 概要 - - DB登録期待値リストを作成する -- Args: - - file_path (str): DB登録期待値ファイル(tsvファイル)のパス - - memo: ※DB登録期待値ファイルの前提 - - memo: 受領データファイルと同じ - - memo: BOM付きtsv形式 - - memo: 一行目はカラム名になっているヘッダ行 - - Returns: - - List(dict) DB登録期待値辞書リスト - - ## フォルダ構成 ```text @@ -207,12 +170,8 @@ │ ├── aws -- AWS関連処理 │ │ └── s3.py -- S3クライアントとバケット処理 │ ├── batch -- バッチ処理関連ソース置き場 -│ │ ├── batch_functions.py -- バッチ処理共通関数置き場 -│ │ ├── datachange -- 実績洗替関連ソース置き場 -│ │ │ └── emp_chg_inst_lau.py -- 施設担当者マスタ洗替 -│ │ └── jissekiaraigae.py -- 実績洗替処理のエントリーポイント │ │ └── ultmarc -- アルトマーク関連処理 -│ │ ├── ultmarc_process.py -- アルトマーク関連処理のエントリーポイント +│ │ ├── import_ultmarc_process.py -- アルトマーク関連処理のエントリーポイント │ │ ├── datfile.py -- データファイル読込 │ │ └── utmp_tables -- アルトマークテーブルへの登録関連 │ │ ├── table_mapper -- テーブルへのデータマッピング処理 @@ -230,13 +189,12 @@ │ │ └── database.py -- データベース操作共通処理 │ ├── error │ │ └── exceptions.py -- カスタム例外 -│ ├── jobctrl_daily.py -- 日次バッチ処理のエントリーポイント。「entrypoint.py」 から呼ばれる。 +│ ├── main.py -- アルトマーク取込処理のエントリーポイント。「entrypoint.py」 から呼ばれる。 │ ├── logging │ │ └── get_logger.py -- ログ出力の共通処理 │ ├── system_var +│ │ ├── constants.py -- 定数 │ │ └── environment.py -- 環境変数 -│ └── time -│ └── elapsed_time.py -- 実行時間計測用 └── tests -- ユニットテストのルートディレクト ├── batch │ └── ultmarc -- アルトマーク関連のユニットテストを格納する @@ -250,42 +208,7 @@ │ │ ... │ │ ├── expect_com_alma_insert.csv -- テストの期待値データ。CSVで用意する。 │ │ ... - │ └─vjsk -- 実消化データ取込処理関連のユニットテストを格納する - │ │ - │ ├─vjsk_file_check -- 受領ファイルチェック処理関連のユニットテストを格納する - │ │ ├─conftest.py -- テスト内で共通利用できるフィクスチャの宣言 - │ │ └─test_vjsk_file_check.py -- テストクラス本体 - │ │ - │ └─vjsk_load -- 受領データ登録処理関連のユニットテストを格納する - │ │ conftest.py -- テスト内で共通利用できるフィクスチャの宣言 - │ │ test_vjsk_load.py -- テストクラス本体 - │ │ - │ └─testdata -- テストモジュールが使用するテストデータを格納する - │ │ bio_slip_data_202304280000.tsv -- 正常ケースの単体確認用 - │ │ ... -- *20230428* は新規4件の登録確認用 - │ │ whs_mst_202304290000.tsv -- *20230429* は更新2件+追加新規2件の登録確認用 - │ │ - │ ├─NoData -- 正常ケースの単体確認用 - │ │ bio_slip_data_nodatarecord.tsv -- ヘッダ行のみでデータが0件の動作確認用 - │ │ ... - │ │ whs_mst_nodatarecord.tsv - │ │ - │ ├─TestFormatErrorFile -- 異常ケースの単体確認用 - │ │ bio_slip_data_formaterror.tsv -- 末尾行のタブ数が想定と異なる(ファイル欠落がある)ときの動作確認用 - │ │ ... - │ │ whs_mst_formaterror.tsv - │ │ - │ ├─TestImportFileToDb -- 正常ケースの単体確認用 - │ │ bio_slip_data_202304270000.gz -- 対向元システムから送られてきた状態(gz圧縮)の受領データファイルの動作確認用 - │ │ ... - │ │ whs_mst_202304270000.gz - │ │ - │ └─UnzipError -- 異常ケースの単体確認用 - │ bio_slip_data_202304270000.gz -- gz圧縮ファイルが解凍できないときの動作確認用 - │ ... - │ whs_mst_202304270000.gz - │ - ├── conftest.py -- テスト内で共通利用できるフィクスチャを宣言する(執筆時点ではDBのみ) + │ └── conftest.py -- テスト内で共通利用できるフィクスチャを宣言する(執筆時点ではDBのみ) ├── testing_utility.py -- テストの共通関数 └── testing_vjsk_utility.py -- テストの共通関数(実消化データ取込処理関連) ```