[JBoss JIRA] (ARQ-2038) Create Drone extension for Appium
by vinoth selvaraj (JIRA)
vinoth selvaraj created ARQ-2038:
------------------------------------
Summary: Create Drone extension for Appium
Key: ARQ-2038
URL: https://issues.jboss.org/browse/ARQ-2038
Project: Arquillian
Issue Type: Feature Request
Components: Extension - Drone
Reporter: vinoth selvaraj
Appium is becoming an industry standard for mobile testing. Many large companies like Amazon, Zameron, Perfecto Mobile and …
[View More]others decided to put Appium into their clouds. Appium supports both andriod and ios automation. It would be nice to have a drone-extension for Appium.
More Info on appium:
*https://github.com/appium/appium*
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
[View Less]
8 years, 8 months
[JBoss JIRA] (ARQ-2034) Test enrichment and JUnit @Rule do not harmonize
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQ-2034?page=com.atlassian.jira.plugin.s... ]
Matous Jobanek updated ARQ-2034:
--------------------------------
Git Pull Request: https://github.com/arquillian/arquillian-core/pull/110
> Test enrichment and JUnit @Rule do not harmonize
> ------------------------------------------------
>
> Key: ARQ-2034
> URL: https://issues.jboss.org/browse/ARQ-2034
> Project: Arquillian
> Issue …
[View More]Type: Bug
> Components: Base Implementation
> Affects Versions: 1.1.11.Final
> Environment: junit 4.11
> arquillian-junit-container 1.1.11.Final
> wildfly-arquillian-container-remote 8.1.0.Final
> Reporter: Björn Kautler
> Assignee: Matous Jobanek
>
> We are starting with Arquillian tests on a remote WildFly instance.
> I tried to write a JUnit {{@Rule}}, that can be used to make a login call for all test methods automatically, but I was not yet able to make it work, as I need an injected {{@Ejb}} instance for this.
> I tried to add {{@EJB private InterfaceLoginManagement interfaceLoginManagement;}} to the {{TestRule}} implementation, but it stays {{null}}. I've read at ARQ-1954 that this should probably work, but unfortunately it is not, at least not with the remote container runner. {{org.jboss.arquillian.junit.extension.JUnitCoreExtension}} that should register {{org.jboss.arquillian.junit.extension.UpdateTestResultBeforeAfter}} and {{org.jboss.arquillian.junit.RulesEnricher}} is not even loaded on the container side. Maybe the {{META-INF/services/}} file is missing?
> Then I tried to simply give the injected instance to the rule from the test class like
> {code}
> @EJB private InterfaceLoginManagement interfaceLoginManagement;
> @Rule private LoginRule loginRule = new LoginRule(interfaceLoginManagement);
> {code}
> or even
> {code}
> @EJB private InterfaceLoginManagement interfaceLoginManagement;
> @Rule public LoginRule getLoginRule() {
> return new LoginRule(() -> {
> return interfaceLoginManagement;
> });
> }
> {code}
> with the {{LoginRule}} receiving a {{Supplier<InterfaceLoginManagement>}} and call it as late as possible, i. e. in the rules {{apply()}} method. But even this is still too early as the EJB is still {{null}} and the test enrichers are only run between the {{@Rule}} applying and {{@Before}} methods.
> So I'd like to suggest two things:
> # Fix the implementation of ARQ-1954 if it should work on container side which I assume it should
> # Make the test enrichments earlier in the lifecycle, i. e. before the {{@Rule}} s are being applied, or rather even before the {{@Rule}} methods are called, so that you at least can use the injected instances in the {{@Rule}} annotated methods to forward them to a rule. This is necessary even if top 1 is taken care of, because you might want to use a 3rd Party rule the code of which you cannot change.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
[View Less]
8 years, 9 months
[JBoss JIRA] (ARQ-2034) Test enrichment and JUnit @Rule do not harmonize
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQ-2034?page=com.atlassian.jira.plugin.s... ]
Matous Jobanek commented on ARQ-2034:
-------------------------------------
Hi, good catch. Here is the fix https://github.com/arquillian/arquillian-core/pull/110
Regarding the second suggestion - I can see your point, but AFAIK this is the first event where I can get a reference to a test instance. There is maybe one possibility, I'll try my best a I'll let you know if I find any feasible solution.
> Test …
[View More]enrichment and JUnit @Rule do not harmonize
> ------------------------------------------------
>
> Key: ARQ-2034
> URL: https://issues.jboss.org/browse/ARQ-2034
> Project: Arquillian
> Issue Type: Bug
> Components: Base Implementation
> Affects Versions: 1.1.11.Final
> Environment: junit 4.11
> arquillian-junit-container 1.1.11.Final
> wildfly-arquillian-container-remote 8.1.0.Final
> Reporter: Björn Kautler
> Assignee: Matous Jobanek
>
> We are starting with Arquillian tests on a remote WildFly instance.
> I tried to write a JUnit {{@Rule}}, that can be used to make a login call for all test methods automatically, but I was not yet able to make it work, as I need an injected {{@Ejb}} instance for this.
> I tried to add {{@EJB private InterfaceLoginManagement interfaceLoginManagement;}} to the {{TestRule}} implementation, but it stays {{null}}. I've read at ARQ-1954 that this should probably work, but unfortunately it is not, at least not with the remote container runner. {{org.jboss.arquillian.junit.extension.JUnitCoreExtension}} that should register {{org.jboss.arquillian.junit.extension.UpdateTestResultBeforeAfter}} and {{org.jboss.arquillian.junit.RulesEnricher}} is not even loaded on the container side. Maybe the {{META-INF/services/}} file is missing?
> Then I tried to simply give the injected instance to the rule from the test class like
> {code}
> @EJB private InterfaceLoginManagement interfaceLoginManagement;
> @Rule private LoginRule loginRule = new LoginRule(interfaceLoginManagement);
> {code}
> or even
> {code}
> @EJB private InterfaceLoginManagement interfaceLoginManagement;
> @Rule public LoginRule getLoginRule() {
> return new LoginRule(() -> {
> return interfaceLoginManagement;
> });
> }
> {code}
> with the {{LoginRule}} receiving a {{Supplier<InterfaceLoginManagement>}} and call it as late as possible, i. e. in the rules {{apply()}} method. But even this is still too early as the EJB is still {{null}} and the test enrichers are only run between the {{@Rule}} applying and {{@Before}} methods.
> So I'd like to suggest two things:
> # Fix the implementation of ARQ-1954 if it should work on container side which I assume it should
> # Make the test enrichments earlier in the lifecycle, i. e. before the {{@Rule}} s are being applied, or rather even before the {{@Rule}} methods are called, so that you at least can use the injected instances in the {{@Rule}} annotated methods to forward them to a rule. This is necessary even if top 1 is taken care of, because you might want to use a 3rd Party rule the code of which you cannot change.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
[View Less]
8 years, 9 months
[JBoss JIRA] (ARQ-2034) Test enrichment and JUnit @Rule do not harmonize
by Matous Jobanek (JIRA)
[ https://issues.jboss.org/browse/ARQ-2034?page=com.atlassian.jira.plugin.s... ]
Matous Jobanek reassigned ARQ-2034:
-----------------------------------
Assignee: Matous Jobanek
> Test enrichment and JUnit @Rule do not harmonize
> ------------------------------------------------
>
> Key: ARQ-2034
> URL: https://issues.jboss.org/browse/ARQ-2034
> Project: Arquillian
> Issue Type: Bug
> Components: Base …
[View More]Implementation
> Affects Versions: 1.1.11.Final
> Environment: junit 4.11
> arquillian-junit-container 1.1.11.Final
> wildfly-arquillian-container-remote 8.1.0.Final
> Reporter: Björn Kautler
> Assignee: Matous Jobanek
>
> We are starting with Arquillian tests on a remote WildFly instance.
> I tried to write a JUnit {{@Rule}}, that can be used to make a login call for all test methods automatically, but I was not yet able to make it work, as I need an injected {{@Ejb}} instance for this.
> I tried to add {{@EJB private InterfaceLoginManagement interfaceLoginManagement;}} to the {{TestRule}} implementation, but it stays {{null}}. I've read at ARQ-1954 that this should probably work, but unfortunately it is not, at least not with the remote container runner. {{org.jboss.arquillian.junit.extension.JUnitCoreExtension}} that should register {{org.jboss.arquillian.junit.extension.UpdateTestResultBeforeAfter}} and {{org.jboss.arquillian.junit.RulesEnricher}} is not even loaded on the container side. Maybe the {{META-INF/services/}} file is missing?
> Then I tried to simply give the injected instance to the rule from the test class like
> {code}
> @EJB private InterfaceLoginManagement interfaceLoginManagement;
> @Rule private LoginRule loginRule = new LoginRule(interfaceLoginManagement);
> {code}
> or even
> {code}
> @EJB private InterfaceLoginManagement interfaceLoginManagement;
> @Rule public LoginRule getLoginRule() {
> return new LoginRule(() -> {
> return interfaceLoginManagement;
> });
> }
> {code}
> with the {{LoginRule}} receiving a {{Supplier<InterfaceLoginManagement>}} and call it as late as possible, i. e. in the rules {{apply()}} method. But even this is still too early as the EJB is still {{null}} and the test enrichers are only run between the {{@Rule}} applying and {{@Before}} methods.
> So I'd like to suggest two things:
> # Fix the implementation of ARQ-1954 if it should work on container side which I assume it should
> # Make the test enrichments earlier in the lifecycle, i. e. before the {{@Rule}} s are being applied, or rather even before the {{@Rule}} methods are called, so that you at least can use the injected instances in the {{@Rule}} annotated methods to forward them to a rule. This is necessary even if top 1 is taken care of, because you might want to use a 3rd Party rule the code of which you cannot change.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
[View Less]
8 years, 9 months