Have a bdd project jbehave + serenity
By default I run the story tests this way: **/*.story in storyPaths
But i need to run not all stories and not specific story, i need to run specific suite(specific folder with all the tests inside).
default patch
project\src\test\resources\SuiteTest1
**SuiteTest1**\MainPage\Test1.story
Test2.story
Test2.story
PaymentPage\Test1.story
Test2.story
Test2.story
project\src\test\resources\SuiteTest2
**SuiteTest2**\LoginPage\Test1.story
Test2.story
Test2.story
ForumPage\Test1.story
Test2.story
Test2.story
In SuiteTest**1** and SuiteTest**2** have different tests, i have to run them at different times.
Tried to run:
SuiteTest2*/*.story
SuiteTest2.*/*.story
SuiteTest2.**/*.story
SuiteTest2**/*.story
But this not work, it can't find the stories.....
Thanks in advance for any help.
The double-asterisk tells a path to locate the file specified in any subdirectory below the defined one, so:
SuiteTest2/**.story
would locate any file with the extension .story in any folder starting at folder SuiteTest2
Therefore, in your example, it will find all the story files in SuiteTest2/LoginPage and in SuiteTest2/ForumPage but it will not process any of the story files under the SuiteTest1 folder.
Related
Is it possible to have environment variables on organization level for GitHub Actions? So something like organization secrets but just with environment variables.
Since we have a lot of repositories in our organization I would like to keep the runner version in a global environment variable and so when we decide to update the runner version we can simply change it in the environment settings instead of every workflow file.
EDIT
Variables are now supported on organization level. Here the docs
https://docs.github.com/en/actions/learn-github-actions/variables
You can put the value into the GitHub organization secret. Check the following link to get further details:
https://docs.github.com/en/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces#adding-secrets-for-an-organization
I think what I am looking to do is fairly simple - I just can't wrap my head around it.
I've got a repo in AzDo. This repo contains configuration files for firewalls. This is how we manage changes in these configurations.
I've got a simple build pipeline that copies the relevant files and creates an artifact.
I have a release pipeline that gets the files onto the on-prem machine in my Deployment Group. The files show up in c:\azagent\r1\_work\<artifact folder>.
As part of this pipeline I am looking to copy the files from c:\azagent\r1\_work\<artifact folder> to e:\shares\<artifact name>. This is the part that I cannot figure out how to make work.
What strategy could I use to put this together? I've looked into the documentation but it seems like this is somewhat of an edge case (not deploying an app or web site, etc). Ideally, I'd love to do this in a multi-stage YAML pipeline - but from what I've read, it appears as if these do not yet support Deployment Groups. So a classic pipeline is fine for now.
You can add a copy file task(Click the plus sign(+) on the agent job and search for copy files) in your release pipeline to copy the files to a different place on your local machine.
Then you can specify the source folder(ie. $(System.DefaultWorkingDirectory)), and the contents to copy and the target folder(ie. e:\shares\). In below example all contents in $(System.DefaultWorkingDirectory)(ie. C:\agent\_work\r1\a) will be copied to folder D:\Test\New folder
Please check the prefined variables for more information about its map to the local folders.
I plan to use the Azkaban https://azkaban.github.io/ for running batch jobs. According to CI ideas we have few environments like dev, test, stage, production and of course job should have different configuration for each environment.
According to Azkaban documentation http://azkaban.github.io/azkaban/docs/latest/#job-configuration Azkaban allows for replacing of parameters whenever a ${parameter} is found. And solution looks like:
system.properties
myFlow/
dev.properties
....
prod.properties
foo.job
#system.properties
env=dev
#dev.properties
dev.database=localhost:2181
#prod.properties
prod.database=aws:port
#foo.job
some command --db ${${env}.database}
And later on each environment we can override the env variable. From my point of view this solution looks strange. Can I just say to Azkaban which property file should be used on environment?
What is the best approach to do it?
An other approach can be found here https://github.com/azkaban/azkaban/issues/1545#issuecomment-339750417
I need Bamboo to build the project automatically when a file in "api" subfolder changes. When a file in any other subfolder changes the bamboo build plan shouldn't run.
Folder structure:
project
- api
- ui
- core
In the Plan Configuration repositories tab, from the "Include / exclude files" dropdown I have selected the following option
Include only changes that matches the following pattern
and I have tried the following patterns:
.*/api/.*
api/
api/*
api\/*
api/**
/api/*
but the build plan isn't running. With "Include / exclude files" dropdown set to None the build plan runs (but does so when a file changes in any other subfolder also)
I can't split the project up to different repositories.
What pattern should I use or is there any other solution for this?
Pattern that ended up working was
api/.*
It's a regular expression from the root of the checkout supposedly, although I have not used this feature. Here are some of their examples:
https://confluence.atlassian.com/display/BAMBOO052/_planRepositoryIncludeExcludeFilesExamples?_ga=2.91083610.1778956526.1502832020-118211336.1443803386
What you might try is let it checkout the whole thing without the include filter set, and don't let it delete the working directory. Look on the filesystem and verify the path from the root of the working directory. Then test your regex against the whole path relative from that working directory.
I've got files stored in my workspace as:
selenium-tests/results/results-0.xml
selenium-tests/results/results-1.xml
selenium-tests/results/results-2.xml
selenium-tests/results/results-3.xml
selenium-tests/results/results-4.xml
I'm publishing JUnit test results with the fileset pattern: **/results/results-*.xml. All five files aren't present in the test results. It's also never the same result files included.
These are three runs back to back to back with the same exact configuration and tests. They're failing because our staging environment is down right now.
I've even gone as far as **/results/results-0.xml, **/results/results-1.xml, **/results/results-2.xml, **/results/results-3.xml, **/results/results-4.xml and am still having the same issues.