库提供了轻量级、一次性的通用数据库、SeleWeb浏览器或任何可以在坞箱中运行的其他实例。
testcontainers的Python项目详细描述
测试容器python
用于TestContainers Java的Python端口,允许使用Docker容器进行功能和/或集成测试。
test containers python提供了为测试目的而启动docker容器的功能,这些容器可以是数据库、selenium web浏览器或任何其他子容器。
当前可用功能:
- 硒网格容器
- 硒独立容器
- mysql数据库容器
- Mariadb容器
- PostgreSQL数据库容器
- 通用Docker容器
快速启动
安装
testcontainers模块可从pypi获得,网址为:
可以使用pip
安装,具体取决于您需要的容器:
pip install testcontainers[mysql]
pip install testcontainers[postgresql]
pip install testcontainers[selenium]
# or with multiple
pip install testcontainers[mysql,postgresql,selenium]
基本用法
数据库容器
允许旋转docker数据库映像,如mysql、postgresql、mariadb和oracle xe。
mysql示例
config = MySqlContainer('mysql:5.7.17')
with config as mysql:
e = sqlalchemy.create_engine(mysql.get_connection_url())
result = e.execute("select version()")
它将启动MySQLVersion5.7。然后,可以使用get_connection_url()
方法连接到数据库,该方法以dialect+driver://username:password@host:port/database
格式返回与sqlalchemy兼容的url。