Быстрая проверка

Программное обеспечение для тестирования программного обеспечения

Разработчик(и)Коэн Классен, Джон Хьюз
Первоначальный выпуск1999 ; 25 лет назад ( 1999 )
Стабильный релиз
2.14.2 / 14 ноября 2020 г. ; 3 года назад ( 2020-11-14 )
Репозиторийgithub.com/nick8325/quickcheck
Написано вХаскелл
Операционная системаUnix-подобный , Windows
Доступно вАнглийский
ТипТестирование программного обеспечения
ЛицензияBSD-стиль
Веб-сайтwww.cse.chalmers.se/~rjmh/QuickCheck

QuickCheck — это программная библиотека , библиотека-комбинатор , изначально написанная на языке программирования Haskell , предназначенная для помощи в тестировании программного обеспечения путем создания тестовых случаев для тестовых наборов — подход, известный как тестирование свойств .

Программное обеспечение

Он совместим с компилятором Glasgow Haskell Compiler (GHC) и интерпретатором Haskell User's Gofer System ( Hugs ). Это бесплатное программное обеспечение с открытым исходным кодом, выпущенное под лицензией в стиле BSD .

В QuickCheck утверждения записываются о логических свойствах, которые должна выполнять функция . Затем QuickCheck пытается сгенерировать тестовый случай, который фальсифицирует такие утверждения. Как только такой тестовый случай найден, QuickCheck пытается свести его к минимальному подмножеству сбоев, удаляя или упрощая входные данные, которые не нужны для провала теста.

Проект начался в 1999 году. Помимо использования для тестирования обычных программ, QuickCheck также полезен для создания функциональной спецификации , для документирования того, что функции должны делать, и для тестирования реализаций компилятора. [1]

Существуют повторные реализации QuickCheck для многих языков:

Смотрите также

