問題タブ [scalacheck]
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.
scala - ScalaTest で SBT を使用する場合、ScalaCheck/Specs の警告を安全に無視できますか?
私は単純なFunSuite
ベースの ScalaTest を持っています:
次のSBTプロジェクト構成で実行しています:
ただし、実行するsbt test
と、次の警告が表示されます。
現時点では、これらは単なる「ノイズ」(統合テスト インターフェースが原因でしょうか?) であり、無視しても問題ないと思います。しかし、私の内部のOCDの一部にとっては少し面倒です(ただし、他のフレームワークの依存関係を追加する準備ができているほど面倒ではありません)。
これは正しい仮定ですか、それともテスト/構成コードに微妙なエラーがありますか? 無視しても安全な場合、これらのエラーを抑制する他の方法はありますか?または、さまざまなテストに最適なアプローチを選択して選択できるように、3つのフレームワークすべてを日常的に含めていますか?
TIA、ポール。
(追加: scala v2.7.7 および sbt v0.7.4)
scala - scala-2.8とscalacheckのエラー:Propのバージョンが間違っています
これは実際のscala-2.8であり、scalacheckは直前にsbazで更新されました(sbaz更新; sbazアップグレード)。
scala-2.8のscalacheckは開発中であり、2.8には適していませんか、それとも何が問題なのですか?
ソースを取得して、自分でscalacheckを再コンパイルする必要がありますか?
testing - scalacheckの通常のクラスのジェネレーター
scalacheckのユーザーガイドには、「ケースクラスの生成」の段落があります。ケースクラスの代わりに通常のクラスを使用するように例を変更しました。
すべてが機能しているように見えますが、ここで質問する前に、本番コードでこのアプローチを使用することを恐れています。落とし穴はありますか?
scala - scalacheckのサイズのジェネレーター
scalacheckプロジェクトのUserGuideは、サイズのジェネレーターについて言及しました。説明コード
私には何も説明しなかった。いくつかの調査の結果、生成されたシーケンスの長さはジェネレーターの実際のサイズに依存しないことがわかりました(javadocによると「ジェネレーターのサイズ変更されたバージョンを作成する」というGenオブジェクトのresizeメソッドがあります(おそらくそれは何か違うことを意味しますか?))。
私が見逃したことを説明し、コードのテストでそれらをどのように使用するかについていくつかの例を教えてください。
scala - scalacheck プロパティで spec マッチャーを使用する
scalacheck プロパティ内で specs mathers を使用しようとしています。たとえば、次のように機能するマッチャーがあります。
scalacheck プロパティ内でこのマッチャーを使用する場合は、次のようにします。
残念ながら、この場合、マッチャーに入れ、プロパティが失敗したときに必要なデバッグ情報が消去されています。小道具内でマッチャーを使用する規定の方法はありますか?
scala - scalacheckを使用して任意の(合法的な)Unicode文字を生成しますか?
私は、scalacheck1.6.6とspecs1.7(scala 2.8.1)を使用して、(長さがゼロではない)有効なUnicode文字列を生成するジェネレーターを作成しようとしています。
次のようなジェネレーターを作成できるといいのですが。
...次に、次のような仕様からそれらを使用します。
ただし、unicodeCharでfilterを使用すると、問題が発生するようです。
unicodeCharからフィルターを削除すると、テストは成功しますが、文字列が常に明確に定義されたユニコードであるとは限らないため、後で他の問題が発生します。
これを達成する方法についての提案を事前に感謝します。
scala - Mavenを使用してspecs+scalacheckからきれいな出力を取得するにはどうすればよいですか?
IDEAでSpecs+Scalacheckテストを実行すると、きれいな出力が得られます。
テストをMavenで実行するために、通常は次のようにします。
...しかし、出力はあまり満足のいくものではありません:
この場合、きれいな出力を取得する方法はありますか?
ありがとう...
scala - scalacheck で順列を生成する
私はこのようないくつかのジェネレータを持っています:
これは重複につながります... 2 つの a などを取得する可能性があります。本当に必要なのは、正確に 0 または 1、または a、b、c、d、または e のそれぞれ (少なくとも 1 つの何か) を使用してランダム順列を生成することです。 、任意の順序で。
簡単な方法があるに違いないと思っていましたが、難しい方法を見つけるのに苦労しています。:)
編集:わかりました、これはうまくいくようです:
...から大量に借りていGen.pick
ます。
助けてくれてありがとう、-エリック
scala - Scalacheck で Specs2 を使用して文字列引数のテストを自動化する方法は?
Scala 用に書き直された specs2テスト フレームワークは、自動テストをscalacheckと統合します。scalacheck を specs2 と一緒に使用する方法に関する specs2 のドキュメントに記載されている例では、整数を使用するか、 eric の json の例のように、より複雑なカスタム ジェネレーターを使用します。
少し複雑でない例を機能させようとしている間、整数の代わりに文字列引数を生成したい場合に specs2 と scalacheck を使用する方法がわからないため、苦労しています。このクイックスタートの例はどのように
p>scalacheck のホームページの外観から取得しましたが、scalacheck 統合を使用して Specs2 仕様として記述されている場合は?
scala - ScalaCheckの任意の値を常にいくつかの特殊なケースの値を生成するようにするにはどうすればよいですか?
いくつかのランダムな値に加えて、少なくとも固定された一連の特別な値を使用して、すべてのプロパティを常にテストする必要があります。これは、そのジェネレータータイプを使用するすべてのテストではなく、ジェネレーター仕様で定義したいと思います。たとえば、Intを生成する場合、ジェネレーターでテストケースごとに少なくとも0、1、および-1を常に生成するようにします。これは可能ですか?
私がこれまでに思いついた最善の方法は、最小のnサイズが私のn個の特殊なケースに対応するサイズのジェネレーターを作成することです。これは、少なくとも、テストの最大数が最大サイズパラメータよりも少なくなるように構成されている場合、すべての可能なサイズがテストされないため、問題があります。