Use @Profile to decide to execute test class
According to https://stackoverflow.com/a/33042872/4106030
we should not use @Profile
to let a spring profile decide whether all tests in a test class shall be executed or ignored.
There is stated:
@Profile
is used to selectively enable a component (e.g.,@Service
, etc.),@Configuration
class, or@Bean
method if one of the named bean definition profiles is active in the Spring Environment for the ApplicationContext. This annotation is not directly related to testing:@Profile
should not be used on a test class.
Is this true? If yes then why?
java spring spring-boot spring-test spring-profiles
add a comment |
According to https://stackoverflow.com/a/33042872/4106030
we should not use @Profile
to let a spring profile decide whether all tests in a test class shall be executed or ignored.
There is stated:
@Profile
is used to selectively enable a component (e.g.,@Service
, etc.),@Configuration
class, or@Bean
method if one of the named bean definition profiles is active in the Spring Environment for the ApplicationContext. This annotation is not directly related to testing:@Profile
should not be used on a test class.
Is this true? If yes then why?
java spring spring-boot spring-test spring-profiles
add a comment |
According to https://stackoverflow.com/a/33042872/4106030
we should not use @Profile
to let a spring profile decide whether all tests in a test class shall be executed or ignored.
There is stated:
@Profile
is used to selectively enable a component (e.g.,@Service
, etc.),@Configuration
class, or@Bean
method if one of the named bean definition profiles is active in the Spring Environment for the ApplicationContext. This annotation is not directly related to testing:@Profile
should not be used on a test class.
Is this true? If yes then why?
java spring spring-boot spring-test spring-profiles
According to https://stackoverflow.com/a/33042872/4106030
we should not use @Profile
to let a spring profile decide whether all tests in a test class shall be executed or ignored.
There is stated:
@Profile
is used to selectively enable a component (e.g.,@Service
, etc.),@Configuration
class, or@Bean
method if one of the named bean definition profiles is active in the Spring Environment for the ApplicationContext. This annotation is not directly related to testing:@Profile
should not be used on a test class.
Is this true? If yes then why?
java spring spring-boot spring-test spring-profiles
java spring spring-boot spring-test spring-profiles
edited Nov 15 '18 at 12:49
user7294900
23.7k123464
23.7k123464
asked Nov 15 '18 at 6:17
baderabadera
762928
762928
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
It's true because @Profile
effects Spring components and not connected to Test framework.
Nevertheless, you can have test profile which will load Spring components ( as Configuration classes) when you running tests
Example of Test class with profile:
// load related configuration classes
@ContextConfiguration(classes = TestConfiguration.class )
@ActiveProfiles(profiles = "testing" )
public class MyTest extends AbstractTestNGSpringContextTests {
But it does work... Can you show what you mean by having a test profile? What I need is just a simple way to decide by a spring profile whether some specific test classes are executed or not.
– badera
Nov 15 '18 at 6:44
@badera you exclude tests using testng/junit tools. add test class with profile
– user7294900
Nov 15 '18 at 6:45
Can you show how? - the source of decision should be if a spring profile is set or not
– badera
Nov 15 '18 at 6:48
I am very confused because@ActiveProfiles
sets the current profile and does not make the execution of tests depending on, if the listed profile is set or not. At least this is what I actually observe to happen and what is also written in stackoverflow.com/a/33042872/4106030
– badera
Nov 15 '18 at 6:51
@badera the comment you asked in your question is only about@Profile
which isn't present in my test class
– user7294900
Nov 15 '18 at 6:53
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53313489%2fuse-profile-to-decide-to-execute-test-class%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
It's true because @Profile
effects Spring components and not connected to Test framework.
Nevertheless, you can have test profile which will load Spring components ( as Configuration classes) when you running tests
Example of Test class with profile:
// load related configuration classes
@ContextConfiguration(classes = TestConfiguration.class )
@ActiveProfiles(profiles = "testing" )
public class MyTest extends AbstractTestNGSpringContextTests {
But it does work... Can you show what you mean by having a test profile? What I need is just a simple way to decide by a spring profile whether some specific test classes are executed or not.
– badera
Nov 15 '18 at 6:44
@badera you exclude tests using testng/junit tools. add test class with profile
– user7294900
Nov 15 '18 at 6:45
Can you show how? - the source of decision should be if a spring profile is set or not
– badera
Nov 15 '18 at 6:48
I am very confused because@ActiveProfiles
sets the current profile and does not make the execution of tests depending on, if the listed profile is set or not. At least this is what I actually observe to happen and what is also written in stackoverflow.com/a/33042872/4106030
– badera
Nov 15 '18 at 6:51
@badera the comment you asked in your question is only about@Profile
which isn't present in my test class
– user7294900
Nov 15 '18 at 6:53
add a comment |
It's true because @Profile
effects Spring components and not connected to Test framework.
Nevertheless, you can have test profile which will load Spring components ( as Configuration classes) when you running tests
Example of Test class with profile:
// load related configuration classes
@ContextConfiguration(classes = TestConfiguration.class )
@ActiveProfiles(profiles = "testing" )
public class MyTest extends AbstractTestNGSpringContextTests {
But it does work... Can you show what you mean by having a test profile? What I need is just a simple way to decide by a spring profile whether some specific test classes are executed or not.
– badera
Nov 15 '18 at 6:44
@badera you exclude tests using testng/junit tools. add test class with profile
– user7294900
Nov 15 '18 at 6:45
Can you show how? - the source of decision should be if a spring profile is set or not
– badera
Nov 15 '18 at 6:48
I am very confused because@ActiveProfiles
sets the current profile and does not make the execution of tests depending on, if the listed profile is set or not. At least this is what I actually observe to happen and what is also written in stackoverflow.com/a/33042872/4106030
– badera
Nov 15 '18 at 6:51
@badera the comment you asked in your question is only about@Profile
which isn't present in my test class
– user7294900
Nov 15 '18 at 6:53
add a comment |
It's true because @Profile
effects Spring components and not connected to Test framework.
Nevertheless, you can have test profile which will load Spring components ( as Configuration classes) when you running tests
Example of Test class with profile:
// load related configuration classes
@ContextConfiguration(classes = TestConfiguration.class )
@ActiveProfiles(profiles = "testing" )
public class MyTest extends AbstractTestNGSpringContextTests {
It's true because @Profile
effects Spring components and not connected to Test framework.
Nevertheless, you can have test profile which will load Spring components ( as Configuration classes) when you running tests
Example of Test class with profile:
// load related configuration classes
@ContextConfiguration(classes = TestConfiguration.class )
@ActiveProfiles(profiles = "testing" )
public class MyTest extends AbstractTestNGSpringContextTests {
edited Nov 15 '18 at 6:44
answered Nov 15 '18 at 6:22
user7294900user7294900
23.7k123464
23.7k123464
But it does work... Can you show what you mean by having a test profile? What I need is just a simple way to decide by a spring profile whether some specific test classes are executed or not.
– badera
Nov 15 '18 at 6:44
@badera you exclude tests using testng/junit tools. add test class with profile
– user7294900
Nov 15 '18 at 6:45
Can you show how? - the source of decision should be if a spring profile is set or not
– badera
Nov 15 '18 at 6:48
I am very confused because@ActiveProfiles
sets the current profile and does not make the execution of tests depending on, if the listed profile is set or not. At least this is what I actually observe to happen and what is also written in stackoverflow.com/a/33042872/4106030
– badera
Nov 15 '18 at 6:51
@badera the comment you asked in your question is only about@Profile
which isn't present in my test class
– user7294900
Nov 15 '18 at 6:53
add a comment |
But it does work... Can you show what you mean by having a test profile? What I need is just a simple way to decide by a spring profile whether some specific test classes are executed or not.
– badera
Nov 15 '18 at 6:44
@badera you exclude tests using testng/junit tools. add test class with profile
– user7294900
Nov 15 '18 at 6:45
Can you show how? - the source of decision should be if a spring profile is set or not
– badera
Nov 15 '18 at 6:48
I am very confused because@ActiveProfiles
sets the current profile and does not make the execution of tests depending on, if the listed profile is set or not. At least this is what I actually observe to happen and what is also written in stackoverflow.com/a/33042872/4106030
– badera
Nov 15 '18 at 6:51
@badera the comment you asked in your question is only about@Profile
which isn't present in my test class
– user7294900
Nov 15 '18 at 6:53
But it does work... Can you show what you mean by having a test profile? What I need is just a simple way to decide by a spring profile whether some specific test classes are executed or not.
– badera
Nov 15 '18 at 6:44
But it does work... Can you show what you mean by having a test profile? What I need is just a simple way to decide by a spring profile whether some specific test classes are executed or not.
– badera
Nov 15 '18 at 6:44
@badera you exclude tests using testng/junit tools. add test class with profile
– user7294900
Nov 15 '18 at 6:45
@badera you exclude tests using testng/junit tools. add test class with profile
– user7294900
Nov 15 '18 at 6:45
Can you show how? - the source of decision should be if a spring profile is set or not
– badera
Nov 15 '18 at 6:48
Can you show how? - the source of decision should be if a spring profile is set or not
– badera
Nov 15 '18 at 6:48
I am very confused because
@ActiveProfiles
sets the current profile and does not make the execution of tests depending on, if the listed profile is set or not. At least this is what I actually observe to happen and what is also written in stackoverflow.com/a/33042872/4106030– badera
Nov 15 '18 at 6:51
I am very confused because
@ActiveProfiles
sets the current profile and does not make the execution of tests depending on, if the listed profile is set or not. At least this is what I actually observe to happen and what is also written in stackoverflow.com/a/33042872/4106030– badera
Nov 15 '18 at 6:51
@badera the comment you asked in your question is only about
@Profile
which isn't present in my test class– user7294900
Nov 15 '18 at 6:53
@badera the comment you asked in your question is only about
@Profile
which isn't present in my test class– user7294900
Nov 15 '18 at 6:53
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53313489%2fuse-profile-to-decide-to-execute-test-class%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown