Questions tagged «integration-test»

3
为Magento 2模块创建集成测试
到目前为止,为了满足Magento 2的测试需求,我一直在使用PHP Unit(或多或少)作为验收测试器-测试服务器和HTML请求的结果,这些请求是在安装了模块的系统中进行的。我希望能够创建自己的集成测试。Magento 2附带的测试工具是否允许第三方开发人员利用Magento的测试框架代码创建自己的集成测试?还是我们都将推出自己的引导程序? 那是 我是Magento开发人员 我想创建一个集成测试 我要在集成测试中使用完全引导的Magento环境(例如,使用对象管理器和/或依赖项注入) 我希望我的集成测试可以扩展该 Magento\TestFramework\TestCase\AbstractController测试,所以我的助手与Magento测试相同 我希望能够独立于测试套件的其余部分运行测试(即不必等待2个小时即可运行15秒钟的测试) 我想将测试与Magento的测试分开存储 开发文档站点上有一些关于测试的入门文章,但它们似乎是针对运行Magento附带的测试,而不是创建和运行自己的测试。这里有旧的示例模块,但是它们都扩展了PHPUnit_Framework_TestCase类并且似乎是单元测试(即,不依赖Magento框架的测试代码) 有Magento提供的方法吗? 如果不是,那么是否有人以Magento开发人员社区的测试可以将其作为标准的方式来滚动自己的设置?

2
使用AbstractBackendController测试配置页面:testAclNoAccess失败
我正在为配置部分编写集成测试,并且在默认测试用例中遇到以下失败: My\Module\ConfigTest::testAclNoAccess Failed asserting that 302 is identical to 403 据我所知,一切正常,但是当配置部分拒绝访问时,Magento发送重定向响应而不是“ Forbidden”。 更改测试以获取302状态代码是否有意义?我宁愿不删除该测试用例,因为它已经帮助我捕获了错误的资源标识符。 这是相关代码: namespace My\Module; use Magento\TestFramework\TestCase\AbstractBackendController; class ConfigTest extends AbstractBackendController { protected function setUp() { parent::setUp(); $this->uri = 'backend/admin/system_config/edit'; $this->resource = 'My_Module::config_my_module'; $this->getRequest()->setParam('section', 'my_module'); } // [other tests] }


1
Magento 2:集成测试功能的预期用途是什么?
我为Magento 2编写了许多集成测试。这有助于我的本地开发,并且非常适合CI的工作方式。 但是,Magento的集成测试套件存在一些奇怪之处。例如: 默认情况下,它将启用所有模块,并且无法禁用它。这可能会产生一些有害的副作用,因为在客户端项目上,您很可能会禁用不需要的模块,例如Vertex模块。但是,此模块在客户模型中添加了必填字段,因此,不用说,如果您在集成测试中创建了客户,则该测试将失败。 它将Magento测试模块添加到您的代码库中。因此,每次运行集成测试套件时,您最终都会在app/code/Magento名称空间中拥有3个额外的模块。 这些问题使集成测试难以在本地项目中使用。曾经有人对我说,集成测试仅是为扩展开发人员创建的,用于测试您的模块是否通过了将其推向市场的标准。这是真的?因为如果是这样,那么为客户的网上商店编写集成测试的正确方法又是什么?我喜欢Magento注释和其他内容。真令人沮丧。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.