JP2019125042A - テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体 - Google Patents

テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体 Download PDF

Info

Publication number
JP2019125042A
JP2019125042A JP2018003677A JP2018003677A JP2019125042A JP 2019125042 A JP2019125042 A JP 2019125042A JP 2018003677 A JP2018003677 A JP 2018003677A JP 2018003677 A JP2018003677 A JP 2018003677A JP 2019125042 A JP2019125042 A JP 2019125042A
Authority
JP
Japan
Prior art keywords
test
execution order
test case
software
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018003677A
Other languages
English (en)
Inventor
徹朗 空林
Tetsuro Sorabayashi
徹朗 空林
秀行 鹿糠
Hideyuki Kanuka
秀行 鹿糠
幸也 内海
Yukiya Utsumi
幸也 内海
岳 斎藤
Gaku SAITO
岳 斎藤
直之 金本
Naoyuki Kanemoto
直之 金本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2018003677A priority Critical patent/JP2019125042A/ja
Publication of JP2019125042A publication Critical patent/JP2019125042A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】DBを参照するソフトウェアテストの際に、DBのテストデータが不足せず、かつ並列実行可能なテストの実行手順を生成する。【解決手段】データベースにアクセスするソフトウェアのテストの実行順序を生成するテスト実行順序生成装置は、前記ソフトウェアのテストを構成する複数のテストケース毎にテストを実施するソフトウェアの機能を予め設定したテストケース記述書と、ソフトウェアの機能毎にアクセスする前記データベースのテーブルと、当該テーブルに対する操作の種類を予め設定したCRUD図と、テストケース記述書とCRUD図を受け付けてテストケース毎に、アクセス対象となるテーブルと操作の種類とを含むテーブル処理情報を出力するテーブル処理情報出力部と、テーブル処理情報を受け付けてCRUD図に基づいてテストケース毎に実行順序を決定するテストケース実行順序出力部と、を有する。【選択図】図3

Description