Ссылки

  1. ^ "Данные.Коллекции.Свойства". hackage.haskell.org .
  2. Пеннебейкер, Эндрю (mcandre) (13 октября 2011 г.). "qc". GitHub . Получено 9 декабря 2011 г.
  3. ^ Зито, Андреа (nivox) (27 июля 2014 г.). "quickcheck4c". GitHub . Получено 27 июля 2014 г. .
  4. ^ Vokes, Scott (30 марта 2015 г.). «Кража: тестирование на основе свойств для C». GitHub . Получено 16 ноября 2015 г.
  5. ^ "QuickCheck". Software.legiasoft.com . Получено 9 декабря 2011 г. .
  6. ^ "CppQuickCheck". GitHub . Получено 30 марта 2015 г.
  7. ^ "RapidCheck". GitHub . Получено 30 марта 2015 г.
  8. ^ Пеннебейкер, Эндрю (mcandre). "cluckcheck". GitHub . Получено 9 декабря 2011 г.
  9. Дрейпер, Рид (reiddraper) (9 мая 2013 г.). "simple-check". GitHub . Получено 21 августа 2013 г.
  10. Дрейпер, Рид (reiddraper) (27 марта 2014 г.). "org.clojure/test.check". GitHub . Получено 27 марта 2014 г. .
  11. ^ "cl-quickcheck". Cliki . Получено 9 декабря 2011 г. .
  12. ^ "QuickChick". GitHub . Получено 26 августа 2019 г. .
  13. Пеннебейкер, Эндрю (mcandre) (27 октября 2011 г.). "dashcheck". GitHub . Получено 9 декабря 2011 г.
  14. ^ "elm-explorations/test". GitHub . Получено 20 ноября 2018 г. .
  15. ^ Томас, Дэйв (pragdave) (17 июля 2017 г.). "quixir: Тестирование на основе свойств для Elixir". GitHub . Получено 1 апреля 2019 г. .
  16. ^ Альферт, Клаус. "propcheck: Тестирование на основе свойств для Elixir". GitHub . Получено 1 февраля 2021 г.
  17. ^ "PropEr: инструмент тестирования свойств на основе QuickCheck для Erlang". GitHub . Получено 8 мая 2019 г. .
  18. ^ "FsCheck". GitHub . 25 июня 2015 г. Получено 25 июня 2011 г.
  19. Пеннебейкер, Эндрю (mcandre) (13 октября 2011 г.). "factcheck". GitHub . Получено 9 декабря 2011 г.
  20. ^ leanovate (26 апреля 2016 г.). "Gopter". GitHub . Получено 26 апреля 2016 г. .
  21. ^ Пеннебейкер, Эндрю (mcandre) (17 октября 2011 г.). "IoCheck". GitHub . Получено 9 декабря 2011 г.
  22. ^ "Модуль QuickCheck FunctionalJava". FunctionalJava . Получено 14 августа 2015 г. .
  23. ^ "Быстрая проверка Java". Quickcheck.dev.java.net . Получено 9 декабря 2011 г. .
  24. ^ "JCheck". JCheck . Получено 9 декабря 2011 г. .
  25. ^ "junit-quickcheck". junit-quickcheck . Получено 3 июля 2013 г. .
  26. ^ "jqwik для платформы JUnit5". jqwik . Получено 19 июня 2017 г. .
  27. ^ "Quick Theories property testing for Java 8". ncredinburgh . Получено 30 октября 2017 г. .
  28. ^ "jetCheck property-based testing for Java 8". JetBrains . Получено 10 июля 2018 г. .
  29. ^ Томпсон, Даррин (darrint). "qc.js". Bitbucket . Получено 9 декабря 2011 г.
  30. ^ Крокфорд, Дуглас. "jscheck". GitHub . Получено 21 октября 2017 г.
  31. ^ Дубьен, Николас (dubzzz). "fast-check". GitHub . Получено 3 февраля 2018 г.
  32. ^ "JSVerify — тестирование JavaScript на основе свойств. Как QuickCheck". jsverify.github.io .
  33. ^ "Checkers.jl". GitHub . Получено 8 апреля 2018 г. .
  34. ^ "lgtunit" . Получено 26 февраля 2020 г. .
  35. ^ "lua-quickcheck". GitHub . Получено 25 февраля 2017 г. .
  36. ^ "QuickCheck.wl — Автоматизированное тестирование на основе свойств для языка Wolfram — Технические дискуссионные группы в режиме онлайн — Сообщество Wolfram". community.wolfram.com . Получено 11 июля 2021 г. .
  37. ^ Пеннебейкер, Эндрю (mcandre). "objcheck". GitHub . Получено 9 декабря 2011 г.
  38. ^ Круанес, Саймон. «QuickCheck вдохновил тестирование на основе свойств для OCaml». GitHub . Получено 1 сентября 2022 г.
  39. ^ "Test: LectroTest: Tutorial". Проект LectroTest был вдохновлен модулем QuickCheck языка Haskell, созданным Коэном Классеном и Джоном Хьюзом.
  40. ^ "библиотека(быстрая проверка)".
  41. ^ Амарал, Клаудио; Флоридо, Марио; Коста, Витор Сантос (2014). "PrologCheck - тестирование на основе свойств в Прологе". Труды Двенадцатого международного симпозиума по функциональному и логическому программированию (FLOPS 2014) . Конспект лекций по информатике. 8475 : 1–17. doi :10.1007/978-3-319-07151-0_1. ISBN 978-3-319-07150-3.
  42. ^ Острайхер, Стефан (стеос). «PhpQuickCheck». Гитхаб . Проверено 12 ноября 2015 г.
  43. ^ Wahl, Matthias (mfelsche). "ponycheck". GitHub . Получено 26 декабря 2018 г.
  44. ^ MacIver, David (16 апреля 2016 г.). «QuickCheck in Every Language» . Получено 1 августа 2022 г. .
  45. ^ "быстрая проверка: тестирование на основе свойств в R". GitHub . 17 марта 2022 г.
  46. ^ "Быстрая проверка". docs.racket-lang.org .
  47. ^ Пеннебейкер, Эндрю (mcandre) (14 сентября 2017 г.). «Rubycheck: порт Ruby фреймворка модульного тестирования QuickCheck». GitHub .
  48. ^ Гэллант, Эндрю (BurntSushi). "Быстрая проверка на ржавчину (с усадкой)". GitHub . Получено 27 мая 2015 г.
  49. ^ "Тестирование свойств, подобных гипотезам, для Rust". GitHub .
  50. ^ "ScalaCheck". GitHub . Получено 30 июня 2016 г. .
  51. ^ "scalaprops/scalaprops". GitHub . Получено 30 июня 2016 г. .
  52. ^ "nyaya". GitHub . Получено 30 июня 2016 г. .
  53. ^ "Scheme-Check: Рандомизированное модульное тестирование для схемы PLT". Архивировано из оригинала 12 февраля 2005 г. Scheme-Check — это модуль, который реализует рандомизированное модульное тестирование в схеме PLT. С помощью Scheme-Check вместо создания множества отдельных тестов вы указываете свойства своего кода, а Scheme-Check генерирует большой объем случайных наборов данных для проверки этих свойств. Scheme-Check — это по сути порт QuickCheck на Scheme.
  54. ^ Mejr, Antero. "SRFI 252: Property Testing". Запросы на реализацию схемы . Получено 25 апреля 2024 г.
  55. ^ Пеннебейкер, Эндрю (mcandre). "QuickSmash". GitHub . Получено 9 декабря 2011 г.
  56. ^ "QCheck/SML". Contrapunctus . 22 ноября 2011 г. Получено 9 декабря 2011 г.
  57. ^ "SwiftCheck: Быстрая проверка для Swift". GitHub . 3 ноября 2017 г.
  58. ^ Дубьен, Николас (dubzzz). "fast-check". GitHub . Получено 3 февраля 2018 г.
  59. ^ Чин, Дженис. "QuickCheck for Whiley" (PDF) . Получено 20 апреля 2020 г.

