問題タブ [specs2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
5235 参照

scala - Scalacheck で Specs2 を使用して文字列引数のテストを自動化する方法は?

Scala 用に書き直された specs2テスト フレームワークは、自動テストをscalacheckと統合します。scalacheck を specs2 と一緒に使用する方法に関する specs2 のドキュメントに記載されている例では、整数を使用するか、 eric の json の例のように、より複雑なカスタム ジェネレーターを使用します。

少し複雑でない例を機能させようとしている間、整数の代わりに文字列引数を生成したい場合に specs2 と scalacheck を使用する方法がわからないため、苦労しています。このクイックスタートの例はどのように

p>

scalacheck のホームページの外観から取得しましたが、scalacheck 統合を使用して Specs2 仕様として記述されている場合は?

0 投票する
3 に答える
8882 参照

scala - 複数のテストケースを含むScalatestまたはspecs2

TestNgとJavaでは、DataProviderを使用して複数のテストケースを実行できます。これは個別のテストとして実行されます。つまり、失敗してもテストの実行は停止されません。ScalaTestまたはSpecs/Specs2の類似物はありますか?

0 投票する
2 に答える
1528 参照

scala - sbt0.10でのspecs2テスト用のjunitxml出力の構成

specs2でjunitxmlオプションを使用するようにsbt0.10を構成するにはどうすればよいですか?

specs2のドキュメントには、これがsbt0.7.xを使用して行う方法であると記載されています。

override def testOptions = super.testOptions ++ Seq(TestArgument("junitxml"))

sbt 0.10で同じことを言うにはどうすればよいですか?

0 投票する
1 に答える
306 参照

scala - Specs2 の記述とマッチャーの値を再利用する方法は?

私は現在|>、次のことを達成するために from scalaz を使用しています:

これにより.toString、テスト ケースの記述内でオブジェクトの を再利用できます。しかし、Specs2 は、フォルダーをスキャンしてテストのソースから何かを抽出するような複雑なものをサポートしているように見えるので、src彼らはこの特定のユース ケースについて考えたに違いありません。

, などもありますがGiven、非常WhenThen冗長に見えます。

では、説明とマッチャーに同じオブジェクトを再利用するにはどうすればよいでしょうか? 私の解決策は受け入れられると思いますが、括弧が私を悩ませています。実際には、次のようになります。

0 投票する
1 に答える
1582 参照

scala - コマンドラインからScala+specs2を実行するにはどうすればよいですか?

私は完全に初心者のScalaプログラマーであり、Javaの経験はありません。私はルビーから来ました。最初のTDDサンプルプログラムを実行しようとしています。私は非常に小さなものを計画しており、おそらく5つか6つのテストがあります。私はspecs2libを使おうとしています。私はIDEを持っていません。通常、vimでプログラミングし、コマンドラインから実行します。

コマンドラインから小さな.scalaファイルでscalaとspecs2を操作するにはどうすればよいですか?

クイックスタートでは、次のように述べています。

  1. そのelipsis(...)が何を表しているのかわかりません。私はそこに何を置く必要がありますか?
  2. そのコマンドは(私が推測する)という名前のファイルを参照しますspecs2.run。しかし、ダウンロードセクションでは、.jarファイルしか取得できません。どこにありspecs2.runますか?
  3. 依存関係のセクションでは、sbtとmavenの2つのテクノロジーの間に与えられています(私はそれらをグーグルで検索しましたが、以前は知りませんでした)。何があってもsbt/mavenを使用する必要がありますか?コンソールコマンドだけを使用することはできませんか?5つのテストを含むたった1つのファイルです。
  4. サンプルアプリがあることは承知していますが、実行方法の説明はありません。sbtとmavenで動作するように準備されていると思います。簡単なテストを行うためだけに、これらのいずれかを使用する方法を学ぶ必要はありません。出来ますか?

どうもありがとう。

0 投票する
1 に答える
1128 参照

scala - モジュール方式でSpecs2マッチャーを作成する

私は機能を持っていますA => DoublebeCloseToこのような2つの関数が、特定の値のセットに対して同じ結果(許容範囲まで、既存のマッチャーを使用)を提供するかどうかを確認したいと思います。

私は書くことができるようになりたい:

単にゼロから書くのではなく、モジュール方式でこのマッチャーを構築したいと思いMatcher[TF]ます。

私が書くことができればそれはさらに良いかもしれません:

また、マッチャーが失敗したときに合理的な説明を取得したいと思います。

編集

その上で寝た後、私は次のことを思いついた。

これはEricのソリューションよりもはるかに短いですが、適切な失敗メッセージを提供しません。私ができるようにしたいのは、2番目の方法でマップされた値の名前を変更することです。次のようなもの(コンパイルされません)。

0 投票する
2 に答える
549 参照

scala - Specs2: Seq[Matcher[A]] を単一の Matcher[A] に変換する方法は?

シーケンスを指定すると、シーケンス内のすべてのマッチャーが成功したときに成功するSeq[Matcher[A]]シングルを取得したいと考えています。Matcher[A]

編集

私自身が提供した答えは少し不器用に思えます。さらに、シーケンスのすべての失敗したマッチャーが結果を生成した場合はいいでしょう

0 投票する
5 に答える
8142 参照

scala - テストの並列実行

SBT が私の specs2 テストを並行して実行していることに気付きました。私のテストの1つがファイルからの読み取りと書き込みを伴うため、予期せず失敗することを除いて、これは良いようです。たとえば、以下を参照してください。

より良いオプションはありますか

  1. すべてのテストを連続して実行するように設定し、
  2. テストごとに個別のファイル名とティアダウンを使用していますか?
0 投票する
2 に答える
793 参照

scala - Specs2 で最後にクロージャーを使用してテストを作成しようとすると失敗する

Specs2 を使用して次の仕様を記述しようとしていますが、動作しないようです。コンパイラは常に「Unit => org.specs2.execute.Result から暗黙的なビューを利用できません」と不平を言います。

テストソースは次のとおりです。

完了時の削除機能は次のとおりです。

この行が仕様の最後にある場合、機能します。

なぜこのように失敗するのでしょうか? また、クロージャを引き続き使用してテストをコンパイルするにはどうすればよいでしょうか?

編集

deleteWhenDone 呼び出しを次のように変更しました。

しかし、まだ機能しません。

編集2

ラファエルの答えのおかげで、それを機能させる最終的なコードは次のとおりです。

メソッドの戻り値の型がありませんでした。ありがとう!

0 投票する
2 に答える
1637 参照

unit-testing - Scala 仕様の単体テスト

次のクラスがあり、いくつかの Spec テスト ケースを書きたいと思っていますが、本当に初めてで、開始方法がわかりません。私のクラスは次のようになります:

ありがとうございました!