本発明はソフトウェアテストにおけるテスト実行順序生成装置及びテスト実行手順生成プログラムに関する。
ITシステムのテストフェーズでは、テスト対象の計算機システムがデータベース(以下DB)上のテストデータを参照するテストケースが存在する。テスト対象が新規開発の計算機システムであった場合などは、DBにデータがなく、DBを参照するテストを実行できない場合がある。
DBのテストデータを事前に生成する場合、テスト対象システムの有識者が人手でデータを生成しなければならないため、膨大な作業コストがかかる。ITシステムの設計フェーズで生成されるCRUD図は、設計対象の計算機システムが有する各機能がアクセスして処理(データ生成(C)、読込(R)、更新(U)、削除(D))を行うDB上のテーブルを表す。CRUD図を解析してDBデータの不足をなくして計算機システムの機能を実行するシステムフロー図を生成する方法が特許文献1に記載される。
特開2015−26264号公報
特許文献1では、CRUD図から設計対象の計算機システムが有する各機能の実行順序を表すシステムフロー図を生成する。一方、DBにアクセスするアプリケーションのテストフェーズでは、テスト対象が有する各機能のそれぞれに対して複数のテストケースを有する。また、複数の機能を単一のテストケースの中で使用する場合がある。
特許文献1は機能ごとの実行順序を前提としたフロー(手順)を生成するため、同一機能を複数のテストケースでテストを行う場合などの並列的なテストケースの実行手順を生成することができない、という問題があった。
そこで本発明は、上記問題点に鑑みてなされたもので、DBを参照するソフトウェアテストを実行する際、DB上のテストデータが不足せず、かつ並列実行可能なテストケースの実行手順を生成する技術を提供することを目的とする。
本発明は、プロセッサとメモリを有し、データベースにアクセスするソフトウェアのテストの実行順序を生成するテスト実行順序生成装置であって、前記ソフトウェアのテストを構成する複数のテストケースについて、前記ソフトウェアの機能のうち、テストを実施する1以上の機能を予め設定したテストケース記述書と、前記ソフトウェアの機能毎にアクセスする前記データベースのテーブルと、当該テーブルに対する操作の種類を予め設定したCRUD図と、前記テストケース記述書とCRUD図を受け付けて、前記テストケース毎に、アクセス対象となる1以上のテーブルと、操作の種類とを含むテーブル処理情報を出力するテーブル処理情報出力部と、前記テーブル処理情報を受け付けて、前記CRUD図に基づいてテストケース毎に実行順序を決定するテストケース実行順序出力部と、を有する。
本発明によれば、DBデータをあらかじめ人手で生成することなく、並列実行可能なテストケースの実行手順を生成できる。
本発明の実施例を示し、テストケースを実行する計算機システムの一例を示すブロック図である。 本発明の実施例を示し、設計情報管理サーバの一例を示すブロック図である。 本発明の実施例を示し、設計情報管理サーバで行われる処理の一例を示す図である。 本発明の実施例を示し、テストケース記述書の一例を示す図である。 本発明の実施例を示し、CRUD図の一例を示す図である。 本発明の実施例を示し、テストケース/テーブル処理情報の一例を示す図である。 本発明の実施例を示し、テストケース/テーブル処理情報出力部で行われる処理の一例を示すフローチャートである。 本発明の実施例を示し、設計書取込画面の一例を示す図である。 本発明の実施例を示し、テストケース実行順序出力部で行われる処理の一例を示すフローチャートの前半部である。 本発明の実施例を示し、テストケース実行順序出力部で行われる処理の一例を示すフローチャートの中間部である。 本発明の実施例を示し、テストケース実行順序出力部で行われる処理の一例を示すフローチャートの後半部である。 本発明の実施例を示し、テスト実行フロー表示画面の一例を示す図である。
以下、本発明の実施形態を添付図面に基づいて説明する。
図1は、本発明の実施例を示し、ソフトウェアのテストを実施する計算機システムの一例を示すブロック図である。本実施例では、テスト対象のソフトウェアとして、データベースのテーブルに対してアクセスを行うアプリケーションについてテストを実施する例を示す。
ネットワーク8には、1以上のテーブルを含むデータベース(以下DB)7を管理するデータベースサーバ(以下DBサーバ)5と、DBサーバ5のテーブルにアクセスするアプリケーション4を有するアプリケーションサーバ3と、アプリケーション4のテストを実施する複数のクライアント端末2と、複数のクライアント端末2へテストケースの実行順序を通知する設計情報管理サーバ1が接続される。テストケースは、ソフトウェアのテストを構成するテスト単位である。
DBサーバ5は、1以上のテーブルを含むDB7と、データベース7を管理するDBMS(DataBase Management System)6を有する。アプリケーションサーバ3のアプリケーション4は、DBMS6にアクセスを要求してDB7のテーブルにアクセスさせる。
本実施例のテストでは、複数のクライアント端末2が並列的にアプリケーション4にアクセスするテストケースを含む。このため、DB7にデータがない状態でテストケースが実行されるのを防ぐため、設計情報管理サーバ1がテストケースの実行順序を生成してクライアント端末2へ通知する。
設計情報管理サーバ1は、アプリケーション4がDBサーバ5のテーブルに対して実施するアクセスの内容を示すCRUD図31と、アプリケーション4に対するテストの内容を定義するテストケース記述書32を受け付けて、テストケースの実行順序を算出し、クライアント端末2へ通知する。設計情報管理サーバ1は、テストケースの実行順序を算出するためにテストケース/テーブル処理情報33を生成する。
複数のクライアント端末2は、設計情報管理サーバ1から受信した実行順序に基づいてテストケースを実施する。本実施例では、クライアント端末2を利用するテストの担当者(以下、担当者とする)が、設計情報管理サーバ1から受信した実行順序に従ってテストケースを実行する例を示す。
クライアント端末2は、マウスやキーボードやタッチパネル等の入力装置(図示省略)と、ディスプレイなどの出力装置(図示省略)を含む計算機である。クライアント端末2は、アプリケーション4をテストするソフトウェアとして、例えば、ブラウザを実行する。
なお、本実施例のテストケースとは、アプリケーション4の機能をテストする単位を示す。ひとつのテストケースには、アプリケーション4の1以上の機能をテストする処理が含まれる。テストの処理内容としては、例えば、アプリケーション4に対する指令や、アプリケーション4がDB7のテーブルに読み書きする情報等が含まれる。本実施例のソフトウェアのテストでは、複数のクライアント端末2が、アプリケーション4のひとつの機能を並列的に使用してテストを実行することが許容される。
図2は、設計情報管理サーバ1の一例を示すブロック図である。設計情報管理サーバ1は、プロセッサ11と、メモリ12と、ストレージ装置13と、ネットワークインタフェース14と、入出力装置15を含む。
ストレージ装置13には、データやプログラムが格納される。ネットワークインタフェース14はネットワーク8に接続される。入出力装置15は、マウスやキーボードやタッチパネル等の入力装置と、ディスプレイなどの出力装置が含まれる。
メモリ12には、テストケース実行順序生成部20がロードされてプロセッサ11によって実行される。また、メモリ12には、テストケース実行順序生成部20が利用する設計情報30として、CRUD図31と、テストケース記述書32と、テストケース/テーブル処理情報33が格納される。
また、メモリ12には、テストケース実行順序生成部20が利用する作業用領域として、削除リスト41と、読込更新リスト42と、生成テーブルリスト43と、生成済みリスト44と、生成読込更新テーブルリスト45が生成される。
テストケース実行順序生成部20はプログラムとしてメモリ12にロードされる。プロセッサ11は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、プロセッサ11は、テストケース実行順序生成プログラムに従って処理することでテストケース実行順序生成部20として機能する。他のプログラムについても同様である。さらに、プロセッサ11は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
テストケース実行順序生成部20の各機能を実現するプログラム、テーブル等の情報は、ストレージ装置13や不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
図3は、設計情報管理サーバ1で行われる処理の一例を示す図である。設計情報管理サーバ1のテストケース実行順序生成部20は、図3に示すテストケース/テーブル処理情報出力部21と、テストケース実行順序出力部22と、テスト実行フロー出力部23と、を含む。
テストケース実行順序生成部20は、まず、テストケース/テーブル処理情報出力部21で設計書取込画面100を生成してクライアント端末2へ送信する。クライアント端末2では、設計書取込画面100を介してテスト対象のアプリケーション4のCRUD図31と、テストケース記述書32を選択して、設計情報管理サーバ1へ送信する。
テストケース実行順序生成部20のテストケース/テーブル処理情報出力部21は、図4に示すテストケース記述書101及び図5に示すCRUD図31を入力することで、図6に示すテストケース/テーブル処理情報33を出力する。
図4は、テストケース記述書32の一例を示す図である。テストケース記述書32は、アプリケーション4のテスト計画段階で人手により生成される情報である。
テストケース記述書32は、番号321と、各テストケースの識別子を納するテストケースID322と、テスト対象機能323と、確認日(各テストケースを実行した日付)324と、担当者(各テストケースの実行担当者)325と、結果(テスト結果のOK/NG)326をひとつのエントリに含む。
テスト対象機能323は、アプリケーション4の機能のうち、テストを行う機能が定義される。ひとつのテストケースID322には、複数の機能を設定することができる。また、複数の機能を含むテスト対象機能323では、図中上方から下方へ向かう順序でテストを実施するものとする。また、番号321は、テストケース/テーブル処理情報出力部21が付与したシリアル値である。
例えば、番号321=4のテストケースでは、テスト対象機能323として複数の機能が含まれており、上段に「顧客登録」が格納され、下段に「顧客削除」が含まれる。この例では、図中上方の「顧客登録」を実行してから、図中下方の「顧客削除」を実行することを示す。
図5は、CRUD図31の一例を示す図である。CRUD図31はテスト対象のアプリケーション4の設計フェーズにて人手で生成される情報である。CRUD図31は、アプリケーション4が有する各機能と、各機能がアクセスするDB7のテーブル名(または識別子)と、各機能がテーブルに対して実施する操作の内容を予め設定した情報である。
CRUD図31は、対象機能311と、顧客マスタ312と、商品マスタ313と、注文テーブル314をひとつのエントリに含む。対象機能311は、アプリケーション4の機能と、DB7のテーブルに対する操作を、C(Create):生成、R(Read):読込、U(Update):更新、D(Delete):削除で示す。
図示の例では、3つのテーブル(顧客マスタ312〜注文テーブル314)に対してアクセスする例を示したが、アプリケーション4がアクセスするDB7のテーブルの数に応じてCRUD図31のカラムを設定することができる。顧客マスタ312〜注文テーブル314のフィールドがブランクの場合は、該当する対象機能311によるアクセスがないことを示す。
また、図示の例では、顧客マスタ312のテーブルIDが「001」、商品マスタ313のテーブルIDが「002」、注文テーブル314のテーブルIDが「003」の例を示す。
テストケース/テーブル処理情報出力部21は、後述するように、図7に示すフローチャートを実行して図6に示すテストケース/テーブル処理情報33を出力する。
図6は、テストケース/テーブル処理情報33の一例を示す図である。テストケース/テーブル処理情報33は、No.331と、テストケースID332と、テーブル処理情報333をひとつのエントリに含む。
No.331は、テストケース/テーブル処理情報出力部21が付与したシリアル値(整数)である。テストケースID332は、テストケース記述書32に記載されたテストケースID322が対応する。
テーブル処理情報333は、テストケース毎に使用するDB7のテーブルのIDと、DB7のテーブルに対する操作の種類を「C」、「R」、「U」、「D」で示す。ひとつのテストケースID322には、複数のテーブルのIDと操作の種類を格納することができる。
図3において、テストケース実行順序生成部20のテストケース実行順序出力部22は、テストケース/テーブル処理情報33を入力して、後述する図9〜図11のフローチャートの処理を実行し、テストケースID毎に実行順序を生成する。
そして、テストケース実行順序生成部20のテスト実行フロー出力部23は、テストケース実行順序出力部22からの実行順序に基づいて図12に示すテスト実行フロー表示画面110を生成してクライアント端末2へ送信する。
クライアント端末2では、設計情報管理サーバ1から受信したテスト実行フロー表示画面110を出力装置に表示して、担当者にアプリケーション4のテストの順序を通知することができる。
図8は、テストケース/テーブル処理情報出力部21がクライアント端末2へ送信する設計書取込画面100の一例を示す図である。クライアント端末2では、図8に示す設計書取込画面100にてテーブル処理情報出力部21に取り込むCRUD図31及びテストケース記述書32を指定する。
設計書取込画面100にはテストケース記述書32及びCRUD図31が保存されているディレクトリの絶対パスを指定するフィールド1001、1002が表示され、クライアント端末2の担当者が、取込ボタン1003を押下することでテーブル処理情報出力部21へテストケース記述書32及びCRUD図31が送信される。
図7は、テストケース/テーブル処理情報出力部21で行われる処理の一例を示すフローチャートである。この処理は、設計書取込画面100で指定されたテストケース記述書101及びCRUD図31が設計情報管理サーバ1へ入力されたときに実行される。
テストケース記述書32及びCRUD図31が入力された後、テストケース/テーブル処理情報出力部21は、テストケース記述書32を解析して、テストケースID322と各テストケースIDのテスト対象機能323の一覧を取得する(ステップS101)。
テストケース/テーブル処理情報出力部21は、取得したテスト対象機能323でCRUD図31を検索し、ヒットした対象機能311が処理するテーブルIDと処理内容を取得する(ステップS102)。
テストケース/テーブル処理情報出力部21は、CRUD図31から取得したテーブルIDと処理内容を基にテストケース/テーブル処理情報33を生成する(ステップS103)。
例として、図4のテストケース記述書32からテストケースID:JKKA0001GITA001は「顧客登録」の機能をテストする。図5に示すCRUD図31から「顧客登録」の機能はテーブルID:001でレコードを生成(C)している。
以上の情報からテストケース/テーブル処理情報出力部21は、テストケースID:JKKA0001GITA001のテストケース/テーブル処理情報33のテーブル処理情報333として「001_C」を出力する。
テストケース/テーブル処理情報出力部21は、以上の処理を図4のテストケース記述書32に記載されている各テストケースID322に対して行い、図6のテストケース/テーブル処理情報33を出力する。
テストケース実行順序出力部22は、テーブル処理情報出力部21から出力されたテストケース/テーブル処理情報33を入力としてテストケース/テーブル処理情報33に記載されているテストケースID322に、テストの実行番号を付与する。
図9〜図11は、テストケース実行順序出力部22で行われる処理の一例を示すフローチャートである。この処理は、テストケース/テーブル処理情報33が入力されると開始される(ステップS201)。
テストケース実行順序出力部22は、処理の開始時に作業領域となる削除リスト41、読込更新リスト42、生成テーブルリスト43、生成済みリスト44及び生成読込更新テーブルリスト45を生成する。
テストケース実行順序出力部22は、変数x,yにx=1,y=1を代入する(ステップS202)。なお、変数xは、テストケース/テーブル処理情報33のNo.331を指し示す。また、変数yは、テストケースID332の実行番号(または実行順序)を示す。
テストケース実行順序出力部22は、入力されたテストケース/テーブル処理情報33で変数xに対応するNo.311の行(図中No.x)のテーブル処理情報333に削除(D)が含まれるか否かを判定する(ステップS203)。削除(D)が含まれる場合には、ステップS204へ進みそうでない場合には、ステップS211へ進む。ステップS204ではテストケース実行順序出力部22が、削除リスト41に変数xを登録する(ステップS204)。
テストケース実行順序出力部22は、削除リスト41にxを登録した後、図10のステップS205へ進み、変数xの値がテストケース/テーブル処理情報33のNo.331の最大値でなければ、変数xに1を加算して(ステップS206)、次のNo.331を設定してから図9のステップS203へ戻る。
テストケース実行順序出力部22は、ステップS204で削除リスト41に変数xを登録した後、図10のステップS205の判定で、変数xがテストケースID/テーブル処理情報33のNo.331の最大値であればステップS207へ進む。No.331の最大値は、テストケースID/テーブル処理情報33の最後の行に対応する。
テストケース実行順序出力部22は、生成済みリスト44と、読込更新リスト42と、削除リスト41に登録されている整数を取得してテストケース/テーブル処理情報33のNo.311と全て重複するか否かを判定する(ステップS207)。
テストケース実行順序出力部22は、ステップS207の判定の結果、No.311と各リストの値が全て重複する場合、図11のステップS208、ステップS209、ステップS223を実行した後、処理を終了する。
ステップS208では、テストケース実行順序出力部22が、読込更新リスト42に登録されている整数を、テストケース/テーブル処理情報のNo.311に対応するテストケースID332に実行番号y=y+2を付与する。
ステップS209では、テストケース実行順序出力部22が、削除リスト41に登録されている整数を、テストケース/テーブル処理情報33のNo.331に対応するテストケースID332に実行番号y=y+3を付与する。
ステップS223では、テストケース実行順序出力部22が、実行番号y毎に割り当てたられたテストケースID332をテストケース/実行順序情報としてテスト実行フロー出力部23に出力する(ステップS223)。その後、テストケース実行順序出力部22は、処理を終了する。なお、テストケース/実行順序情報は、図12に示すテスト実行フロー表示画面110と同じ内容である。
一方、ステップS207の判定の結果、重複しない整数が存在する場合、テストケース実行順序出力部22は、重複しない整数のうち、最小の整数を変数xへ代入(ステップS210)した後に、ステップS203へ戻って上記処理を繰り返す。
図9のステップS203の判定の結果、変数xに対応するNo.311のテーブル処理情報333に削除(D)が含まれない場合には、ステップS211へ進む。ステップS211では、テストケース実行順序出力部22が、変数xに対応するNo.311のテーブル処理情報333に読込(R)または更新(U)が含まれるか否かを判定する(ステップS211)。
ステップS211の判定の結果、変数xに対応するNo.311のテーブル処理情報333が読込(R)若しくは更新(U)を含んでいなかった場合、テストケース実行順序出力部22は、生成(C)のみであると判定してステップS212へ進む。
ステップS212では、テストケース実行順序出力部22が変数xに対応するNo.311のテストケースID322に実行番号1を付与する。次に、テストケース実行順序出力部22は、変数xを生成済みリスト44に登録する(ステップS213)。その後、テストケース実行順序出力部22がステップS214を実行して変数yに1を加算する。次に図10のステップS205の処理へ進む。
一方、図9のステップS211の判定の結果、変数xに対応するNo.311のテーブル処理情報333が読込若しくは更新を含んでいた場合、テストケース実行順序出力部22は、ステップS215に進んで、生成(C)を含むか否かを判定する。
ステップS215の判定の結果、変数xに対応するNo.311のテーブル処理情報333が生成(C)を含んでいなかった場合、テストケース実行順序出力部22はステップS216に進んで、変数xを読込更新リスト42へ登録する。その後テストケース実行順序出力部22は、ステップS205を実行する。
一方、ステップS215の判定の結果、変数xに対応するNo.311のテーブル処理情報333が生成(C)を含む場合には、テストケース実行順序出力部22がステップS217を実行する。
ステップS217では、テストケース実行順序出力部22が、先ず変数y以下の実行番号を付与されたテストケースID332のテーブル処理情報333を取得する。次に、テストケース実行順序出力部22は、取得したテーブル処理情報333の中で生成(C)の対象となるDB7のテーブルIDを取得し、生成テーブルリスト43に書き込む。
生成テーブルリスト43には、アプリケーション4がレコードを生成するDB7のテーブルIDが登録される。なお、生成テーブルリスト43が削除されていた場合には、テストケース実行順序出力部22が生成テーブルリスト43を生成する。
次に、ステップS218では、テストケース実行順序出力部22が、変数xに対応するNo.311のテーブル処理情報333を取得し、読込(R)または更新(U)されるDB7のテーブルIDを、生成読込更新テーブルリスト45に書き込む。なお、生成読込更新テーブルリスト45が削除されていた場合には、テストケース実行順序出力部22が生成読込更新テーブルリスト45を生成する。
次に、図10のステップS219では、テストケース実行順序出力部22が、生成読込更新テーブルリスト45内の全テーブルIDが生成テーブルリスト43内に存在するか否かを判定する。
ステップS219の判定の結果がnoであった場合、ステップS205を実行する。一方、ステップS219の判定の結果がyesであった場合、テストケース実行順序出力部22は、変数xに対応するNo.311のテストケースID332に実行番号y=y+1を付与し、変数xを生成済みリスト44に登録(ステップS220)し、変数yに1加算した後(ステップS221)、実行順序が確定した生成読込更新テーブルリスト45及び生成テーブルリストを削除する(ステップS222)。その後、テストケース実行順序出力部22は、ステップS205を実行する。
以上の図9〜図11の処理によって、テストケース実行順序出力部22は、テストケースID/テーブル処理情報33のテーブル処理情報333に含まれるテーブルへの操作(C、R、U、D)に応じて各リスト(削除リスト41〜生成読込更新テーブルリスト45)を生成する。そして、テストケース実行順序出力部22は、操作の種類に応じて分類した各リスト内のテストケースID332に実行番号yを割り当てて、テストケースの実行順序を決定してテストケース/実行順序情報を出力する。
テストケース実行順序出力部22は、ひとつの実行番号yに複数のテストケースID332を割り当てることができるので、DB7上のテストデータが不足せず、かつ並列実行可能なテストケースの実行手順を生成することが可能となる。
次に、図3に示すテスト実行フロー出力部23ではテストケース実行順序出力部22が出力したテストケース/実行順序情報を入力として、図12に示すテスト実行フロー表示画面110を生成してクライアント端末2へ送信する。
図12は、テスト実行フロー表示画面110の一例を示す図である。テスト実行フロー表示画面110は、実行番号を表示する領域1101と、実行番号に対応するテストケースIDを表示する領域1102を含む。クライアント端末2の出力装置には、テスト実行フロー表示画面110が表示される。
テスト実行フロー表示画面110の領域1102で各枠にはテストケース実行順序出力部22にて等しい実行順序を付与されたテストケースIDが表示されている。領域1102では、上から順に実行順序の小さいテストケースIDが表示されている。同じ実行番号に表示されているテストケースIDは並列実行可能であるテストケースIDである。
テスト実行フロー表示画面110では、テストケースIDの実行順序の上部に設計書取込日が表示される。この設計書取込日は、テストケース/テーブル処理情報が出力された日付が表示される。
クライアント端末2の担当者は、テスト実行フロー表示画面110の実行番号毎に割り当てられたテストケースIDのテストを並列的に実行することができる。テスト実行フロー表示画面110に表示されるテストケースIDの実行順序は、DB7のテーブルにデータを生成するテストケースIDを実行してから、当該テーブルを参照するテストケースIDを実行するようにスケジュールされる。
例えば、実行番号=2のテストケースID=JKKA0001GITA007では、テーブルID=002にレコードを生成してから、テーブルID=001と002を読み込んでテーブルID=003にレコードを生成する。テーブルID=001は、実行番号=1のテストで既に生成されているので、DB7のテストデータが不足することはない。
そして、実行番号=1や実行番号=3では、複数のテストケースIDを並列的に実行するようスケジュールされる。これにより、アプリケーション4の機能を複数のクライアント端末2で並列的にテストすることが可能となって、テストの作業効率を向上させることが可能となる。
なお、本実施例では、クライアント端末2の利用者が、設計情報管理サーバ1から受信した実行順序に従ってテストケースを実行する例を示したが、これに限定されるものではなく、設計情報管理サーバ1がテストケースのスケジュールを生成してクライアント端末2へ通知してもよい。あるいは、設計情報管理サーバ1がテストケースの実行順序に従ったスクリプトを生成して各クライアント端末2へ配信しても良い。
また、上記実施例では、クライアント端末2がアプリケーション4についてテストを実施する例を示したが、これに限定されるものではなく、ミドルウェアなどに適用してもよい。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
1 設計情報管理サーバ
2 クライアント端末
3 アプリケーションサーバ
4 アプリケーション
5 DBサーバ
6 DBMS
7 DB
11 プロセッサ
12 メモリ
13 ストレージ装置
20 テストケース実行順序生成部
21 テストケースID/テーブル処理情報出力部
22 テストケース実行順序出力部
23 テスト実行フロー出力部
31 CRUD図
32 テストケース記述書
33 テストケースID/テーブル処理情報