Дальнейшее чтение

  • Классен, Коэн; Хьюз, Джон (2002). "Тестирование монадических программ с помощью QuickCheck" ( PostScript ) . Уведомления SIGPLAN . 37 (12): 47–59. CiteSeerX  10.1.1.111.1618 . doi :10.1145/636517.636527 . Получено 29 января 2006 г.
  • Классен, Коэн и Хьюз, Джон (2000). "QuickCheck: легковесный инструмент для случайного тестирования программ на языке Haskell" (PDF) . Труды Международной конференции по функциональному программированию (ICFP), ACM SIGPLAN . Получено 29 января 2006 г. .
  • Claessen, Koen & Hughes, John (2003). "Specification Based Testing with QuickCheck". The Fun of Programming, Cornerstones of Computing, Jeremy Gibbons and Oege de Moor (редакторы) . Palgrave: 17–40. Архивировано из оригинала 4 июля 2007 г. Получено 29 января 2006 г.
  • Классен, Коэн (август 2004 г.). "Быстрая проверка: случайное тестирование на основе спецификаций". Презентация на Летнем институте по теме "Тенденции в тестировании: теория, методы и инструменты " . Архивировано из оригинала ( PPT ) 30 апреля 2007 г. Получено 29 января 2006 г.
  • Классен, Коэн; Рансиман, Колин; Читил, Олаф и Хьюз, Джон (2002). «Тестирование и трассировка ленивых функциональных программ с использованием QuickCheck и Hat». Advanced Functional Programming: 4th International School, Lecture Notes in Computer Science . 2638. Springer Verlag: 59–99. Архивировано из оригинала ( PostScript ) 12 октября 2006 г. Получено 29 января 2006 г.
Взято с "https://en.wikipedia.org/w/index.php?title=Быстрая проверка&oldid=1247377236"