fscheck

    1

    1答えて

    私は昨日FsCheckを見始めました。私はDiscountAmountのインスタンスが常に負の値を持つという簡単なテストを書こうとしています。私の質問は、1回のテストで複数のアサーションを持つことは大丈夫ですか?たとえば、ここで私はdiscountAmountが作成された金額と割引額は0でなければならないと言っています。しかし、私はまた、割引額は0未満でなければならないと言っています。 publi

    0

    1答えて

    FsCheckを見て、いくつかのテストを書いたところで、より複雑な仲裁を作成するための良い戦略が何であるか不思議です。恣意的な良いアプローチの中に仲裁人を登録していますか?あなたは、別の関連する任意のインスタンスを持つ同じクラスにそれらを追加し、異なるインスタンス間の依存関係が存在する場合に代わりに、直接メソッドを呼び出す場合、この public class DiscountAmountArbit

    5

    1答えて

    FsCheckを試してみる時間だと思っていましたが、思っていた以上に厳しいものになりました。 Arb、ジェネレータなどに関する多くのドキュメントがありますが、その知識をどのように適用するかについてのガイダンスはないようです。または私はそれを得ていないだけです。 テスト、プロパティ、ジェネレータ、仲裁人、縮小、そして私の場合はランダム性(いくつかのテストでは自動的にランダムなデータが生成されますが、

    2

    1答えて

    私はこのジェネレータが動作しているようですが、生成された値をチェックすると、決してnull値を選択しません。ヌル値を選択するジェネレータはどのように記述しますか?このコードでは、「終了日」の日付のNULL値は決して選択されません。 public static Gen<DateTime?> NullableDateTimeGen() { var list = new List<

    2

    1答えて

    FsCheckは、NUnitの統合でカスタムArbitraryすることができます: [<Property(Verbose = true, Arbitrary= [typeof<Test.Arithmetic.MyArb>])>] static member MultiplyIdentity (x: int64) = x * 1 = x この構文は動作しません。私は尋ねるにはちょっと恥ずかしい

    4

    1答えて

    最初に5つの要素が固定されているジェネレータを作成しようとしましたが(最初の5つが常に実行されるProp.forAllを使用するテストでは) 。 ここでは、範囲内のランダムデータ用の1つのジェネレータと、非ランダムデータ用の1つのジェネレータ(固定シーケンス)を使用することで、これを簡略化しようとしています。 1つの値の代わりに一連の値である点を除いて、Gen.constantに似ています。 私は

    1

    1答えて

    私はfscheckを採用しようとしていますが、C#のドキュメントがあまりないため、非常に困難です。あなたは説明することができますなぜ、以下の例を使用してプロパティのコンビネータが失敗する(明らかに、私はそれを正しく使用する方法を理解していません)? [Test] public void WherePorperty() { Prop.ForAll(NotNullStr

    3

    1答えて

    「で」では動作しません、私はうまく話だろう何を示してい抜粋です: open FsCheck open FsCheck.Gen open FSharp.Data type Test = JsonProvider<"""{"collection": [ { "Name": "Rob", "Age": 3 } ] } """> let testGen() = gen {

    6

    1答えて

    ランダム十分なデータを生成しません。失敗する。私の推測では、ランダムジェネレータによって生成された100個の値は決して100より大きくはないということです。 値は「ランダム」ではありませんか?