検索キーワード: 「サンプルコード」


テスト自動化について

近年、ソフトウェア開発の現場では“スピード”が勝負の鍵となっています。ユーザーの期待に応え続けるには、頻繁なアップデートとリリースが欠かせません。しかしその裏で、大きな課題となるのが「テスト工程」。そこに立ちはだかる工数の壁や品質保証のプレッシャーを、解決へと導いてくれるのがテスト自動化ツールです。今回は、実際に現場で自動化に携わってきた経験をもとに、テスト自動化の必要性や導入時のメリット・デメリット、代表的なツールの比較、そして国産の新興ツールまで、リアルな目線でお届けします。

テスト(運用・保守・サポート)

Gitの使い方

ツールのアップデートが頻繁に行われているWEB業界では、Gitを活用して業務を効率化させることが一般的になってきています。しかし、初心者の方や業界に馴染みのない方は、Gitが何のことかわからない方もきっといらっしゃるでしょう。多くの開発者に利用されている印象のあるGitですが、実はエンジニアだけではなく、WEBデザイナーやライターにとっても便利なツールのひとつです。Gitを活用することで、チームでの作業効率を高めたり、多くのファイルを管理することが簡単になります。というわけで本記事では、Gitについて基本的な用語について解説いたします。

【初心者】JavaScript

JavaScriptとは、動的なWebページを作るためのプログラミング言語の一つです。代表的な機能は、ボタンを押すと画面に別ウィンドウが開く「ポップアップウィンドウ」や、画像が自動送りされる「スライドショー(スライダー)」などの多様なアニメーションです。その他、システムやアプリ開発などのバックエンドでも用いられています。

【ゼロから始めるAI】巷で噂のAIを触ってみたい 第1回

よく話題に挙がる「AI」というものAI(人工知能)は、ChatGPTの登場以来、「会話ができるAIが誕生した!」とSNSやメディアで大きな注目を集めてきました。今では企業が業務に取り入れ始めており、社内チャットに導入したり、テスト工程で画像認識を活用したりと、すでにAIは社会に欠かせない存在となりつつあります。私のエンジニアの友人の中には、「このままではAIに仕事を奪われるかもしれない……」と危機感を抱く人も出てきています。さらに、ゲーム開発の分野でもAIを活用した取り組みが話題になるなど、AIの可能性はどんどん広がっています。とはいえ、世間でこれだけ話題になっていても、「AIって何となく分かるけど、実際の使い方までは分からない……」という人も多いのではないでしょうか。実は、私自身もその一人です。だったらいっそ、自分で触って、理解を深めてみよう! そう思い立ったのがこの企画の始まりです。AIを趣味や仕事に活かすヒントを探しながら、ゼロからAIについて学んでいきたいと思います。このシリーズでは、「とにかく簡単に始めてみる」をテーマに、AIの基礎から実際の使い方まで、やさしく解説していきます。

マークアップ言語でなにができる?その種類と活用法を紹介!

マークアップ言語とは、文書の構造や見た目を表現するための言語のことで、HTMLやXMLなどが有名です。マークアップ言語は、プログラミング言語とは異なり、命令や計算を行うことはできませんが、文書の意味やレイアウトを定義することができます。この記事では、マークアップ言語の特徴やできること、プログラミング言語との違いなどを紹介しながら、マークアップ言語の種類や用途についても説明していきます。

【初心者用】オブジェクト指向におけるカプセル化について

カプセル化とは、オブジェクト指向における考え方の一つです。 オブジェクト指向については、他サイトで色々と説明が為されておりますが、調べるのが億劫な方は、ざっくり「各々の細かい処理を別クラスに分けて部品化し、メインとなるクラスからそれらを呼び出すという考え方」程度には認識しておいてください。 今回は、カプセル化とはどういった考え方か、その具体例を交えて説明していきたいと思います。

製造・コーディング(PG/バックエンド)

【初心者向け】Packet Tracerでネットワークを学ぶ(ルーティング①)

ルータとはルーティングを行う機器です。 ルーティングとはデータの転送を行う際にルーティングテーブルを参照して経路を判断し転送することです。

詳細設計(内部設計)(インフラ)

ActiveReports学習2

前回までは、ActiveReportsの特徴やレポートの種類について学習しました。今回からは構造について学習していきたいと思います。

製造・コーディング(インフラ)

