问题标签 [picocontainer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
167 浏览

java - 将 PicoContainer 与两个 IntelliJ 插件一起使用

我有两个 IntelliJ 插件。PluginTwo 依赖于 PluginOne,所以 Two 在 One 之后启动。两个插件都依赖于第三个核心模块。

结构:

结构

我想通过 PluginTwo 中的 Context-Class 访问 Dummy-Class。Context 类是 Core-Module 的一部分,并使用 PicoContainer 提供对 Dummy-Class 的访问。PluginOne 在启动时使用 PicoContainer 创建一个上下文。现在我想通过 PicoContainer 从 PluginTwo 访问 Dummy-Class。

我得到了这个错误:

...

PicoContainer 在 Context-Class 中创建:

PluginOneProjectComponent 获取 Context 的一个实例

从 PluginTwo 我想使用 PluginOne 的 Context 来访问 DummyClass。但这不起作用。

所以只有输出。

当我在调试器的上下文中调用 getComponent(DummyClass.class) 时,我只会得到 null 作为结果。

有人能帮我吗?有没有更好的方法从 PluginOne 访问我的 Context-Class?

我把这个小项目中的错误复现出来分享给大家。我只需要 PluginOne 的 PicoContainer 就可以在 PluginTwo 中使用它。完整的源代码在这里:https ://github.com/jafey/intellij-plugin-picocontainer-poc

0 投票
1 回答
256 浏览

java - Picocontainer:注入多个相同类型的对象

我正在使用 DI 并具有以下内容

请注意,同一类型被注入了两次。

当我继续进行编码/测试时,我注意到在 user1 和 user2 上运行的所有方法都在影响 user1。

有没有办法用 picocontainer 注入多个相同类型的对象,并让它们成为预期的“独立”对象?或者,是否有不同的 DI 包允许这种行为?

谢谢

0 投票
0 回答
35 浏览

java - 我的模型测试出了点问题,因为我添加了依赖注入

我尝试使用 DI (PicoContainer) 使我的测试更简单,但现在它不再正常工作了。

我得到这个错误消息:


java.lang.NullPointerException

在 org.javalite.activejdbc.Model.setRaw(Model.java:355)

在 org.javalite.activejdbc.Model.setInteger(Model.java:1740)

在 cash_withdrawal.Account.(Account.java:11)

在 support.TestAccount.(TestAccount.java:7)

……


支持.TestAccount:

cash_withdrawal.Account

我的步骤定义:

0 投票
0 回答
46 浏览

java - 如何将 Picocontainer 用于我的 Scenaio 和 stepdefinitions?

我的功能文件是 search.feature。并且有两个 stepdefinitions 文件名为:Backgroundstepdef 和 Searchstepdef。我必须在 Searchstepdef 中使用 Backgroundstepdef 的状态。如何使用 DI 注入在 Backgroundstepdef 中使用步骤状态?

我已经编写了扩展 picofactory 的 SharedContext 类。

search.feature 如下所示:

==================================================== ========================

Backgroundstepdef 如下所示:

==================================================== =============== searchstepdef 如下所示:

}

SharedContext 如下所示:

}

cuumber.properties cucumber.api.java.ObjectFactory = hgtest.utils.SharedContext

据我了解,使用 SharedContext 类我可能会将 Backgroundstepsdef 的状态转换为 Searchstepsdef

0 投票
1 回答
1455 浏览

java - cucumber-picocontainer 未注册

我遇到了与这个问题相同的情况,但建议的解决方案都不适合我。基本上,我已经下载了这个存储库。它运行良好。然后,我将 SearchSteps 模块分成两部分 - 一个包含@Beforeand@After语句,另一个包含步骤(因为我打算重用初始化代码)。我已将依赖项添加cucumber-picocontainer到我的pom.xml.

我收到与上述问题相同的错误:class com.browserstack.stepdefs.SearchSteps doesn't have an empty constructor. If you need DI, put cucumber-picocontainer on the classpath. 我已经尝试了所有建议的解决方案,但错误仍然存​​在。

我的 pom.xml 如下所示:

依赖项显示在我的项目结构中。我究竟做错了什么?

如果需要,很高兴提供所有源代码。

0 投票
1 回答
294 浏览

java - 使用 REST 保证请求和响应执行 picocontainer DI 的方法

我正在使用 cucumber java 使用 picocontainer DI 构建一个放心的测试固件。我需要使用 DI 共享请求和响应,但是 REST 保证提供了 RequestSpecification 和 Response,它们是接口,并且接口不能共享。什么是 REST 保证的非接口类,它允许我构建请求和响应、发出 HTTP 请求并读取其他类中的请求和响应数据。基本上我需要一种方法来创建放心的请求和响应 java 对象。

0 投票
4 回答
240 浏览

java - 我可以使用 pico 容器共享同一类的两个对象吗?

我可以喜欢吗

然后填充object1和object2并共享。那可能吗?

0 投票
2 回答
2968 浏览

dependency-injection - 黄瓜的多个 ObjectFactory 实例

我编写了一组用于测试自定义框架的功能文件,并且我希望允许测试框架接口的特定实现。我想用不同的实现来运行很多功能。

为此,我创建了一个自定义 ObjectFactory 并使用 PicoContainer 依赖注入传递实现。我将此工厂添加到 cucumber.properties 文件中,它工作得很好。唯一的问题是——如果我有不止一组实现要测试怎么办?

我可以创建多个 ObjectFactories,但是如何使用不同的工厂多次运行测试?是否可以使用注释或类似方法将 ObjectFactory 实现传递给 Runner 类?我使用 JUnit runner 运行功能,如果我可以将其中几个用于不同的工厂,我认为它应该可以工作。但是,我发现指定 ObjectFactory 的唯一选项是 cucumber.options 文件,它是一个用于模块的文件......

0 投票
1 回答
579 浏览

mocha.js - 如何在 Cypress.io 中跨各种文件共享 describe() 块,类似于 Mocha 的“共享行为”工具

我正在开发一个 Web 测试自动化框架,并且希望通过另一个 cypress ..spec.js 文件中另一个 cypress ..spec.jsdescribe()文件中存在的方法来阻止一个 cypress ..spec.js文件中存在的一些功能 ?

请阅读Mocha 中提供的 共享行为工具: https ://github.com/mochajs/mocha/wiki/Shared-Behaviours 在此处输入图像描述 在此处输入图像描述

我试过了,但它不起作用。1. 是否可以实现类似于 Mocha Shared 的步骤(如上所述)?2. 或者有没有类似于 Cucumber-ruby/Pico-container 的WORLD对象的东西?

好心提醒。

在此处输入图像描述

0 投票
1 回答
126 浏览

cucumber - Cucumber JVM:避免 Picocontainer 对未标记执行的功能进行依赖注入

假设我标记了 Cucumber 功能@api

和执行步骤如下:

即使我通过指定不同的 Cucumber 标签或显式指定不执行此功能 tags = {"not @api"},尽管步骤本身并未执行,但 Picocontainer 仍会创建并注入 ABCinjected 类的实例,这是不可取的。是否可以控制这种行为?我假设如果功能被标记为不被执行并且相关的场景/步骤被忽略,那么连续 DI 不应该发生。