Tests de logiciels pour la science des données dans R


10

J'utilise souvent Nose, Tox ou Unittest lorsque je teste mon code python, spécialement lorsqu'il doit être intégré à d'autres modules ou à d'autres morceaux de code. Cependant, maintenant que je me suis retrouvé à utiliser R plus que python pour la modélisation et le développement ML. J'ai réalisé que je ne testais pas vraiment mon code R (et surtout je ne sais vraiment pas comment le faire bien). Ma question est donc de savoir quels sont les bons packages qui vous permettent de tester le code R d'une manière similaire à Nose, Tox ou Unittest en Python. Des références supplémentaires telles que des tutoriels seront également très appréciées.

Points bonus pour les packages en R similaires à

  1. Hypothèse

    ou

  2. Forge

Discussion connexe:

Trey Causey: test pour les scientifiques des données

Réponses:


7

Packages pour les tests unitaires et les tests assertifs qui sont activement maintenus: Packages pour les tests unitaires

  1. testthat: plus d'informations sur l'utilisation que vous pouvez trouver ici ou sur github
  2. Runit: page Cran

Forfaits pour assertions:

  1. affirmer que: info sur github

  2. assertive: Assertive a beaucoup de sous-packages disponibles au cas où vous n'en auriez pas besoin. vérifier la grue

  3. assertr: infos sur github

  4. assureur: info sur github

  5. testeur: info sur github

C'est une question de préférence ce que vous voulez utiliser pour les assertions. Lisez cette page sur les bioconducteurs pour plus d'informations sur la différence entre RUnit et testthat.


1
Faux. RUnit a un nouveau mainteneur.
Dirk Eddelbuettel

1
@DirkEddelbuettel, ajusté en fonction de vos informations. tnx
phiver

1

Pour un package de test similaire à Hypothesis et basé sur le contrôle rapide de Haskell, il existe le package R de Revolution Analytics appelé quickcheck .


ça a l'air super, je vais l'essayer.
wacax
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.