About: QuickCheck

An Entity of Type: library, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

QuickCheck is a software library, specifically a combinator library, originally written in the programming language Haskell, designed to assist in software testing by generating test cases for test suites – an approach known as property testing.

Property Value
dbo:abstract
  • QuickCheck es una herramienta que el lenguaje de programación Haskell provee para poder probar las propiedades que deberían de cumplir las funciones, es decir, cada función tiene propiedades deseables lo que se logra con QuickCheck es ver si se cumplen total o parcialmente estas propiedades.Una ventaja notoria es que la propiedad es probada con una gran cantidad de casos generados aleatoriamente.Por ejemplo si tenemos una función suma: suma x y = x + y para ver si cumple la propiedad conmutativa de la suma de números enteros, para cualquier entero: prop_suma_conmutativa :: Int ->Int -> Boolprop_suma_conmutativa x y = suma x y == suma y x la función prop_suma_conmutativa al ser pasada como parámetro en quickCheck será verificada con varios casos aleatorios de enteros e indicará si eventualmente la función suma cumple o no la propiedad de la suma de números enteros. Detalles Teóricos importantes * QuickCheck toma como parámetro de entrada una propiedad * Las propiedades son un conjunto de afirmaciones parametrizadas que en Haskell son funciones normales que pueden ser entendidas por cualquier compilador o intérprete * Estas propiedades son verificadas con un número grande de casos de prueba generados de forma aleatoria * Los programadores controlan la distribución de los casos de prueba generados con reglas condicionales y generadores * Permite programar generadores propios * Las funciones que deseamos probar pueden ser polimórficas pero las propiedades a probar deben ser monomórficas. El siguiente ejemplo muestra un error, por esto:import Test.QuickCheckinsertOrdered :: (Ord a) => a -> [a] -> [a]insertOrdered a [] = [a]insertOrdered a (x:xs)| a <= x = a:[x] ++ xs | a > x = x: insertOrdered a xsprop_insertOrdered a (xs) = ordered(insertOrdered a xs)-- main = quickCheck prop_insertOrdered>:l MainMain> quickCheck prop_insertOrderedERROR - Unresolved overloading Notar en este ejemplo: * El nombre de la función para probar la propiedad, comienza con el prefijo prop_ (Ej. prop insertOrdered)esto es por convención. * Se usó una función auxiliar ordered para probar la propiedad * Podemos llamar la función quickCheck tanto en la línea de comandos como dentro de nuestro programa. * Otro punto interesante a notar es que inclusive luego de añadir el tipo a la función, devuelve el siguiente mensaje “Falsifiable, after 3 tests” (es)
  • QuickCheck is a software library, specifically a combinator library, originally written in the programming language Haskell, designed to assist in software testing by generating test cases for test suites – an approach known as property testing. (en)
  • QuickCheck(クイックチェック)は、テストスイート用のテストケースを生成してソフトウェアテストを行うための、Haskellで書かれたである。GHCコンパイラとインタプリタに対応している。 QuickCheckではプログラマは関数が満たすべき論理的性質をアサーションとして書く。テストは関数の引数の型が取り得る値をランダムに関数に与えることで、アサーションが失敗する条件を探そうと試みる。プロジェクトは2000年に始まった。QuickCheckは通常のプログラムのテストに加え、関数仕様の策定、関数がするべき挙動をドキュメントとして示す、コンパイラの実装をテストする、といったことにも有用である。 QuickCheckの実装はHaskell以外にも多数の言語に移植されている(C, C++, Chicken Scheme, Clojure, Common Lisp, D, Erlang, F#, Factor, Io, Java, JavaScript, Node.js, Objective C, OCaml, Perl, Python, Ruby, Scala, Scheme, Smalltalk, Standard ML)。 (ja)
  • QuickCheck är ett verktyg för att med hjälp av upprepad slumpmässig testning, kontrollera att datorprogram skrivna i Haskell gör vad de är avsedda att göra. Verktyget skapades av John Hughes och , båda aktiva på Chalmers tekniska högskola. (sv)
dbo:developer
dbo:genre
dbo:latestReleaseDate
  • 2020-11-14 (xsd:date)
dbo:latestReleaseVersion
  • 2.14.2
dbo:license
dbo:operatingSystem
dbo:programmingLanguage
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 9190673 (xsd:integer)
dbo:wikiPageLength
  • 16982 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1121476565 (xsd:integer)
dbo:wikiPageWikiLink
dbp:developer
  • Koen Claessen, John Hughes (en)
dbp:genre
dbp:language
  • English (en)
dbp:latestReleaseDate
  • 2020-11-14 (xsd:date)
dbp:latestReleaseVersion
  • 2.140000 (xsd:double)
dbp:license
dbp:name
  • QuickCheck (en)
dbp:operatingSystem
dbp:programmingLanguage
dbp:repo
dbp:wikiPageUsesTemplate
dbp:wordnet_type
dct:subject
gold:hypernym
rdf:type
rdfs:comment
  • QuickCheck is a software library, specifically a combinator library, originally written in the programming language Haskell, designed to assist in software testing by generating test cases for test suites – an approach known as property testing. (en)
  • QuickCheck(クイックチェック)は、テストスイート用のテストケースを生成してソフトウェアテストを行うための、Haskellで書かれたである。GHCコンパイラとインタプリタに対応している。 QuickCheckではプログラマは関数が満たすべき論理的性質をアサーションとして書く。テストは関数の引数の型が取り得る値をランダムに関数に与えることで、アサーションが失敗する条件を探そうと試みる。プロジェクトは2000年に始まった。QuickCheckは通常のプログラムのテストに加え、関数仕様の策定、関数がするべき挙動をドキュメントとして示す、コンパイラの実装をテストする、といったことにも有用である。 QuickCheckの実装はHaskell以外にも多数の言語に移植されている(C, C++, Chicken Scheme, Clojure, Common Lisp, D, Erlang, F#, Factor, Io, Java, JavaScript, Node.js, Objective C, OCaml, Perl, Python, Ruby, Scala, Scheme, Smalltalk, Standard ML)。 (ja)
  • QuickCheck är ett verktyg för att med hjälp av upprepad slumpmässig testning, kontrollera att datorprogram skrivna i Haskell gör vad de är avsedda att göra. Verktyget skapades av John Hughes och , båda aktiva på Chalmers tekniska högskola. (sv)
  • QuickCheck es una herramienta que el lenguaje de programación Haskell provee para poder probar las propiedades que deberían de cumplir las funciones, es decir, cada función tiene propiedades deseables lo que se logra con QuickCheck es ver si se cumplen total o parcialmente estas propiedades.Una ventaja notoria es que la propiedad es probada con una gran cantidad de casos generados aleatoriamente.Por ejemplo si tenemos una función suma: suma x y = x + y para ver si cumple la propiedad conmutativa de la suma de números enteros, para cualquier entero: Detalles Teóricos importantes (es)
rdfs:label
  • QuickCheck (es)
  • QuickCheck (ja)
  • QuickCheck (en)
  • QuickCheck (sv)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
foaf:name
  • QuickCheck (en)
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License