How to serve Allure Report without automatically starting the browser - allure

When i start the allure, the server always attempts to start the browser:
$ /home/allure/allure-2.3.4/bin/allure serve target/allure-results -p 5012
Generating report to temp directory...
Report successfully generated to /tmp/779851636804605067/allure-report
Starting web server...
2017-08-21 17:51:00.271:INFO::main: Logging initialized #3082ms
Xlib: extension "RANDR" missing on display ":99".
Exception in thread "main" java.lang.UnsupportedOperationException: The BROWSE action is not supported on the current platform!
at java.awt.Desktop.checkActionSupport(Desktop.java:225)
at java.awt.Desktop.browse(Desktop.java:381)
at io.qameta.allure.Commands.openBrowser(Commands.java:207)
at io.qameta.allure.Commands.open(Commands.java:135)
at io.qameta.allure.Commands.serve(Commands.java:119)
at io.qameta.allure.CommandLine.run(CommandLine.java:136)
at java.util.Optional.orElseGet(Optional.java:267)
at io.qameta.allure.CommandLine.main(CommandLine.java:72)
2017-08-21 17:51:06.387:WARN:oejsh.ResourceHandler:qtp1928301845-20: org.eclipse.jetty.io.EofException
2017-08-21 17:51:06.388:WARN:oejsh.ResourceHandler:qtp1928301845-15: org.eclipse.jetty.io.EofException
The problem is not in the error, but in the launch, I don't need to start it on this host.
How do I start the allure server without starting the browser?

You can use the docker container Allure Docker Service, recognize the results automatically and update the reports without doing anything:
https://github.com/fescobar/allure-docker-service

Related

ChromeDriver.exe does not exist when running on teamcity

I have created 3 Test Server, IE, Chrome and Firefox.
In TeamCity i created 3 build configuration IE, Chrome and Firefox.
I have 3 Agents AgentIE, AgentChrome and AgentFirefox.
Each agent is assign to specific build configuration example Build Configuration IE is to AgentIE
When i run the Build Configuration Firefox, all tests gets executed but when i run the Build Configuration IE and Chrome tests do not get executed .
Error message indicate that the IE and Chrome exe do not exist but i followed the exe file exist in the directory and in a directory on the PATH environment variable.
MSTest]
Framework.FeatureFiles.AdditionalFieldsFeature.CreateNewAdditionalField_0001 (Create New Additional Field: 0001)
[10:35:53][Framework.FeatureFiles.AdditionalFieldsFeature.CreateNewAdditionalField_0001 (Create New Additional Field: 0001)] Assembly Initialization method Framework.BaseClasses.Base.InitWebdriver threw exception. OpenQA.Selenium.DriverServiceNotFoundException: OpenQA.Selenium.DriverServiceNotFoundException: The chromedriver.exe file does not exist in the current directory or in a directory on the PATH environment variable. The driver can be downloaded at http://chromedriver.storage.googleapis.com/index.html.. Aborting test execution.
[10:35:53][Framework.FeatureFiles.AdditionalFieldsFeature.CreateNewAdditionalField_0001 (Create New Additional Field: 0001)] at OpenQA.Selenium.DriverService.FindDriverServiceExecutable(String executableName, Uri downloadUrl)
at OpenQA.Selenium.Chrome.ChromeDriverService.CreateDefaultService()
at OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeOptions options)
at Framework.BaseClasses.Base.GetChromeDriver() in C:\TeamCity\buildAgent\work\eba5cd3c0056fc6a\Framework\BaseClasses\Base.cs:line 61
at Framework.BaseClasses.Base.InitWebdriver(TestContext tc) in C:\TeamCity\buildAgent\work\eba5cd3c0056fc6a\Framework\BaseClasses\Base.cs:line 84
If i run the Chrome build configuration on a agent that is running on the teamcity server, the test gets executed.
I had the exact same issue and I was able to resolve it by doing the following steps:
You need to download the chromedriver.exe for your machine type.
Then put the folder where you save the chromedriver.exe in the Path
variable of the TeamCity server.
Next you need to restart the
TeamCity server.
You can download the latest Chrome Driver here.
Here are some instructions on how to add variable to the path.
Issue was with the path variable on the specific machine.

What is CrashLoopBackOff status for openshift pods?

