ラベル アジャイル の投稿を表示しています。 すべての投稿を表示
ラベル アジャイル の投稿を表示しています。 すべての投稿を表示

2019年5月13日月曜日

GeneXusでDevOps

久しぶりに技術的な記事を連載したいと思います。テーマは「GeneXusでDevOps」。DevOps自体の説明は省略しますが、もともとGeneXusはアジャイルの思想を強く意識しており、世の中がアジャイル開発→継続的インテグレーション(CI)・継続的デリバリ(CD)→DevOpsと方法論やツールが広がる中、GeneXus自体も機能の追加が行われてきました。





当ブログでも今までビルドやデプロイに関する記事は書いてきましたが、GeneXus16が正式リリースされましたので、最新情報を元に再度構成し直してお送りしたいと思います。

1.バージョン管理
2.ビルド
3.デプロイ
4.CIツールとの連携
5.テスト


乞うご期待下さい。



2008年9月25日木曜日

テストソリューション

さまざまなセッションの中でGenexusを使った開発でのテストに関するソリューションがありましたので、ここで紹介します。

・GxTest

 GxTestのサムネール画像

Abstracta社の製品で、モデルベースのテスト製品です。

 この製品はGeneXus XのExtension(拡張モジュール)ではなく、独立したアプリケーションです。

テストケースごとにキャンバスに画面遷移をモデル図として描き、そのモデルに従ってテストが自動で行われます。
GxTest2

テストの結果はこのようなレポート画面として出力されます。

GxTest3


GxTest4


  • GxUnit

もう一つテスト系ソフトを。

こちらは単体テスト用のExtensionです。

GxUnitではプロシージャオブジェクトを対象にブラックボックステストを行うテストツールです。


GxUnit2


テスト対象となるプロシージャを指定すると、そのインターフェイス(Parmルール)を読み取って、インプット値をセットする項目が設定されます。


GxUnit3


テストケースごとにインプット項目に値を設定し、テストを実行するとケースごとにテストが行われ、結果が記録されます。


GxUnit4



レポートもこのように表示されます。

GxUnit5




一般の開発ですと、xUnit(JUnitやNUnitなど)が単体テストのフレームワークとして普及していますが、それと同様のテストがこのGxUnitにて可能になるわけです。



単体(Unit)テストについて補足を・・・

もともとXP(エクストリーム・プログラミング)では、


  • 単体テストを自動化する

  • 単体テストはブラックボックステストにする

  • インターフェイス(パラメータ)が変わらない間は何度でも(しかも自動で)テストが可能

  • よって、(テスト対象となるモジュールの)ソースコードはどんどん変更してもよく

  • 一度テストが通ったコードでも、きれいに書き直す - リファクタリング - を推奨する

というポリシーがあります。

実際にはテストファースト(プログラムコードの前にテストコードを書く)というのもありますが、ここでは割愛します。



日本においては、「自動化」という言葉にどうしても抵抗感がある方々がいますが、上記のようにXPの世界では、自動化自体は目的ではなく、自動化することにより


  • 繰り返し(手間無く)テストが可能

  • ビックバンテストではなく、ちょっと作ってすぐテストが可能(常に動作し、テストにパスしているコード)

  • テストを行えば、結果(エラーが)がすぐわかるので、ソースコードの修正を推奨し、誰が見てもわかりやすいソースを目指すことができる

といった事を狙っています。