Claims (15)

  1. プロセッサとメモリを有し、データベースにアクセスするソフトウェアのテストの実行順序を生成するテスト実行順序生成装置であって、
    前記ソフトウェアのテストを構成する複数のテストケースについて、前記ソフトウェアの機能のうち、テストを実施する1以上の機能を予め設定したテストケース記述書と、
    前記ソフトウェアの機能毎にアクセスする前記データベースのテーブルと、当該テーブルに対する操作の種類を予め設定したCRUD図と、
    前記テストケース記述書とCRUD図を受け付けて、前記テストケース毎に、アクセス対象となる1以上のテーブルと、操作の種類とを含むテーブル処理情報を出力するテーブル処理情報出力部と、
    前記テーブル処理情報を受け付けて、前記CRUD図に基づいてテストケース毎に実行順序を決定するテストケース実行順序出力部と、を有することを特徴とするテスト実行順序生成装置。
  2. 請求項1に記載のテスト実行順序生成装置であって、
    前記テストケース実行順序出力部が決定したテストケースの実行順序に基づいて、実行順序を示す実行番号に1以上のテストケースを割り当てて、テストケースの実行順序の表示画面を生成するテスト実行フロー出力部を、さらに有することを特徴とするテスト実行順序生成装置。
  3. 請求項1に記載のテスト実行順序生成装置であって、
    前記CRUD図は、
    前記ソフトウェアが有する機能と、前記機能がアクセスする前記テーブルと、前記機能がテーブルに対して実施する操作の種類が予め設定されたことを特徴とするテスト実行順序生成装置。
  4. 請求項3に記載のテスト実行順序生成装置であって、
    前記テストケース実行順序出力部は、
    前記テストケースを前記テーブルに対する操作の種類で分類し、前記分類の結果に基づいてテストケースの実行順序を決定することを特徴とするテスト実行順序生成装置。
  5. 請求項4に記載のテスト実行順序生成装置であって、
    前記テストケース実行順序出力部は、
    前記テーブルに対する操作の種類がレコードの生成のみのテストケースを最初に実行させることを特徴とするテスト実行順序生成装置。
  6. プロセッサとメモリを有する計算機が、データベースにアクセスするソフトウェアのテストの実行順序を生成するテスト実行順序生成方法であって、
    前記計算機が、前記ソフトウェアのテストを構成する複数のテストケースについて、前記ソフトウェアの機能のうち、テストを実施する1以上の機能を予め設定したテストケース記述書を受け付ける第1のステップと、
    前記計算機が、前記ソフトウェアの機能毎にアクセスする前記データベースのテーブルと、当該テーブルに対する操作の種類を予め設定したCRUD図を受け付ける第2のステップと、
    前記計算機が、前記テストケース記述書と、前記CRUD図から、前記テストケース毎に、アクセス対象となる1以上のテーブルと、操作の種類とを含むテーブル処理情報を生成する第3のステップと、
    前記計算機が、前記CRUD図に基づいて、前記テーブル処理情報から、テストケース毎に実行順序を決定する第4のステップと、
    を含むことを特徴とするテスト実行順序生成方法。
  7. 請求項6に記載のテスト実行順序生成方法であって、
    前記計算機が、前記テストケースの実行順序に基づいて、実行順序を示す実行番号に1以上のテストケースを割り当てて、テストケースの実行順序の表示画面を生成する第5のステップを、
    さらに含むことを特徴とするテスト実行順序生成方法。
  8. 請求項6に記載のテスト実行順序生成方法であって、
    前記CRUD図は、
    前記ソフトウェアが有する機能と、前記機能がアクセスする前記テーブルと、前記機能がテーブルに対して実施する操作の種類が予め設定されたことを特徴とするテスト実行順序生成方法。
  9. 請求項8に記載のテスト実行順序生成方法であって、
    前記第4のステップは、
    前記テストケースを前記テーブルに対する操作の種類で分類し、前記分類の結果に基づいてテストケースの実行順序を決定することを特徴とするテスト実行順序生成方法。
  10. 請求項9に記載のテスト実行順序生成方法であって、
    前記第4のステップは、
    前記テーブルに対する操作の種類がレコードの生成のみのテストケースを最初に実行させることを特徴とするテスト実行順序生成方法。
  11. プロセッサとメモリを有する計算機で、データベースにアクセスするソフトウェアのテストの実行順序を生成させるためのプログラムを格納した記憶媒体であって、
    前記ソフトウェアのテストを構成する複数のテストケースについて、前記ソフトウェアの機能のうち、テストを実施する1以上の機能を予め設定したテストケース記述書を受け付ける第1のステップと、
    前記ソフトウェアの機能毎にアクセスする前記データベースのテーブルと、当該テーブルに対する操作の種類を予め設定したCRUD図を受け付ける第2のステップと、
    前記テストケース記述書と、前記CRUD図から、前記テストケース毎に、アクセス対象となる1以上のテーブルと、操作の種類とを含むテーブル処理情報を生成する第3のステップと、
    前記CRUD図に基づいて、前記テーブル処理情報から、テストケース毎に実行順序を決定する第4のステップと、
    を前記計算機に実行させるためのプログラムを格納した非一時的な計算機読み取り可能な記憶媒体。
  12. 請求項11に記載の記憶媒体であって、
    前記テストケースの実行順序に基づいて、実行順序を示す実行番号に1以上のテストケースを割り当てて、テストケースの実行順序の表示画面を生成する第5のステップを、
    さらに含むことを特徴とする記憶媒体。
  13. 請求項11に記載の記憶媒体であって、
    前記CRUD図は、
    前記ソフトウェアが有する機能と、前記機能がアクセスする前記テーブルと、前記機能がテーブルに対して実施する操作の種類が予め設定されたことを特徴とする記憶媒体。
  14. 請求項13に記載の記憶媒体であって、
    前記第4のステップは、
    前記テストケースを前記テーブルに対する操作の種類で分類し、前記分類の結果に基づいてテストケースの実行順序を決定することを特徴とする記憶媒体。
  15. 請求項14に記載の記憶媒体であって、
    前記第4のステップは、
    前記テーブルに対する操作の種類がレコードの生成のみのテストケースを最初に実行させることを特徴とする記憶媒体。
