Test tool

【Scala】ScalaTest ~ with Mockito ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/03/27/001306 https://dk521123.hatenablog.com/entry/2023/03/28/003906 https://dk521123.hatenablog.com/entry/2023/03/29/000014 の続き。 Scala の単体試験で、ScalaTest をベースにやってきた…

【Scala】ScalaTest ~ with ScalaCheck ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/03/27/001306 https://dk521123.hatenablog.com/entry/2023/03/28/003906 の続き。 今回は、ScalaTest + ScalaCheck (org.scalatestplus) を使って プロパティベーステスト (Property Based Testing;…

【JUnit】ランダムデータ生成によるテスト ~ jPopulator / junit-quickcheck ~

■ はじめに * Javaのランダムデータ生成によるテストツール 【1】 jPopulator 【2】 junit-quickcheck 参考文献 jPopulator https://qiita.com/cactaceae/items/0eba51665d4a52e5b952 junit-quickcheck https://qiita.com/cactaceae/items/c279f3c908600c3…

【JUnit】 AssertJ / AssertJ-DB ~ 基本編 [1] / DBデータの比較について ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/36157721.html の続き。 今回は、時間以外のDBデータの比較について扱う。 なお、時間に関する比較は、以下の関連記事を参照。 AssertJ / AssertJ-DB ~ 基本編 [3] / 時間に関する比較 ~ https://blogs.yah…

【Java】 PowerMock ~ 入門編 ~

【1】公式サイト https://github.com/powermock/powermock 【2】初期設定 * Gradleを使う build.gradle dependencies { // PowerMock testCompile group: 'org.powermock', name: 'powermock-module-junit4', version: '1.7.3' testCompile group: 'org.po…