There is more than one example where I have seen this status from a pod running in openshift origin. In this case it was the quickstart for the cdi camel example. I was able to successfully build and run it locally (non - openshift) but when I try to deploy on my local openshift (using mvn -Pf8-local-deploy), I get this output for that particular example (snipped for relevance) :-
[vagrant#vagrant camel]$ oc get pods
NAME READY STATUS RESTARTS AGE
cdi-camel-z4czs 0/1 CrashLoopBackOff 4 2m
Tail of the logs are as under:-
Error occurred during initialization of VM
Error opening zip file or JAR manifest missing : agents/jolokia.jar
agent library failed to init: instrument
Can someone help me solve this ?
If the state of the pod goes in to CrashLoopBackOff it usually indicates that the application within the container is failing to start up properly and the container is exiting straight away as a result.
If you use oc logs on the pod name, you may not see anything useful though as it would capture what the latest attempt to start it up is doing and may miss messages.
What you should do is instead provide the --previous or -p option to oc logs along with the pod name. That will show you the complete logs from the previous attempt to start up the container.
If this is an arbitrary Docker image you are using, a common problem that can occur and which would cause the container not to start, is an application image which requires to be run as the root user. Because running an application inside of a container as root still has risks, OpenShift doesn't allow you to do that by default and will instead run as an arbitrary assigned user ID. The application image may not be designed with this possibility in mind and so is failing.
So try and get those logs messages and see what the problem is.
Temporary workaround -> https://github.com/fabric8io/ipaas-quickstarts/issues/1157
Basically, the src/main/hawt-app directory needs to be deleted.

Google cloud sdks doesn't start preview for Docker image Mac OS

My app.yaml
runtime: custom
vm: true
api_version: 1
health_check:
enable_health_check: False
Dockerfile
# Use the official go docker image built on debian.
FROM golang:1.5.1
# Grab the source code and add it to the workspace.
ADD . /go/
# Install revel and the revel CLI.
RUN go get github.com/revel/revel
RUN go get github.com/revel/cmd/revel
# Use the revel CLI to start up our application.
ENTRYPOINT revel run 4quorum-appengine dev 8080
# Open up the port where the app is running.
EXPOSE 8080
I was working through this article
http://jbeckwith.com/2015/05/08/docker-revel-appengine/
Preview
I am trying to preview it:
gcloud preview app run app.yaml --custom-entrypoint "revel run 4quorum-appengine dev 8080"
WARNING: The `app run` command is deprecated and will soon be removed.
Please use dev_appserver.py (in the same directory as the `gcloud` command) instead.
Module [default] found in file [/Users/802619/Projects/src/4quorum_root/app.yaml]
INFO: Looking for the Dockerfile in /Users/802619/Projects/src/4quorum_root
INFO: Using Dockerfile found in /Users/802619/Projects/src/4quorum_root
INFO 2015-11-06 18:03:44,226 application_configuration.py:399] No version specified. Generated version id: 20151106t180344
INFO 2015-11-06 18:03:44,226 devappserver2.py:763] Skipping SDK update check.
INFO 2015-11-06 18:03:44,266 api_server.py:205] Starting API server at: http://localhost:62780
INFO 2015-11-06 18:03:44,272 dispatcher.py:197] Starting module "default" running at: http://localhost:8080
INFO 2015-11-06 18:03:44,277 admin_server.py:116] Starting admin server at: http://localhost:8000
ERROR 2015-11-06 18:03:44,282 instance.py:280] [Errno 2] No such file or directory
The same thing if trying dev_appserver.py
Deploy
Deploy also doesn't work. Fails because of timeout.
gcloud preview app deploy ./app.yaml
WARNING: Soon, deployments will set the deployed version to receive all traffic by
default.
To keep the current behavior (where new deployments do not receive any traffic),
use the `--no-promote` flag or run the following command:
$ gcloud config set app/promote_by_default false
To adopt the new behavior early, use the `--promote` flag or run the following
command:
$ gcloud config set app/promote_by_default true
Either passing one of the new flags or setting one of these properties will
silence this message.
You are about to deploy the following modules:
- vaulted-gift-112113/default (from [/Users/802619/Projects/src/4quorum_root/app.yaml])
Deployed URL: [https://20151106t204027-dot-vaulted-gift- 112113.appspot.com]
(add --promote if you also want to make this module available from
[https://vaulted-gift-112113.appspot.com])
Beginning deployment...
Verifying that Managed VMs are enabled and ready.
Provisioning remote build service.
Copying certificates for secure access. You may be prompted to create an SSH keypair.
Building and pushing image for module [default]
Saving [.dockerignore] to [/Users/802619/Projects/src/4quorum_root].
----------------------------- DOCKER BUILD OUTPUT ------------------------------
Step 0 : FROM golang:1.5.1
---> f6271e8f3723
Step 1 : ADD . /go/
---> 94fafc5e8a30
Removing intermediate container cfbe197f6e93
Step 2 : RUN go get github.com/revel/revel
---> Running in d7ad8c923144
---> b65877cf3049
Removing intermediate container d7ad8c923144
Step 3 : RUN go get github.com/revel/cmd/revel
---> Running in 2a9b3320ce47
---> 428defd008f3
Removing intermediate container 2a9b3320ce47
Step 4 : ENTRYPOINT revel run 4quorum-appengine dev 8080
---> Running in 8b9e38ec69ec
---> 3749ee8a6636
Removing intermediate container 8b9e38ec69ec
Step 5 : EXPOSE 8080
---> Running in a0e6c66b56c8
---> dafff62b9643
Removing intermediate container a0e6c66b56c8
Successfully built dafff62b9643
--------------------------------------------------------------------------------
Copying files to Google Cloud Storage...
Synchronizing files to [gs://staging.vaulted-gift-112113.appspot.com/].
Updating module [default]...|Deleted [https://www.googleapis.com/compute/v1/projects/vaulted-gift- 112113/zones/us-central1-f/instances/gae-builder-vm-20151106t204027].
Updating module [default]...failed.
ERROR: (gcloud.preview.app.deploy) Error Response: [4] Timed out creating VMs.
About to drop this.
Moved to heroku. Google App Engine is not ready yet.

X11: Start desktop manager inside daemon

What I'm trying to do:
Make screenshots of desktop and running program (Firefox Webdriver with Selenium, if it's important) in daemon (celeryd) in auto mode.
And I need desktop manager to be running, this is mandatory requirement. Currently I'm trying to use Fluxbox but I can switch to any other manager.
Current progress:
I can start X-server (Xvfb) in daemon and start Selenium Webdriver. Fluxbox start succeeds when I try to make it from terminal, but fails in daemon with following errors in log:
Can't create directory
Failed to load database:
Failed to load database:/init
Retrying with: /etc/X11/fluxbox/init
I tried to specify init-file directly, but Can't create directory error still exists and Fluxbox fails to start.
This might be daemon-mode restriction.
Question:
Is it possible to run any desktop manager inside daemon?
If yes, then how can I do this?

Google App Engine: local testing a simple hello world

I'm trying to make a simple Hello World working in local via the Google App Engine plugin for Eclipse Helios.
The problem comes when want to launch the serveur with the eclipse tool (right-clic on my project -> Run As -> Web Application), the console always display these logs:
2012-04-17 19:01:09.126 java[4019:407] [Java CocoaComponent compatibility mode]: Enabled
2012-04-17 19:01:09.127 java[4019:407] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000
Usage: <dev-appserver> [options] <war directory>
Options:
--help, -h Show this help message and exit.
--server=SERVER The server to use to determine the latest
-s SERVER SDK version.
--address=ADDRESS The address of the interface on the local machine
-a ADDRESS to bind to (or 0.0.0.0 for all interfaces).
--port=PORT The port number to bind to on the local machine.
-p PORT
--sdk_root=root Overrides where the SDK is located.
--disable_update_check Disable the check for newer SDK versions.
--generated_dir=dir Set the directory where generated files are created.
The local server works when I use command bellow:
./appengine-java-sdk/bin/dev_appserver.sh appengine-java-sdk/demos/guestbook/war
Does anyone has some idee for making it working ?
Thanks by advice and sorry for my bad English...
i also got into the same problem. But my solution was deleting the existing launch configuration (in Run > Run configurations), close the dialog, and then try right-clicking on your project > Run As > Web Application.
For me it was the space in the Project Name, which coincides with the folder name in the workspace. Whoever is calling the dev server launcher didn't use quotes around the war directory.

Resources