Opentest是用于Web应用程序,移动应用程序和API的免费开源功能测试自动化工具。
我们知道已经有很多东西已经建立了商业产品和开源项目。我们很长一段时间以来寻找合适的工具,并进行了公平的尝试,并尝试了很多工具,结果并不完全满足我们的期望。我们正在寻找可以标准化的工具,这将使我们能够统一多个内部和外部团队的测试自动化工作,这些团队具有各种规模,技能,预算和地理位置。该工具将必须纳入行业中最新的最佳实践,理想情况下,可以在开源许可下发布,以便我们消除冗长的流程并降低成本。考虑到这些考虑以及其他要求,我们认为从头开始建造是负责任的选择。
Opentest旨在在遵循一系列健康原则的同时提供现代测试自动化工具的所有功能。我们的目标是使功能测试自动化民主化,并创建一个有能力建立在自己的基础上的伟大社区。虽然生活中没有什么是完美的,也没有任何软件完成,但我们保证,该产品进入该产品的每个功能都经过深思熟虑并仔细实施,以在一方面的功率和灵活性之间实现最佳平衡,而另一方面可用性。
网络测试,硒。所有浏览器都支持。在本地计算机或使用云提供商上运行测试。
具有Appium的Android和iOS应用程序的移动测试。在本地计算机或使用云提供商上运行测试。
API测试,构建在Apache HTTPCLIENT库的顶部。
关键字驱动的测试。使用高级构建块组装测试,从而隐藏了基础技术的复杂性,并让您以简洁明了的方式表达自己。
脚本支持。使用JavaScript代码覆盖复杂的测试方案,并在关键字驱动的测试中有机地嵌入,以保持清洁和可读性。
并行测试。您可以并行运行的测试会话数仅受您运行的机器的资源的限制(但云中总会有更多的机器)。
分布式测试。编写测试,这些测试在多个机器,网络和技术中无缝执行。编写跨越移动,Web,API以及两者之间的任何内容的集成测试。
数据驱动的测试。在单独的数据文件中维护的一组数据记录上多次运行测试。
可扩展。通过创建自己的自定义测试操作(关键字)来与任何技术集成。
通过设计对源控制友好。自信地工作,知道Git有您的支持。非常适合大型或地理分布的团队。
环境。构建一次测试,并在多个环境中或使用不同的测试数据集。
与他人合作良好。使用简单的HTTP API来控制启动和监视测试会话,收集测试结果等。
跨平台,在MacOS,Windows和Linux上运行。
(我们不得不跳过很多非常酷的功能,以保持此简短)
先决条件:node.js 8或更大; Java运行时8或更高。
从NPM安装:
npm install opentest -g视频教程:https://getopentest.org/docs/installation.html(在Windows上记录)
在您的主目录中创建一个名为“ Opent”的目录,以用作本指南的操场,并将cd纳入该目录。
cd ~
mkdir opentest
cd opentest 笔记 | 在Windows上,使用md代替mkdir 。 |
在下面运行命令
opentest quick-start现在,您应该在当前路径中有这些文件和目录:
server
└── server.yaml
actor1
└── actor.yaml
test-repo
├── macros
│ └── ...
├── scripts
│ └── ...
├── templates
│ └── ...
└── tests
└── ... server和actor1目录将分别用作最opent服务器和测试Actor的工作目录。 test-repo目录是一个样本测试存储库,它演示了opentest的一些基本特征。
打开一个新的终端窗口, cd到服务器的工作目录,然后启动最佳服务器:
cd ~/opentest/server
opentest serverOpentest服务器(又称同步服务器)是一个Node.js应用程序,其主要功能是协调测试执行并提供基于Web的UI。
打开一个新的终端窗口, cd到演员的工作目录并启动测试参与者:
cd ~/opentest/actor1
opentest actor测试参与者是一个Java应用程序,可在测试的系统上运行,并按照同步服务器指示执行测试步骤。
打开Web浏览器并导航到http:// localhost:3000。
从菜单中,从模板中选择“会话”>“创建会话” 。选择模板快速启动测试,然后单击创建会话。等待几秒钟,然后刷新您的浏览器以查看测试会话的结果。
最opent的组件有三个组件:
同步服务器,一个主要执行三个函数的node.js应用程序:
策划测试执行。
揭示可用于创建测试会话,检查测试结果等的Web UI。
揭示一个友好的API,可以将其用于与UI大致相同的目的。
按照同步服务器的指示,测试演员是负责执行测试的Java应用程序。可以有多个参与同一测试的参与者,并且参与者可以在任何网络中的任何机器上部署,包括云中的任何机器。唯一的要求是,测试参与者可以与Sync Server公开的HTTP API通信。不需要同步服务器可以启动与演员的通信,这在场景中大大简化了Actor在防火墙后面或网络中无法从运行Sync Server无法访问的网络中运行的场景中的设置。
测试存储库,一个带有预定义的,所需结构的目录,在源控制下,包含各种测试资产(测试文件,脚本,测试会话模板等)。

Opent是根据MIT许可发布的开源软件。
除非您另有明确说明,否则您故意提交的任何捐款供本存储库中纳入本存储库,均应在上述许可中,而无需任何其他条款或条件。
有关更多信息,请参阅贡献指南文件。
感谢Browserstack为测试和开发提供了开源帐户!
Sauce Labs提供的跨浏览器测试平台和开源❤️