JP2018003677A 2018-01-12 2018-01-12 テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体 Pending JP2019125042A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018003677A JP2019125042A (ja) 2018-01-12 2018-01-12 テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018003677A JP2019125042A (ja) 2018-01-12 2018-01-12 テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体

Publications (1)

Publication Number Publication Date
JP2019125042A true JP2019125042A (ja) 2019-07-25

Family

ID=67398699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018003677A Pending JP2019125042A (ja) 2018-01-12 2018-01-12 テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体

Country Status (1)

Country Link
JP (1) JP2019125042A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309605A (zh) * 2020-02-07 2020-06-19 惠州Tcl移动通信有限公司 终端测试方法、装置、存储介质及终端设备
CN112732320A (zh) * 2021-01-14 2021-04-30 北京锐安科技有限公司 软件开发过程的持续集成方法、装置、电子设备及介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309605A (zh) * 2020-02-07 2020-06-19 惠州Tcl移动通信有限公司 终端测试方法、装置、存储介质及终端设备
CN111309605B (zh) * 2020-02-07 2023-11-14 惠州Tcl移动通信有限公司 终端测试方法、装置、存储介质及终端设备
CN112732320A (zh) * 2021-01-14 2021-04-30 北京锐安科技有限公司 软件开发过程的持续集成方法、装置、电子设备及介质
CN112732320B (zh) * 2021-01-14 2024-05-10 北京锐安科技有限公司 软件开发过程的持续集成方法、装置、电子设备及介质

