Défis et questions courants
En quoi Testcontainers Cloud est-il différent du framework open-source Testcontainers ?
Alors que Testcontainers open-source est une bibliothèque qui fournit des API légères pour démarrer le développement local et les dépendances de test avec de vrais services encapsulés dans des conteneurs Docker, Testcontainers Cloud fournit un environnement d'exécution cloud pour ces conteneurs. Cela réduit la charge sur les ressources des environnements locaux et offre une plus grande évolutivité, en particulier dans les flux de travail CI/CD, ce qui permet une expérience Testcontainers cohérente dans toute l'organisation.
Quels types de conteneurs puis-je exécuter avec Testcontainers Cloud ?
Testcontainers Cloud prend en charge tous les conteneurs que vous utiliseriez généralement avec le framework Testcontainers, y compris les bases de données (PostgreSQL, MySQL, MongoDB), les courtiers de messages (Kafka, RabbitMQ) et d'autres services requis pour les tests d'intégration.
Dois-je modifier mon code de test existant pour utiliser Testcontainers Cloud ?
Non, vous n'avez pas besoin de modifier votre code de test existant. Testcontainers Cloud s'intègre de manière transparente avec le framework open-source Testcontainers. Une fois la configuration cloud mise en place, il gère automatiquement les conteneurs dans le cloud sans nécessiter de modifications de code.
Comment intégrer Testcontainers Cloud dans mon projet ?
Pour intégrer Testcontainers Cloud, vous devez installer l'application Testcontainers Desktop et sélectionner l'option d'exécution avec Testcontainers Cloud dans le menu. En CI, vous devrez ajouter une étape de flux de travail qui télécharge l'agent Testcontainers Cloud. Aucune modification de code n'est requise au-delà de l'activation de l'environnement d'exécution Cloud via l'application Testcontainers Desktop localement ou de l'installation de l'agent Testcontainers Cloud en CI.
Puis-je utiliser Testcontainers Cloud dans un pipeline CI/CD ?
Oui, Testcontainers Cloud est conçu pour fonctionner efficacement dans les pipelines CI/CD. Il aide à réduire les temps de construction et les goulots d'étranglement des ressources en déchargeant les conteneurs que vous lancez avec la bibliothèque Testcontainers vers le cloud, ce qui en fait un choix parfait pour les environnements de test continus.
Quels sont les avantages d'utiliser Testcontainers Cloud ?
Les principaux avantages incluent une utilisation réduite des ressources sur les machines locales et les serveurs CI, l'évolutivité (exécutez plus de conteneurs sans dégradation des performances), des environnements de test cohérents, une surveillance centralisée, une facilité de configuration CI avec la suppression des problèmes de sécurité liés à l'exécution de Docker-in-Docker ou d'un démon privilégié.
Testcontainers Cloud prend-il en charge tous les langages de programmation ?
Testcontainers Cloud prend en charge tous les langages qui fonctionnent avec les bibliothèques open-source Testcontainers, y compris Java, Python, Node.js, Go et autres. Tant que votre projet utilise Testcontainers, il peut être déchargé sur Testcontainers Cloud.
Comment le nettoyage des conteneurs est-il géré dans Testcontainers Cloud ?
Alors que la bibliothèque Testcontainers gère automatiquement le cycle de vie des conteneurs, Testcontainers Cloud gère la durée de vie des travailleurs cloud alloués. Cela signifie que les conteneurs sont lancés, surveillés et nettoyés après la fin des tests par la bibliothèque Testcontainers, et le travailleur où ces conteneurs ont été exécutés sera supprimé automatiquement après une période d'inactivité d'environ 35 minutes par Testcontainers Cloud. Cette approche libère les développeurs de la gestion manuelle des conteneurs et des ressources cloud associées.
Existe-t-il un niveau gratuit ou un modèle de tarification pour Testcontainers Cloud ?
Les détails de la tarification de Testcontainers Cloud se trouvent sur la page des tarifs.