【ソフトウェアテスト】テスト技法の有用性
世に存在するさまざまなソフトウェアテスト技法について、自身のナレッジ整理もかねて詳細をまとめようと思いました。ですが、いろいろなプロジェクトで開発エンジニア・PdM・PM・QAなどさまざまな方と関わらせていただく中で、QAテスター/テストエンジニア等のポジションの方以外には、ソフトウェアテストに技法が存在するということや、テスト技法を用いる意味とメリットについてあまり認識されていないかも知れないと思いました。まずはソフトウェア開発現場でソフトウェアテスト技法を用いたテストを実施することの理由などについてまとめます。
テスト(運用・保守・サポート)
【ソフトウェアテスト】ドメイン分析テスト
同値分割法/境界値分析については他の記事で記載しましたが、ドメイン分析テストも境界値を用いてテストします。このテスト方法は、関係性のある複数の変数について、入力データの有効範囲にフォーカスしてテストをする手法です。同値分割法/境界値分析では、一つの機能に関して境界がいくつか設定されていて、各境界の前後でそれぞれ動作が変わるような仕様に対してパーティションを分けてテストしていましたが、そのような数値による境界をもつ機能がいくつか関連して複数結果に分かれるような仕様のケースでは、ドメイン分析テスト技法が使用できます。ゲームのダメージ計算式で、与えた最終ダメージ数値に応じてクリティカル倍率をかけた数値を上乗せするといった場合に、元となるダメージ数値がいくつか、相手の防御数値がいくつか、数値いくつ以上でクリティカル倍率は何倍が適用されるか、各数値には有効・無効となる境界があり、かつ最終の数値ごとに複数のクリティカル倍率が用意されているといった仕様があったときに、ドメイン分析テストによって必要なテストケースを洗い出すことができます。
テスト(運用・保守・サポート)
【QA】テストケースの書き方
システム開発における評価・検証では評価する為の状態や手順、そして確認するべき期待結果等の情報をまとめたテストケースを事前に作成することになります。しかしテストケースの書き方が不十分であると他の実施者がそれを見た時はもちろん、テストケースを作成した本人でもいざ評価をする際にテストケースに書かれた情報を正しく読み取ることが出来ない可能性があります。良質なテストケースは"誰が実施しても同じ期待値を得られる"ということです。本稿ではそのために意識するべきことをまとめていきます。
【初心者向け】ORMとは
ORMとは英語でObject-Relational Mappingといい、オブジェクト指向プログラミング言語とリレーショナルデータベースとのマッピングを行うものになります。またそれぞれの互換性を向上させるために設計されたプログラミング技術でもあります。ORMの基本的な構造として、プログラミング言語のクラスとデータベースのテーブルを関連付けや対応付けを行うことから始まります。これにより、エンジニアは直接SQLクエリを作成することなく、ORMを通じてデータベースとやりとりを行うことができます。そもそもオブジェクト指向プログラミング言語と、リレーショナルデータベースとはなにかを簡単に説明します。オブジェクト指向言語:データ(オブジェクト)とそれに関連する操作(メソッド)を組み合わせてプログラムを構築するプログラム言語のことです。リレーショナルデータベース:データを表形式で管理するデータベースの一種です。リレーショナルデータベースでは、データが複数のテーブルに分割され、それらの表の間に関係性が定義されています。ではなぜORMという技術が出てきたのでしょうか。
【2023年版】Pythonのフレームワーク大解剖!人気のフレームワーク4選
Pythonのフレームワークって何があるの?Pythonのフレームワークにはどんな種類があるの?Pythonのおすすめのフレームワークが知りたい。このような疑問をお持ちの方も多いことでしょう。近年、PythonはAI(人工知能)開発において注目を浴び、その人気は急上昇しています。同時に、Pythonを活用するためのさまざまなフレームワークが登場しており、選択肢の多さに戸惑うこともあるかもしれません。AIやウェブ開発、データ解析など、Pythonの適用範囲は広く、その多様性ゆえにどのフレームワークを選ぶべきか、どれを学ぶべきかを選ぶのは決して簡単なことではありません。しかし、この記事ではそんな悩みを解消するために、Pythonのおすすめフレームワークを目的や用途別に紹介し、選び方のポイントも提供します。つまり、あなたの目標やニーズに合った最適なPythonフレームワークを見つけるお手伝いをさせていただきます。Pythonのフレームワーク選びに迷っている方、どのフレームワークが自分に合っているのか迷走している方、ぜひこの記事を読み進めてください。自分にピッタリのPythonフレームワークが見つかるかもしれません。
インフラエンジニアのキャリアアップに必要な資格とは?難易度別にご紹介!
インフラエンジニアとして活躍される方々の中には、社内の保守・運用案件に配属され、やりがいを感じながらも、日々ルーティンワークに追われて成長を実感できず、将来に不安を抱く方もいらっしゃるかもしれません。そこで、本記事では、そのような方に向けて、インフラエンジニアのキャリアアップに必要な資格についてご紹介します。
【進化するSwift】特徴と将来性に迫る
SwiftはAppleが開発したプログラミング言語であり、iOS、macOS、iPadOS、watchOS、tvOSなどのAppleの製品開発に広く使用されています。その特徴や将来性を知りたい方のために、Swiftの魅力を紹介します。
インフラエンジニアがCCNA資格を取得するべき理由と試験のポイント
インフラエンジニアとしてのキャリアを積んでいくためには、自分のスキルや知識を常にアップデートしていくことが必要です。しかし、どのようなスキルや知識が必要なのか、どのように学習すればいいのか、悩んでいる方も多いのではないでしょうか。そんな方におすすめなのが、CCNA(Cisco Certified Network Associate)という資格です。CCNAは、ネットワークの基礎から応用までを網羅した、世界的に認められた資格です。この記事では、CCNAとは何か、CCNAを取得するメリット、CCNAの難易度と試験の概要、CCNAの試験範囲について解説します。
【初心者用】SQLのテーブル取得について色々操作をしてみた
SQLには色々なテーブル取得の方法がある。 今回は、実際の現場で使用されることが想定されるSQLのデータ取得について操作をしながら学んでいく。 参考サイト 指定した値の範囲と比較する(BETWEEN演算子) https://style.potepan.com/articles/27029.html SQL BETWEEN演算子の構文と使い方 データを範囲指定して抽出する https://tech.pjin.jp/blog/2020/12/28/%E3%80%90sql%E5%85%A5%E9%96%80%E3%80%91in%E6%BC%94%E7%AE%97%E5%AD%90%E3%81%AB%E3%82%88%E3%82%8B%E6%9D%A1%E4%BB%B6%E6%8C%87%E5%AE%9A/ SQL基礎 IN演算子に夜条件指定 https://tech.pjin.jp/blog/2020/12/25/%E3%80%90sql%E5%85%A5%E9%96%80%E3%80%91like%E6%BC%94%E7%AE%97%E5%AD%90%E3%81%AB%E3%82%88%E3%82%8B%E6%9D%A1%E4%BB%B6%E6%8C%87%E5%AE%9A/ SQL基礎 LIKE演算子による条件指定 https://www.sejuku.net/blog/72923 SQL GROUP BYで自在に集計! 集計関数やHAVINGと合わせて使おう https://www.sejuku.net/blog/72918 SQLで並び替え! ORDER BYを基礎から応用まで学ぼう https://www.sejuku.net/blog/54990 SQL入門 DISTINCTで重複行をまとめる方法
製造・コーディング(SE)
Pythonフレームワーク、Django(ジャンゴ)とは
Django(ジャンゴ)とはPythonのWEBアプリケーションフレームワークの1つであり、昨今人気を集めているフレームワークの1つでもあります。 今回の記事を読むことで分かること ・Djangoで出来ることが分かる ・Djangoの概要が分かる
製造・コーディング(PG/バックエンド)
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年10月26日
テスト(運用・保守・サポート)2023年11月17日
2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見る【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
インデックスとは?メリットデメリットやインデックスの種類も交えてご紹介
インデックスとは、データベースを扱う際には欠かすことのできない概念となります。インデックスの取り扱いによって、データのアクセス速度が大きく変わります。特に大規模なデータを扱う場合には、取り扱いに気をつけなくてはなりません。インデックスを設定した結果、処理速度が遅くなってしまうことやそもそもインデックスを使用するような実行計画が選択されないこともあるのです。インデックスは、DBMSの種類(例えば、OracleやMySQL、Postgreなど)によっても異なります。インデックスの仕様を知らないと、開発者にとって意図しない処理をしてしまう可能性もあります。そこで今回はインデックスについてメリットデメリットや具体的にどのような種類があるのかを説明していきます。
【初心者向け】Packet Tracerでネットワークを学ぶ(CLI操作の基本編①)
ルータ初期設定編ではPacket Tracerを使ってルータを直接操作し色々な設定を試してみたいと思います。 まずCisco製品のルータにはPCと同様にOSがインストールされています。 それが「Cisco IOS(Internetwork Operating System)」です。 スイッチでもこのOSを利用しています。 Cisco IOSはWindowsのようなグラフィカルなインターフェースではなくコマンド入力のみで様々な操作を行うインターフェースになります。 コマンドで操作するインターフェースのことを「CLI(Command Line Interface)」と言います。
詳細設計(内部設計)(インフラ)
GitHubのReadmeをMarkdown記法で書く
Markdown記法は、プレーンテキストに特定の書式を付けることで、簡単にWebページやドキュメントを作成するための記法です。Markdown記法は、文書の見た目を整えるためのHTMLタグを記述する必要がなく、テキストファイルとしても読み書きが容易であるため、多くの人々によって広く使用されています。
プロジェクト推進・管理(PG/バックエンド)
CIとは何か?代表的なCIツールの特徴とメリット・デメリットを解説
CIとは、開発者がコードを頻繁に統合し、自動的にテストやビルドを行うことで、品質や効率を向上させる手法です。 CIを実現するためには、CIツールと呼ばれる専用のソフトウェアが必要です。 CIツールは、コードの変更を検知し、自動的にテストやビルドを実行し、結果を報告する機能を提供します。しかし、CIツールには様々な種類があり、それぞれに特徴やメリット・デメリットがあります。 では、どのようにしてCIツールを選ぶべきでしょうか? この記事では、代表的なCIツールの概要と選び方について解説します。
