0

だから私はクエリを持っています:

select
  c.STRING,
  a.STRING,
  b.STRING,
  b.STRING3,
  a.STRING2,
from TABLE_A a,
  VIEW_B b,
  TABLE_C c
where b.STRING2 = a.STRING2
  and a.INT = #value#
  and c.INT = a.INT
  and c.STRING IN ('string1', 'string2')

VIEW_B はビューで、TABLE_A と TABLE_C は通常のテーブルです。このクエリの単体テストを試みています。私が見た方法は、選択であるため、ダミーデータを作成してテーブルに挿入し、上記のクエリを実行して、入力したデータと同じデータが返されることを確認する必要があるということでした。ただし、VIEW_B は挿入できません。したがって、VIEW_B から実際のデータを取得し、他の 2 つのテーブルに対応するデータを取得する必要があります。ただし、その時点では、同じクエリを実行しているだけで、a.INT を取得する必要があります。したがって、ビューを使用するクエリがある場合、完全にテストすることはできないというのが私の結論です。

これは本当ですか?とにかく、このクエリをテストする最良の方法は何ですか?

これは作業プロジェクトであり、テーブルのスキーマやクエリ自体を変更することはできず、実際のデータベースに対してテストを実行する必要があることに注意してください。

4

1 に答える 1