【JUnit】【Mail】 Email送信に関する単体試験について ~ SubEthaMail編 ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/36257589.html の続き。 今回は、「SubEthaMail」を試す。 ■ 設定 * Gradleを使う build.gradle dependencies { // Use JUnit test framework testImplementation 'junit:junit:4.12' // SubEthaMail testCom…

【JUnit】 JUnit で環境変数を変更するテストを行うには...

■ JUnit で環境変数を変更するテストを行うには... 以下の2つの方法がある 【1】System Rulesを使う http://stefanbirkner.github.io/system-rules/ 【2】PowerMockを使う 【1】System Rulesを使う ■ 設定 http://stefanbirkner.github.io/system-rules/d…

【Linux】【Mail】 Linuxでの開発用SMTPサーバー [2] ~ MailCatcher編 ~

■ はじめに http://blogs.yahoo.co.jp/dk521123/36252946.html の続き。今度は、MailCatcher。 ■ MailCatcher * 開発などのダミーSMTPサーバ 公式サイト https://mailcatcher.me/ ■ 設定手順 設定環境 * OS : CentOS7 【1】 MailCatcher のインストール [1-…

【負荷テスト】 【JMeter】JMeter ~ 基礎知識編 ~

■ JMeter * Java製のオープンソース 用途 * 負荷テスト * パフォーマンス計測 ■ 用語整理 * JMeterというより、負荷テストに関連する用語を整理する `用語`説明 レイテンシ(Latency=潜在)リクエスト出してからレスポンスを受け取るまでの遅延時間 Ramp-Up…

【負荷テスト】 【JMeter】JMeter ~ コントローラ 編 ~

■ Ifコントローラ * 分岐 追加方法 * 右クリックし、[追加]-[ロジックコントローラ]-[Ifコントローラ]を選択 使用上の注意 * 負荷の上限が落ち込む可能性がある 参考文献 http://seesaawiki.jp/w/susatadahiro/d/%A5%B3%A5%F3%A5%C8%A5%ED%A1%BC%A5%E9%A1%CA…

【負荷テスト】 【JMeter】JMeter ~ Linux環境構築編 ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/37280266.html で、Windows環境下において、JMeterを動かしたが 今度は、Linuxで動かしてみる。 ■ 環境設定 [1] Java のインストール [2] jmeter ダウンロードおよびインストール [3] 【日本語環境下のOS】[J…

【JMX】 JConsole

■ 用語整理 * まず、用語の整理から。 JMX Java Management Extensions(JMX) * Java アプリケーションをモニタおよび管理するための仕様 `#`構成要素説明 1MBean管理対象オブジェクトに対応する管理用オブジェクト 2MBeanServerMBeanのコンテナ 3Connector…

【負荷テスト】 【JMeter】JMeter ~ Windows環境構築編 ~

■ JMeterについて * 以下の関連記事を参照のこと。 【負荷テスト】 【JMeter】JMeter ~ 基礎知識編 ~ https://blogs.yahoo.co.jp/dk521123/37336527.html ■ 設定 / 起動 ダウンロード * 以下のURLから、JMeter をダウンロード(今回は、「apache-jmeter-3.…

【負荷テスト】 【JMeter】JMeter ~ プラグイン導入編 ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/37280266.html で、 JMeter の設定を行ったが、 プラグインもあるようなので、設定してみる ■ 環境設定 前提条件:JMeterのインストール * JMeterのインストールを行っていない場合、 以下の関連記事を参照の…

【Windows】【Mail】 Windowsでの開発用SMTPサーバー ~ ダミーSMTPサーバ構築 ~

■ Windowsでの開発用メールサーバソフト [1] smtp4dev [2] BlackJumboDog Linux版は、以下の関連記事を参照 https://blogs.yahoo.co.jp/dk521123/36252946.html [1] smtp4dev 環境設定 * 以下のサイトから「smtp4dev-X.X.X-binaries.zip」(今回は「smtp4dev…

【JUnit】AssertJ / AssertJ-DB ~ 基本編 [3] / 時間に関する比較 ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/36164701.html の続き。 ■ 日付の比較でよく使うメソッド * isEqualTo : 同じ日付の場合 * isAfter : その日付以降の場合 * isAfterOrEqualTo : 同じ日付又は、その日付以降の場合 * isBefore : その日付以前…

【負荷テスト】 【JMeter】JMeter ~ メモリ不足時の対処 ~

はじめに * JMeter で負荷テストするときに当たり前だが重い処理を行う場合もあるが その際に、「OutOfMemory」の例外が発生して、まともにテストできないので その対処策を記す 対応策 [a] ヒープメモリを増やす [b] Non GUI(CUI)モードで実行する << ★実…

【負荷テスト】 【JMeter】JMeter ~ CSV読み込み編 ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/36908158.html https://blogs.yahoo.co.jp/dk521123/36910281.html の続き。 例えば、1万ユーザで別々のアカウントでログインした場合のテストをしたいってなったら物凄い面倒くさい。 しかし、1万ユーザおよ…

【負荷テスト】 【JMeter】JMeter ~ あれこれ 編 ~

はじめに https://blogs.yahoo.co.jp/dk521123/36908158.html の続き。少し実用的な試験になるような手順を補足していく 構成 [TestPlan] + [User Defined Variables] (ユーザー定義変数) + [HTTP Request Defaults](HTTPリクエスト初期値設定) + [Number …

【負荷テスト】 【JMeter】JMeter ~ Webサービス / SOAP 編 ~

■ 前提条件 * JMeterがインストールされていること * 環境構築については、以下の関連記事を参照のこと。 https://blogs.yahoo.co.jp/dk521123/37280266.html ■ 実行環境 * 実行環境は以下の通り JMeter実行環境 + OS : Windows10 Webサービス環境 + OS : Wi…

【Linux】【Mail】 Linuxでの開発用SMTPサーバー [1] ~ FakeSMTP編 ~

■ はじめに http://blogs.yahoo.co.jp/dk521123/36230453.html で、Windows環境にて、ダミーSMTPサーバとして、smtp4dev を利用した。 今回は、Linux環境で、ダミーSMTPサーバを立てる Windows版については、以下の関連記事を参照のこと https://blogs.yahoo…

【JUnit】【Mail】 Email送信に関する単体試験について ~ Dumbster編 ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/36230453.html でメール送信機能を作ったが、単体試験をするのを調べてみた JUnitメールテストライブラリ [1] Dumbster [2] SubEthaMail 今回は、「[1] Dumbster」を扱う。 「[2] SubEthaMail」については、…

【JUnit】【トラブル】 MySQL利用でAssertJ-DB を使った単体テストを行ったら日時でエラーになる

現象 * MySQLを利用したシステムで、AssertJ-DB を使った単体テストを行ったら 日時でエラーになってしまう 単体試験内容 Calendar targetDate = Calendar.getInstance(); int result = TargetSample3.insert("X0001", "Apple", 129, targetDate); // 略 ass…

【JUnit】 AssertJ / AssertJ-DB ~ 基本編 [2] / 時間に関する処理 ~

■ はじめに http://blogs.yahoo.co.jp/dk521123/36157721.html で取り扱った AssertJ-DB だが、全然情報がないので 分かった事をこまめにメモる。 ■ 日付/時間/日時について https://joel-costigliola.github.io/assertj/assertj-db-concepts.html#datevalue…

【JUnit】 AssertJ / AssertJ-DB ~ 入門編 ~

■ はじめに http://blogs.yahoo.co.jp/dk521123/36156793.html の続き。 DbSetup だけだと、更新系(INSERT/UPDATE/DELETE)の確認はできそうにないので AssertJ / AssertJ-DB で確認する。 なお、以下のサイトが非常に参考になった。 http://qiita.com/masats…

【JUnit】 DbSetup ~ 入門編 ~

■ DbSetup * DBの単体試験における以下の事ができる 1) DBのデータクリア(初め、後処理) 2) テストデータをDBに入れる メモ * 参照系の試験で使用するには、使いやすい * 更新系の確認するためのツールではない(?) => AssertJ-DBなどで行う? => Assert…

【JUnit】 DbUnit ~ 入門編 ~

■ JavaでのDBにまつわる単体試験 以下のツールがある [1] DbUnit ★今回はこっちを取り上げる★ [2] DbSetup / AssertJ-DB * DbSetupについては、以下の関連記事を参照のこと http://blogs.yahoo.co.jp/dk521123/36156793.html * AssertJ-DBについては、以下の…

【ZAP】OWASP ZAP ~入門編~

OWASP ZAP * OWASP(Open Web Application Security Project。「オワスペ」)で開発された オープンソースの脆弱性検査ツール 補足 * 以下のIPAのサイトで「Paros」と比較しているが、OWASP ZAPは「Paros」をベースに開発 https://www.ipa.go.jp/about/techn…

【Eclipse】【Java】 カバレッジツール ~ Cobertura 編 ~

■ はじめに * カバレッジツール * Coberturaで、「コヴェルトゥーラ」と読むらしい http://d.hatena.ne.jp/selenium_blog/20060309/1141927245 補足:別のライブラリについて * 以下の関連記事を参照 カバレッジツール ~ EclEmma ~ https://blogs.yahoo.co…

【JUnit】 JUnit ~ アノテーション編 ~

■ 基本 `アノテーション`説明備考 @Testテストメソッドを表す @Test * JUnit は、このアノテーションがついたメソッドをテストメソッドとみなしてくれる * メソッド名は任意 例 @Test public void testGetGifWidth() { int result = 0; try { result = obj.g…