自宅のWindowsでRuby on Rails ~データベース操作2

自宅のWindowsでRuby on Rails ~データベース操作1の続きです。

製造・コーディング(PG/バックエンド)

【ソフトウェアテスト】CFD法

CFD法はCause Flow Diagram(原因流れ図)を略したもので、原因の集合と結果をそれぞれの関係のつながりにフォーカスして図式化し、そこからデシジョンテーブルを想定してテストケースを作成する技法です。システム設計において、正常な動作の仕様を基本として異常系の仕様もエラー動作実装のため明確に定義されているべきですが、テスト実施の際には、仕様想定上の正常系・異常系動作確認はもとより、考え得る限りの準正常系テストケース網羅も必要です。そうしたケースの考慮が足りていないと、リリース後にユーザーが想定外の操作を実行して重篤な不具合につながったり、あるいは仕様の穴を付いた不正処理などを実行されたりして、プロジェクトやサービスに損失が発生したりします。原因・結果・各関係を図示して明確に関係を洗い出すことで、実装段階では考慮が漏れているような挙動についても抜けや漏れをカバーするようにテストすることができます。また、エラーに関するもののみではなく、同値分割が可能な原因が複数関連して複数の結果が想定されるというシステムで、その関係性を図にして流れを見ることで、テストケース作成がグラフィカルに把握しやすくなります。インターネットでクレジットカードを利用して決済処理を実行する際に、完了までには以下の様な結果パターンが想定されます。・カード情報入力エラー(入力したカード利用情報に問題がある)・決済処理不能エラー(登録しているカード情報の照会時にエラーが発生)・通信不良による接続タイムアウトエラー(決済実行から完了までの通信時間が規定の時間内に処理されないことによるエラー)・決済完了上記4パターンの結果を返すまでの原因は、細部まで書き出すと煩雑になります。・複数の入力フォームに入力した情報のどこがエラーになったか・カード情報照会時にどのような理由でエラーになったか・どのページからどのページに遷移するときにエラーになったか・何秒以上の通信待機時間を過ぎたら通信エラーで処理するか等これらを一つの枠に収めてそれぞれを線でつなぐことで関係性を整理できるのが、このCFD法の利点だと思います。

テスト(運用・保守・サポート)

【ソフトウェアテスト】直交表/ペアワイズ法 ①

本記事では直交表について記載します。さまざまな資料を調べて情報をまとめているうちに、直交表、ペアワイズ、HAYST法はそれぞれ直交表を元に関連しているようだと思ったので、直交表から順を追って記載していこうと思います。しかし、それぞれが個別の手法として確立しており、その手法を使用するシーンも違うことから、記事としては独立させたほうが適切かと思ったので、まずは直交表についてまとめたのち、続いて別の記事でペアワイズ法をまとめていきます。

テスト(運用・保守・サポート)

【ソフトウェアテスト】ユースケーステスト

ユースケース(use case)テストとは、システム開発要件や機能仕様などのテスト対象に対して利用者サイドから想定しうるテスト対象の使用状況や相互の作用をユースケースとしてシナリオを想定することで、対象の利用に際して問題がないかを主軸にしてテストを行う手法です。シナリオを想定してテストを行うため、シナリオテストと混同されやすいですが、シナリオテストと比較してテスト対象や目的やテストの粒度など違う部分があるので、ユースケーステストとシナリオテストはそれぞれ別の手法として、実施するテストケースに応じて使い分けが必要です。シナリオテストは主に特定の機能や操作の流れを一連のシナリオとしてテストするもので、対象となる仕様や要件のみならず、ストーリーとして関連が想定される動作や異常系処理などもテストスコープに含むため、ユーザーサイドの視点で対象に対して詳細なテストを実施しますが、ユースケーステストは、あくまで対象となる仕様や要件から想定されうるユーザーストーリーをテスト対象とする前提で、シナリオテストよりもテストスコープは狭くなると想定されます。また、記事内にて後述しますが、ユースケース図を用いていることもユースケーステストの特徴であり、シナリオを順序立てる記述形式はシナリオテストもユースケーステストも同様ですが、テストケースの整理や共有の方法によってテストケース自体をレビューできるため、静的テストのアプローチがしやすいテスト技法です。

テスト(運用・保守・サポート)

関連タグ

カテゴリ別人気記事

もっと見る
テレワーク関連人気記事

週間人気記事

もっと見る