Similar Documents

Publication Publication Date Title
JP2019036331A (ja) ダイアログカスタマイズのためのシステムおよび方法
CN112488855B (zh) 一种基于规则模板的业务校验方法及设备
EP3113016A1 (en) Tracing dependencies between development artifacts in a development project
JP2019125042A (ja) テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体
JP2020197873A (ja) 情報処理システム、及び情報処理システムの制御方法
JP6890557B2 (ja) 分析モデル作成システム、プログラミング装置および分析モデル作成方法
CN116301856B (zh) 一种可视化表单设计器的设计方法、装置、设备及介质
JP7246301B2 (ja) プログラム開発支援システム及びプログラム開発支援方法
JP6422346B2 (ja) プログラム生成装置、及び、プログラム生成方法
WO2017103996A1 (ja) 生産計画立案装置、及び生産計画立案方法
JP2013218381A (ja) ソフトウェア評価支援装置及びプログラム
JP6016735B2 (ja) 業務処理システム、業務に関する処理の生成方法、及びプログラム
JP6869082B2 (ja) テストケースを選択する計算機及びテストケースの選択方法
JP2021117524A (ja) ジョブ実行支援システム、及びジョブ実行支援方法
JP2016146022A (ja) モデルベース開発支援装置、モデルベース開発支援方法、およびモデルベース開発支援プログラム
US11334350B2 (en) Program component evaluation system and program component evaluation method
US11921496B2 (en) Information processing apparatus, information processing method and computer readable medium
CN116661758B (zh) 一种优化日志框架配置的方法、装置、电子设备及介质
JP2019101829A (ja) ソフトウェア部品管理システム、計算機および方法
CN110309038B (zh) 性能测试方法、装置、电子设备及计算机可读存储介质
US11593226B2 (en) System and method for ensuring compliance of protection policy requirements using visual representation of backups
JP6983693B2 (ja) スタブ生成支援装置、スタブ生成支援方法、及びプログラム
JP7001550B2 (ja) 画面分析支援装置、及び画面分析支援方法
CN115048151A (zh) 后台数据的配置方法及装置
JP2022106077A (ja) 開発支援プログラム、開発支援装置、及び開発支援方法