利用这些工具,可以轻松快速地使用Selenium编写和开发Odoo测试。
项目描述
odoo-selenium
此软件包提供了一些工具,可以轻松快速地使用Selenium编写和开发Odoo测试。
用法
只需导入SeleniumCase并将您的单元测试作为它的子类。就这么简单!以下是一个示例,展示了如何使用它
from selenium.webdriver.common.by import By
from odoo.tests import tagged
from odoo_selenium import SeleniumCase
@tagged("-at_install", "post_install")
class TestSelenium(SeleniumCase):
def test_login_page(self):
self.navigate("/web/login")
email_input = self.driver.find_element(By.ID, "login")
self.assertEqual("Email", email_input.get_attribute("placeholder"))
开发
如果您想贡献力量,设置开发环境很容易。作为一个旨在与Odoo集成的简单库,所需的所有内容就是克隆源代码并开始修改。以下是一个关于项目和其结构的简单概述。
项目结构
项目分为三个部分,库本身、测试以及支持运行测试套件的Docker文件。
src
所有库代码应位于此文件夹中。这是用户在Odoo测试中导入的代码。
tests_odoo
这些是 Odoo 模块,是测试套件的一部分。由于这个包旨在作为 Odoo 的实用库使用,没有 Odoo 进行测试实际上是没有意义的。这些模块只为在 Odoo 中运行的测试提供,以验证库集成良好且不会随机崩溃。
运行测试套件
由于运行测试套件需要 Odoo 实例,因此项目依赖于 Docker 来提供该实例和其他所需的基础设施,例如 PostgreSQL 服务器。在 Docker 容器上运行还意味着项目本身以用户的方式安装,这意味着此环境尽可能接近“现实世界”。
要运行测试套件,您只需执行以下命令
docker compose -f .docker/chrome-compose.yaml up --build --abort-on-container-exit --force-recreate
请确保运行上述命令时的工作目录是存储库的根目录。Docker 会自动检查更改的文件,因此您不需要执行任何操作(除了运行上述命令),这使得迭代更改的测试变得非常简单和快速。
默认情况下,测试套件针对最新版本的 Odoo 运行。要使用不同的 Odoo 版本运行测试套件,只需指定即可
ODOO_VERSION=15 docker compose -f .docker/chrome-compose.yaml up --build --abort-on-container-exit --force-recreate
上述命令将针对 Odoo 15.0 运行测试。镜像标记为:vauxoo/odoo-selenium:${ODOO_VERSION},因此如果您想检查上面构建的镜像,可以简单地使用
docker run -it --rm --entrypoint=/bin/bash vauxoo/odoo-selenium:15
注意:如果您的测试失败,并且看到引用了旧代码,您正在使用旧镜像!这就是为什么使用 --force-recreate 的原因。
维护者
该项目由 Vauxoo 维护。
这是一家拉丁美洲公司,提供企业管理系统(包括其主产品 Odoo)的培训、辅导、开发和实施,其整个运营策略基于开源软件的使用。
项目详情
下载文件
下载适合您平台的应用程序。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
构建分布
odoo_selenium-0.1.6.tar.gz 的散列
| 算法 | 散列摘要 | |
|---|---|---|
| SHA256 | c1313aee29e7605aa23bf52ccc44f09b7f512e91fd83d0ed1cb318f8ca26aad1 |
|
| MD5 | 17c582ef1bb688dc276a91b477c1b096 |
|
| BLAKE2b-256 | a9e794e9c32232da35be4925f82a06479333b5d9cf8b43f9636b41cbf83363ca |
odoo_selenium-0.1.6-py3-none-any.whl 的散列
| 算法 | 散列摘要 | |
|---|---|---|
| SHA256 | 0b7f153244eee5f82aab230eeb447a115b33c777524434222da65c37ebe1d5d2 |
|
| MD5 | e3e3874020d2b357eefaf5a6ecb4bfe9 |
|
| BLAKE2b-256 | 3b9186799354f31829d479a12c756783a5e655511943e13224dd4e3c28863621 |